Because I do more than one backup a day, I changed the file saving format, so it saves it by year/month/day/hour/minute
So in mysqlbackupconfig.php, on the line which reads..
$backup['DATE']
I changed it to
Code:
$backup['DATE'] = 'Y-m-d-G-i'; // Backup file date format
To add remote server backup ability, my coder added this in the mysqlbackup.php file
Below this:
Code:
// Unlock Tables
if ($this->LOCK)
{
$this->MYSQL->query($unlock);
}
}
}
Add this:
Code:
/* ------------- Remote FTP backup - added 6.11.07 ------ */
//If you want to move or replicate the folder hierarchy from your current server to another remote server. Then this will be helpful as this will browse the current server's directory and at the same time it will copy that file in the remote server in the same directory.
//This script will copy all the files from this directory and subdirectory to another remote server via FTP
// Source: http://us2.php.net/ftp
function remoteBackup() {
function rec_copy ($source_path, $destination_path, $con)
{
ftp_mkdir($con, $destination_path);
ftp_site($con, 'CHMOD 0777 '.$destination_path);
ftp_chdir($con,$destination_path);
if (is_dir($source_path))
{
chdir($source_path);
$handle=opendir('.');
while (($file = readdir($handle))!==false)
{
if (($file != ".") && ($file != ".."))
{
if (is_dir($file))
{
// choose only the current backup folder
if($file != "propertyimages")
{
rec_copy ($source_path."/".$file, $file, $con);
chdir($source_path);
ftp_cdup($con);
}
}
if (is_file($file))
{
$fp = fopen($file,"r");
// this will convert spaces to '_' so that it will not throw error. -- VK
ftp_fput ($con, str_replace(" ", "_", $file), $fp,FTP_BINARY);
ftp_site($con, 'CHMOD 0755 '.str_replace(" ", "_", $file));
}
}
}
closedir($handle);
}
}
// make a FTP connection********************************** ADAM CHANGE THESE 2 LINES *********************************************************************************
$con = ftp_connect("XX.XX.XX.XX",21);
$login_result = ftp_login($con,"USERNAME","PASSWORD");
// this is the root path for the remote server ********************
$rootpath = "/";
// this is the physical path of the source directory. actually u can also use the relative path. -- VK
$sourcepath = realpath("/XXXX/XXXX/XXXX");
// this directory name will only change the top most directory and not the inner one -- VK
$destination_dir_name = "XXXX/";
rec_copy ($sourcepath, $destination_dir_name, $con);
if (function_exists("ftp_close"))
{
ftp_close($con);
}
}
/* -------------- END FTP Remote Backup ----------------------*/
You need to change the "USERNAME" and "PASSWORD" bit
Additionally, you need to set the correct IP/hostname and the paths.
So far for me, it's working a treat
I've got it running every 3 hours to backup my database, gzip it, then ftp it to the server.
Note: You will get a warning when the backup completes that the destination directory already exists
I haven't fixed that bit yet