PDA

View Full Version : vB Database Backup Pro - Convert to run on vB3.5


Paul M
06 Apr 2006, 17:09
This modification is no longer available or supported.

When vb 3.5 first came out I was using this backup system (http://www.vbulletin.org/forum/showthread.php?t=78486) on my 3.0 - and having nothing better to use - I converted it to work on vb 3.5.

Since then I have seen numerous requests for a 3.5 version, and even sent my working version to the guy who apparently bought the rights to it in January. So far no new version has ever been released, though I believe Trigunflame is working on a completely new system.

I cannot (afaik) just release my version, as most of the code is still the original, therefore I have spent a few hours today detailing the (smallish) changes I made in order to make this work, and am now releaseing them as an Add-On to the original hack.

Please note that I do not use the ftp function, zipping function, or the mysqldump option, so i have no idea if they work or not. Also, no existing bugs are fixed.

Unless I missed out an actual conversion step then this is offered as is.

I will not add anything new, or spend any time supporting it. This is done simply to allow people to use the old hack on 3.5 until a new [proper] version is supplied by the relevant people.




History:

v1.6 : Missing elements added.

Developer
06 Apr 2006, 17:37
first to install :)

Allan
06 Apr 2006, 17:45
Second Install :D

Great Paul ;)

Codeman05
06 Apr 2006, 18:40
woohoo! thank you!

installed

Paul M
06 Apr 2006, 18:44
FYI, the very final step had it's final closing bracket missing, make sure you add it. The file has now been corrected.

Codeman05
06 Apr 2006, 19:02
ummm, I'm getting this when I run the cron manually, any ideas??
I'm going back through the cfgs again to see if I missed anything, but I don't think I did



Invalid SQL:

REPLACE INTO datastore
(title, data)
VALUES
('options', 'about 2 pages of values')
MySQL Error : Table 'datastore' was locked with a READ lock and can't be updated
Error Number : 1099
Date : Thursday, April 6th 2006 @ 01:00:13 PM
Script : http://www.************.com/admincp/cronadmin.php?do=runcron&cronid=21
Referrer : http://www.************.com/admincp/cronadmin.php?do=modify
IP Address : ************
Username : ************
Classname : vb_database

cclaerhout
06 Apr 2006, 19:43
A very big thank !

Paul M
06 Apr 2006, 19:59
ummm, I'm getting this when I run the cron manually, any ideas??
I'm going back through the cfgs again to see if I missed anything, but I don't think I didTry setting the lock options to "0" in the config file, you don't really need them.

RS_Jelle
06 Apr 2006, 20:11
Thank you A LOT for this port, I was waiting for it for a long time :)

/me clicks install

cclaerhout
06 Apr 2006, 20:17
I've got the same problem than Codeman05 ; even after having set : $backup['LOCKTABLES'] = 0;

Buczilla
06 Apr 2006, 20:25
Awesome! Thank You!

Paul M
06 Apr 2006, 20:50
I've got the same problem than Codeman05 ; even after having set : $backup['LOCKTABLES'] = 0;and $backup['LOCK'] ?

Also try setting $backup['SHUTDOWN'] = 0;

Other than that, sorry, I can't really suggest anything.

COBRAws
06 Apr 2006, 21:49
as always, You're da man!

Codeman05
06 Apr 2006, 21:51
Try setting the lock options to "0" in the config file, you don't really need them.

Well that got past one problem.
Now it hangs at: "Processing posthash : Total Rows = 1"

It is also appears to be creating a SQL file for each table...

oh well, I'll just go back to the using the crontab method. Thanks for the work though!

cclaerhout
06 Apr 2006, 21:52
You've right, just have to config $backup['LOCK'] to 0

Now i've got another error :
"Failover was initiated for MySQLDump Binary & An error occured during the MySQL backup. Details (Could not open Destination SQL file for writing.)"

I've tried full and relative path with 0777 chmod...

Paul M
06 Apr 2006, 23:30
Well that got past one problem.
Now it hangs at: "Processing posthash : Total Rows = 1"
Well you could exclude that table, it's not a necessity.

It is also appears to be creating a SQL file for each table... That's a setting in the config file, set it to suit.

Paul M
06 Apr 2006, 23:34
You've right, just have to config $backup['LOCK'] to 0

Now i've got another error :
"Failover was initiated for MySQLDump Binary & An error occured during the MySQL backup. Details (Could not open Destination SQL file for writing.)"

I've tried full and relative path with 0777 chmod...Is the destination accessible to php (i.e. if it's outside the forum root is basdir protection stopping you). Basically that's a server permission error, not a hack error.

Living in music
07 Apr 2006, 04:58
master coder, thanks! ;)

Living in music
07 Apr 2006, 05:13
member <-> Advanced Designer <-> Member ??? lol...

Snake
07 Apr 2006, 21:45
Wow this is a great mod! Thanks! :)

Paul M
08 Apr 2006, 01:23
Wow this is a great mod! Thanks! :)Feel free to click install then. :)

RS_Jelle
08 Apr 2006, 10:09
I've got a little problem: the script goes into a loop: after the last table, it starts again with the first table and over and over again :confused:

I tested it manually and to solve the problem, I needed to restart my server.

mysqlbackupconfig.php:
<?php

/***********************************************\
| VB MYSQL BACKUP v 1.9 |
| Dusty Burns aka TrigunFlame |
| |
| Fully Automated Database Backup For Vbulletin,|
| utilizing the built-in Vbulletin Cron System. |
| Also doubles as manual dump system from within|
| Vbulletin Admin Control Panel System |
\***********************************************/



/*-----------------------------------------------------------
MySQL Information
-----------------------------------------------------------
Here you will be able to modify your primary Database
connection information such as the hostname, username,
password and database that you would like to utilize during
the backup procedure. This stuff MUST be changed.
-----------------------------------------------------------
examples;
HOST = 'localhost' (default)
USER = 'root' (default)
PASS = ' ' (default)
DB = 'forums' (default)
-----------------------------------------------------------
*/

$backup['DB'] = $config['Database']['dbname'];
$backup['USER'] = $config['MasterServer']['username'];
$backup['PASS'] = $config['MasterServer']['password'];
$backup['HOST'] = $config['MasterServer']['servername'].':'.$config['MasterServer']['port'];



/*-----------------------------------------------------------
Forum Shutdown System
-----------------------------------------------------------
Here you can toggle if your forum will TEMPORARILY be
switched to off, while the backup is in progress. I highly
recommend that you do this for error-prevention reasons.
Although this script has precautions in place to prevent
data corruption (with Table Level Locking), your members
will not be able to WRITE to the database while you are
dumping, and may even get freezing page loads. Thus to
better handle the situation, and prevent confusion; use
this, and modify the message you want shown.
-----------------------------------------------------------
0 = Do NOT Shutdown Temporarily (NOT RECOMMENDED)
1 = Shutdown Forum while dump is in progress. (RECOMMENDED)
-----------------------------------------------------------
*/

$backup['SHUTDOWN'] = 1;
$backup['MESSAGE'] = "<p>Momenteel wordt de site database automatisch gebackupt.
Hierdoor is de site tijdelijk onbereikbaar.</p>
<p>Hierna zal de site automatisch heropend worden.</p>";



/*-----------------------------------------------------------
Backup Pruning
-----------------------------------------------------------
Select whether or not you would like to keep a Selected
amount of backups at one time. This is to prevent you from
using a lot of space, by keeping the amount of backups to
a specified amount.
-----------------------------------------------------------
0 = No
1 = Yes (default)
-----------------------------------------------------------
Backups To Keep
-----------------------------------------------------------
Specify here the actual amount of backups that you would
like to keep at any one time, the recommended amount is 5.
You may however specify as many as you please.
-----------------------------------------------------------
examples;
DUMPS = 5 (default)
-----------------------------------------------------------
*/

$backup['PRUNE'] = 1;
$backup['DUMPS'] = 5;



/*-----------------------------------------------------------
File Saving Information
-----------------------------------------------------------
Filename Date Format
-----------------------------------------------------------
This configures the way the filenames should look. You can
modify this by how the timestamps, are output.

Note: Do not modify this heavily, these need to be Unique
only to the day/month/year, no more specific.
-----------------------------------------------------------
examples;
DATE = 'm_d_y' (default)
DATE = 'mdy'

USE 1 OF THESE 2. NOTHING ELSE.
-----------------------------------------------------------
Dump Path
-----------------------------------------------------------
Specify the path to the directory where you will be saving
your Database Dumps.

By default, I have it listed as your Document Root, so if
you know you're going to be storing the file in the folder
backups, you would just have it like the example below.

If you would rather have the path specified manually, you
may do that also.

Note: You May also use relative paths, just like simple:
DUMP_PATH = 'backups' which would store the backup in a
folder in the same directory as the script. It is still
recommended to use a full path though, to be fully safe
with some functions that deal with windows file operations.
-----------------------------------------------------------
examples;
DUMP_PATH = backups (default)
^= Would store the file in the folder backups relative to
the root of your forum directory.

DUMP_PATH = $_SERVER['DOCUMENT_ROOT'].'/backups';
^= Would store the file in the folder "backups" inside your
web root.
-----------------------------------------------------------
*/

$backup['DATE'] = 'm_d_y';
$backup['PREFIX'] = 'Live_' ; // Backup File Prefix
$backup['DUMP_PATH'] = 'backups';



/*-----------------------------------------------------------
Remote FTP Transfer
-----------------------------------------------------------
Here you can configure if you want to transfer a new backup
to a remote FTP server for storage. This will take some
time to handle, but may be worth it depending on how much
you like to have backup redundancy.

To use FTP, you must use my included ftp.lib.php class that
houses 2 FTP client libraries, 1 being a FTP Module Wrapper
and the other being a fsockopen() based Raw FTP Client. You
must have this file present in your 'includes/' directory
for the FTP functionality.

NOTE: Currently only single file uploads are coded into the
client libraries. In other words, you will get an error if
you are using the backup type 0 and the combine = 0. These
libraries will only upload 1 file at a time, support for
uploading/deleting directories & multiple files have not
yet been coded into the script.
-----------------------------------------------------------
FTP = 0 Do Not Remotely Transfer the Backup (default)
FTP = 1 Transfer the Backup to a Remote FTP Server
-----------------------------------------------------------
Connection Settings
-----------------------------------------------------------
If you have selected the Option above to 1, to transfer;
then these settings will decide the information regarding
the transfer. These things be host, port, user, pass, and
the remote directory. These need to be filled out for the
transfer to be sucessfull.
-----------------------------------------------------------
Delete Local Backup
-----------------------------------------------------------
Here decides whether or not you would like to delete the
local version of the backup after you have transfered it.
By default this will be 0, but if you still want to do it,
just select 1 and it will leave your local backup in place.
-----------------------------------------------------------
FTP Directory
-----------------------------------------------------------
Select a Directory you would like all dump files to go to.
This directory must be already created, and possibly even
CHMODDED 0777 like the backup directory.
-----------------------------------------------------------
Remote Backup Pruning
-----------------------------------------------------------
Just like the options up above, you can remotely keep the
uploaded backups pruned and rotated, to keep from filling
up the remote directory with lots of backups. By default
this is yes, with a value of 5 like up above; change it
as you see fit.
-----------------------------------------------------------
examples;
FTP = 0 (off by default)
FTPHOST = '127.0.0.1'
FTPPORT = 21;
FTPUSER = 'root'
FTPPASS = 'none'
FTPDIR = '' (Initial directory, when logged in).
FTPDELLOC = 0
FTPPRUNE = 1
FTPDUMPS = 5
-----------------------------------------------------------
*/

$backup['FTP'] = 0;
$backup['FTPHOST'] = '127.0.0.1';
$backup['FTPPORT'] = 21;
$backup['FTPUSER'] = 'anonymous';
$backup['FTPPASS'] = 'email@notset.com';
$backup['FTPDIR'] = 'backups';
$backup['FTPDELLOC'] = 0;
$backup['FTPPRUNE'] = 1;
$backup['FTPDUMPS'] = 5;



/*-----------------------------------------------------------
Log Raw MySQL Errors
-----------------------------------------------------------
0 = No
1 = Yes (default)
-----------------------------------------------------------
Path To Log
-----------------------------------------------------------
Place here the path to the directory where you will be
saving any of the error logs that come to happen for
whatever reason.

By Default they are to be placed in the same directory as
this script, if you want, you may create a directory just
for the logs, or even set the log path to the same as the
dump path.

Note: You May also use relative paths, just like simple:
LOG_PATH = 'logs' which would store the logs in a
folder in the same directory as the script. It is still
recommended to use a full path though, to be fully
with some functions that deal with windows file operations.
-----------------------------------------------------------
examples;
LOG_PATH = $_SERVER['DOCUMENT_ROOT'] (default)
^= Would store the file in the primary directory of your
web root.

LOG_PATH = $_SERVER['DOCUMENT_ROOT'].'/logs';
^= Would store the file in the folder "logs" inside your
web root.
-----------------------------------------------------------
Log FileName
-----------------------------------------------------------
examples;
LOG_FILENAME = 'mysqlerror.txt' (default)
-----------------------------------------------------------
*/

$backup['LOG_ERRORS'] = 1;
$backup['LOG_PATH'] = 'backups';
$backup['LOG_FILENAME'] = 'error.txt';



/*-----------------------------------------------------------
Backup Method to Use
-----------------------------------------------------------
Specify the methods you would like to use in backing up
your MySQL Database. To be more specific, whether or not
you want to use MySQLs (mysqldump) utility, which will have
to be executed via a system() call.

On some systems this utility either does not exist, or has
been disabled from use; in that case, you would need to
selection the second option, which will perform a PHP
backup of the database.
-----------------------------------------------------------
0 = Dump Using This Scripts PHP Dump Functions
1 = Dump Using MySQLDump (Recommended)
-----------------------------------------------------------
Lock Tables With PHPDump
-----------------------------------------------------------
If you selected option 0 above, this option is necessary
for you. I strongly suggest you leave LOCK = 1, as it will
prevent writing of data as you backup, which *Could* cause
data corruption during the backup process.

Unless you get some sort of weird errors, leave this alone.
Also, make sure you have it set in the configuration up
above, that the forum will SHUTDOWN during the backup,
that will help even further in preventing corruption.
-----------------------------------------------------------
Repair And Optimize
-----------------------------------------------------------
Select if you want to repair and optimize your MySQL Tables
prior to the actual backup of the tables.

By default I have left it off due to the fact, on large
MySQL Databases; this option can take quite some time.
If you want to run it, that is up to you.
-----------------------------------------------------------
0 = Don't Repair & Optimize Before Backup (default)
1 = Repair & Optimize
-----------------------------------------------------------
*/

$backup['METHOD'] = 1;
$backup['LOCK'] = 1;
$backup['REPAIR'] = 0;



/*-----------------------------------------------------------
Backup Type To Use / Selective Dump
-----------------------------------------------------------
Specify whether you would like to do a full database backup
, or specific tables in your database such as users post.
This really comes down to personal choice.

Some of the larger forums may like to keep backups of just
the necessary data to increase backup speed as well as disk
space. It's really up to the indivdual.
-----------------------------------------------------------
1 = Include Only Specified Tables
2 = Include all except Specified Tables (Recommended)
0 = All Tables - Alternative Option, the preferred method for ALL is Option 2 with a blank exclude array.
-----------------------------------------------------------
Tables to Dump
-----------------------------------------------------------
If you selected option 0, to selectively dump. Please fill
the TABLES array with the selected tables, as I have done
it already for example.

Note: If your using option 1 to dump all tables it will
ignore the TABLES array anyway.

NOte: If you are using prefixes, you must specify them
yourself in the tables array ie. forum_post, forum_user.
-----------------------------------------------------------
Combine Tables For Selective Dump
-----------------------------------------------------------
If you have selected option 0 to dump specific tables. This
option determines whether or not the dumps are Re-Combined
into 1 File for the purpose of keeping a cleaner dump
folder and ease of use, without having to re-import
multiple files again.

NOTE:
If you set COMBINE to 0 you MUST use the compression
handler (tar, tgz, tbz, zip) INSTEAD of (gz, bz2) as
they alone do not support multiple files in 1 compressed
archive.

For that reason, if you are not going to use the combine
option, use one of the tar variations or zip.
-----------------------------------------------------------
0 = Individual Tables SQL files are archived together.
1 = All Tables are re-joined back into 1 SQL File.
-----------------------------------------------------------
*/

$backup['TYPE'] = 2;
$backup['TABLES'] = array();
$backup['COMBINE'] = 0;



/*-----------------------------------------------------------
Backup Optimizations
-----------------------------------------------------------
These two optizations allow you to tweak the dumping of
your database backups. Enabling MySQL4 optimization is
recommened IF you are using MySQL 4 or Greater.

Also, if you are using INNODB, enable this option to enable
specific flag operations that will improve its restore
speed when recovering your database.

By default; both of these options are 0 for maximum
compatability, if you are using MySQL4 or Innodb PLEASE
change these for the sake of improving your MySQL Restore.
-----------------------------------------------------------
0 = Off (default)
1 = On
-----------------------------------------------------------
Lock Tables in Dump
-----------------------------------------------------------
This is to set whether or not you want the tables locked
in the dump file. This will vastly improve the speed at
which your dumps are restored back into the DB, some people
do not have LOCK permissions, if so disable this, but by
default it will be left on.
-----------------------------------------------------------
0 = Off
1 = On (default)
-----------------------------------------------------------
*/

$backup['MYSQL4'] = 1;
$backup['INNODB'] = 0;
$backup['LOCKTABLES'] = 1;



/*-----------------------------------------------------------
Execution Function
-----------------------------------------------------------
If using MySQLDump OR using a Compresser which you can
configure below. Select which PHP function you would like
to use to execute MySQLDump OR A compressor.

By default it is left as exec but depending on what
functions may or may not be enabled, you may have to change
them to suit your personalized needs.
-----------------------------------------------------------
Different Commands You Wish to Use
-----------------------------------------------------------
exec() = exec
system() = system
passthru() = passthru
-----------------------------------------------------------
*/

$backup['COMMAND'] = 'exec';



/*-----------------------------------------------------------
MySQLDUMP Path
-----------------------------------------------------------
If using MySQLDump, whats the path to it? Usually this can
be left alone. Although sometimes you may need to specify
a direct path to the binary if it is not registered in the
usual paths of shell.
-----------------------------------------------------------
examples;
MYSQLDUMP = mysqldump (default)
MYSQLDUMP = /usr/bin/mysqldump
MYSQLDUMP = /usr/local/bin/mysqldump
MYSQLDUMP = /path/to/custom/dir/mysqldump
-----------------------------------------------------------
*/

$backup['MYSQLDUMP'] = 'mysqldump';



/*-----------------------------------------------------------
MySQL Dump Switches
-----------------------------------------------------------
If using METHOD 1, these switches will be used when
creating the backup, go to:

dev.mysql.com/doc/mysql/en/mysqldump.html

For a complete list of the switches, and what actions they
account for.

By Default I will use the -opt switch as it gives us the
best switches all together for a faster dump/reload as well
as data integrity during the dump.

Unless you REALLY need something else. LEAVE THIS ALONE.

Note: --opt Adds Table Locking to your dump, if you Can Not
use Locks, you need to use other dump switches, as shown
in the below demonstration.
-----------------------------------------------------------
SWITCHES = '--opt' (default) (Best Performance)
SWITCHES = '--add-drop-table --extended-insert --quick' (Most Compatible)
-----------------------------------------------------------
*/

$backup['SWITCHES'] = '--opt';



/*-----------------------------------------------------------
Compression Options
-----------------------------------------------------------
If you are going to you Compression as Defined above you
should set here the type of compression that you would like
performed on the dump file. By Default this script supports
6 variations of formats.

The script is coded so that it will first try to use built
in PHP Functions to handle the compression such as
gzencode/bzcompress if not, it will try and handle that work
over to the command line for processing.

Another Note about the ZIP Archive, alot of *NIX system
don't support it, so if you want to use it, I suggest you
download the PCLZIP Library From:

http://www.phpconcept.net/pclzip/index.en.php

Then place it in the includes directory. The script will
automatically try to include the file and use it to
compress your backup file into zip format.
-----------------------------------------------------------
Use Compression
-----------------------------------------------------------
0 = No
1 = Yes
-----------------------------------------------------------
Buffer Block Size
-----------------------------------------------------------
This is the buffer size that is used, IF compressing occurs
with the built in PHP modules ZLIB/BZIP2. This will control
how many bytes of data are read at one time and then wrote
back to the filesystem in compressed output. Generally,
increasing this will somewhat increase the speed in output
but probably not by a lot. Be sure to check what your
local memory limit value is in phpinfo() before raising
this setting. The default value is (1048576) 1MB.
-----------------------------------------------------------
Compression Types
-----------------------------------------------------------
Gzip Archive = gz (PHP Module or GZip Binary)
BZIP2 Archive = bz2 (PHP Module or BZIP2 Binary)
Tar Archive = tar (Tar Binary)
Tar with Gzip = tgz (Tar Binary & GZip Filter)
Tar with Bzip = tbz (Tar Binary & BZip2 Filter)
Zip Archive = zip (PCLZIP Library or ZIP Binary)

Note: I strongly suggest to NOT USE THE BZIP2 LIBRARY.
It is painfully slow, and CPU Intensive at that. Use GZip,
ZIP, or a TAR/TAR with Gzip. Only use BZIP if you want the
best compression while sacrificing the time it takes to
compress the contents of the backup file.
-----------------------------------------------------------
Location to Compressors
-----------------------------------------------------------
If PHP Cannot find a PHP Module Function that will
facilitate its need to compress or in ZIP case the "PCLZip
Library which needs the PHP Zlib Module". It will instead
try to compress the file using an executable binary to
handle the compression.

I have default paths listed below, but as such as with the
mysqldump binary, you may need to change the full path to
the compressor as it differs from system to system,
although default usually will work on most setups.
-----------------------------------------------------------
examples;
gzip = gzip (default)
gzip = /path/to/gzip
bzip2= /usr/local/bin/bzip2
tar = /location/to/tar
-----------------------------------------------------------
*/

$backup['COMPRESS'] = 1;
$backup['BUFFER'] = 1048576;
$backup['COMPRESSION']= 'tgz';
$backup['COMPRESSORS']= array(
'gzip' => 'gzip',
'bzip2' => 'bzip2',
'tar' => 'tar',
'zip' => 'zip'
);

?>

Benedict
08 Apr 2006, 23:43
Hi,

This is such a good mod - i hope I can get it to work for me :)

I installed this hack for the first time on my 3.5.4 board. I took the original files and applied your changes.

However I get the following error when I manually run the job:

MySQL Error : Access denied for user 'XXXXXXXX' to database 'XXXXXXXXX'
Error Number : 1044

I run my board on a shared host if that helps :)

Cheers

Benny

Paul M
09 Apr 2006, 00:35
Are you sure you did all the changes ? - as that error makes no sense, since it says the user is denied access to the database, but the changes mean it pulls the user details from your vb config file.

jlaine
10 Apr 2006, 06:11
I've got a little problem: the script goes into a loop: after the last table, it starts again with the first table and over and over again :confused:

I tested it manually and to solve the problem, I needed to restart my server.

mysqlbackupconfig.php:
<?php

/***********************************************\
| VB MYSQL BACKUP v 1.9 |
| Dusty Burns aka TrigunFlame |
| |
| Fully Automated Database Backup For Vbulletin,|
| utilizing the built-in Vbulletin Cron System. |
| Also doubles as manual dump system from within|
| Vbulletin Admin Control Panel System |
\***********************************************/



/*-----------------------------------------------------------
MySQL Information
-----------------------------------------------------------
Here you will be able to modify your primary Database
connection information such as the hostname, username,
password and database that you would like to utilize during
the backup procedure. This stuff MUST be changed.
-----------------------------------------------------------
examples;
HOST = 'localhost' (default)
USER = 'root' (default)
PASS = ' ' (default)
DB = 'forums' (default)
-----------------------------------------------------------
*/

$backup['DB'] = $config['Database']['dbname'];
$backup['USER'] = $config['MasterServer']['username'];
$backup['PASS'] = $config['MasterServer']['password'];
$backup['HOST'] = $config['MasterServer']['servername'].':'.$config['MasterServer']['port'];



/*-----------------------------------------------------------
Forum Shutdown System
-----------------------------------------------------------
Here you can toggle if your forum will TEMPORARILY be
switched to off, while the backup is in progress. I highly
recommend that you do this for error-prevention reasons.
Although this script has precautions in place to prevent
data corruption (with Table Level Locking), your members
will not be able to WRITE to the database while you are
dumping, and may even get freezing page loads. Thus to
better handle the situation, and prevent confusion; use
this, and modify the message you want shown.
-----------------------------------------------------------
0 = Do NOT Shutdown Temporarily (NOT RECOMMENDED)
1 = Shutdown Forum while dump is in progress. (RECOMMENDED)
-----------------------------------------------------------
*/

$backup['SHUTDOWN'] = 1;
$backup['MESSAGE'] = "<p>Momenteel wordt de site database automatisch gebackupt.
Hierdoor is de site tijdelijk onbereikbaar.</p>
<p>Hierna zal de site automatisch heropend worden.</p>";



/*-----------------------------------------------------------
Backup Pruning
-----------------------------------------------------------
Select whether or not you would like to keep a Selected
amount of backups at one time. This is to prevent you from
using a lot of space, by keeping the amount of backups to
a specified amount.
-----------------------------------------------------------
0 = No
1 = Yes (default)
-----------------------------------------------------------
Backups To Keep
-----------------------------------------------------------
Specify here the actual amount of backups that you would
like to keep at any one time, the recommended amount is 5.
You may however specify as many as you please.
-----------------------------------------------------------
examples;
DUMPS = 5 (default)
-----------------------------------------------------------
*/

$backup['PRUNE'] = 1;
$backup['DUMPS'] = 5;



/*-----------------------------------------------------------
File Saving Information
-----------------------------------------------------------
Filename Date Format
-----------------------------------------------------------
This configures the way the filenames should look. You can
modify this by how the timestamps, are output.

Note: Do not modify this heavily, these need to be Unique
only to the day/month/year, no more specific.
-----------------------------------------------------------
examples;
DATE = 'm_d_y' (default)
DATE = 'mdy'

USE 1 OF THESE 2. NOTHING ELSE.
-----------------------------------------------------------
Dump Path
-----------------------------------------------------------
Specify the path to the directory where you will be saving
your Database Dumps.

By default, I have it listed as your Document Root, so if
you know you're going to be storing the file in the folder
backups, you would just have it like the example below.

If you would rather have the path specified manually, you
may do that also.

Note: You May also use relative paths, just like simple:
DUMP_PATH = 'backups' which would store the backup in a
folder in the same directory as the script. It is still
recommended to use a full path though, to be fully safe
with some functions that deal with windows file operations.
-----------------------------------------------------------
examples;
DUMP_PATH = backups (default)
^= Would store the file in the folder backups relative to
the root of your forum directory.

DUMP_PATH = $_SERVER['DOCUMENT_ROOT'].'/backups';
^= Would store the file in the folder "backups" inside your
web root.
-----------------------------------------------------------
*/

$backup['DATE'] = 'm_d_y';
$backup['PREFIX'] = 'Live_' ; // Backup File Prefix
$backup['DUMP_PATH'] = 'backups';



/*-----------------------------------------------------------
Remote FTP Transfer
-----------------------------------------------------------
Here you can configure if you want to transfer a new backup
to a remote FTP server for storage. This will take some
time to handle, but may be worth it depending on how much
you like to have backup redundancy.

To use FTP, you must use my included ftp.lib.php class that
houses 2 FTP client libraries, 1 being a FTP Module Wrapper
and the other being a fsockopen() based Raw FTP Client. You
must have this file present in your 'includes/' directory
for the FTP functionality.

NOTE: Currently only single file uploads are coded into the
client libraries. In other words, you will get an error if
you are using the backup type 0 and the combine = 0. These
libraries will only upload 1 file at a time, support for
uploading/deleting directories & multiple files have not
yet been coded into the script.
-----------------------------------------------------------
FTP = 0 Do Not Remotely Transfer the Backup (default)
FTP = 1 Transfer the Backup to a Remote FTP Server
-----------------------------------------------------------
Connection Settings
-----------------------------------------------------------
If you have selected the Option above to 1, to transfer;
then these settings will decide the information regarding
the transfer. These things be host, port, user, pass, and
the remote directory. These need to be filled out for the
transfer to be sucessfull.
-----------------------------------------------------------
Delete Local Backup
-----------------------------------------------------------
Here decides whether or not you would like to delete the
local version of the backup after you have transfered it.
By default this will be 0, but if you still want to do it,
just select 1 and it will leave your local backup in place.
-----------------------------------------------------------
FTP Directory
-----------------------------------------------------------
Select a Directory you would like all dump files to go to.
This directory must be already created, and possibly even
CHMODDED 0777 like the backup directory.
-----------------------------------------------------------
Remote Backup Pruning
-----------------------------------------------------------
Just like the options up above, you can remotely keep the
uploaded backups pruned and rotated, to keep from filling
up the remote directory with lots of backups. By default
this is yes, with a value of 5 like up above; change it
as you see fit.
-----------------------------------------------------------
examples;
FTP = 0 (off by default)
FTPHOST = '127.0.0.1'
FTPPORT = 21;
FTPUSER = 'root'
FTPPASS = 'none'
FTPDIR = '' (Initial directory, when logged in).
FTPDELLOC = 0
FTPPRUNE = 1
FTPDUMPS = 5
-----------------------------------------------------------
*/

$backup['FTP'] = 0;
$backup['FTPHOST'] = '127.0.0.1';
$backup['FTPPORT'] = 21;
$backup['FTPUSER'] = 'anonymous';
$backup['FTPPASS'] = 'email@notset.com';
$backup['FTPDIR'] = 'backups';
$backup['FTPDELLOC'] = 0;
$backup['FTPPRUNE'] = 1;
$backup['FTPDUMPS'] = 5;



/*-----------------------------------------------------------
Log Raw MySQL Errors
-----------------------------------------------------------
0 = No
1 = Yes (default)
-----------------------------------------------------------
Path To Log
-----------------------------------------------------------
Place here the path to the directory where you will be
saving any of the error logs that come to happen for
whatever reason.

By Default they are to be placed in the same directory as
this script, if you want, you may create a directory just
for the logs, or even set the log path to the same as the
dump path.

Note: You May also use relative paths, just like simple:
LOG_PATH = 'logs' which would store the logs in a
folder in the same directory as the script. It is still
recommended to use a full path though, to be fully
with some functions that deal with windows file operations.
-----------------------------------------------------------
examples;
LOG_PATH = $_SERVER['DOCUMENT_ROOT'] (default)
^= Would store the file in the primary directory of your
web root.

LOG_PATH = $_SERVER['DOCUMENT_ROOT'].'/logs';
^= Would store the file in the folder "logs" inside your
web root.
-----------------------------------------------------------
Log FileName
-----------------------------------------------------------
examples;
LOG_FILENAME = 'mysqlerror.txt' (default)
-----------------------------------------------------------
*/

$backup['LOG_ERRORS'] = 1;
$backup['LOG_PATH'] = 'backups';
$backup['LOG_FILENAME'] = 'error.txt';



/*-----------------------------------------------------------
Backup Method to Use
-----------------------------------------------------------
Specify the methods you would like to use in backing up
your MySQL Database. To be more specific, whether or not
you want to use MySQLs (mysqldump) utility, which will have
to be executed via a system() call.

On some systems this utility either does not exist, or has
been disabled from use; in that case, you would need to
selection the second option, which will perform a PHP
backup of the database.
-----------------------------------------------------------
0 = Dump Using This Scripts PHP Dump Functions
1 = Dump Using MySQLDump (Recommended)
-----------------------------------------------------------
Lock Tables With PHPDump
-----------------------------------------------------------
If you selected option 0 above, this option is necessary
for you. I strongly suggest you leave LOCK = 1, as it will
prevent writing of data as you backup, which *Could* cause
data corruption during the backup process.

Unless you get some sort of weird errors, leave this alone.
Also, make sure you have it set in the configuration up
above, that the forum will SHUTDOWN during the backup,
that will help even further in preventing corruption.
-----------------------------------------------------------
Repair And Optimize
-----------------------------------------------------------
Select if you want to repair and optimize your MySQL Tables
prior to the actual backup of the tables.

By default I have left it off due to the fact, on large
MySQL Databases; this option can take quite some time.
If you want to run it, that is up to you.
-----------------------------------------------------------
0 = Don't Repair & Optimize Before Backup (default)
1 = Repair & Optimize
-----------------------------------------------------------
*/

$backup['METHOD'] = 1;
$backup['LOCK'] = 1;
$backup['REPAIR'] = 0;



/*-----------------------------------------------------------
Backup Type To Use / Selective Dump
-----------------------------------------------------------
Specify whether you would like to do a full database backup
, or specific tables in your database such as users post.
This really comes down to personal choice.

Some of the larger forums may like to keep backups of just
the necessary data to increase backup speed as well as disk
space. It's really up to the indivdual.
-----------------------------------------------------------
1 = Include Only Specified Tables
2 = Include all except Specified Tables (Recommended)
0 = All Tables - Alternative Option, the preferred method for ALL is Option 2 with a blank exclude array.
-----------------------------------------------------------
Tables to Dump
-----------------------------------------------------------
If you selected option 0, to selectively dump. Please fill
the TABLES array with the selected tables, as I have done
it already for example.

Note: If your using option 1 to dump all tables it will
ignore the TABLES array anyway.

NOte: If you are using prefixes, you must specify them
yourself in the tables array ie. forum_post, forum_user.
-----------------------------------------------------------
Combine Tables For Selective Dump
-----------------------------------------------------------
If you have selected option 0 to dump specific tables. This
option determines whether or not the dumps are Re-Combined
into 1 File for the purpose of keeping a cleaner dump
folder and ease of use, without having to re-import
multiple files again.

NOTE:
If you set COMBINE to 0 you MUST use the compression
handler (tar, tgz, tbz, zip) INSTEAD of (gz, bz2) as
they alone do not support multiple files in 1 compressed
archive.

For that reason, if you are not going to use the combine
option, use one of the tar variations or zip.
-----------------------------------------------------------
0 = Individual Tables SQL files are archived together.
1 = All Tables are re-joined back into 1 SQL File.
-----------------------------------------------------------
*/

$backup['TYPE'] = 2;
$backup['TABLES'] = array();
$backup['COMBINE'] = 0;



/*-----------------------------------------------------------
Backup Optimizations
-----------------------------------------------------------
These two optizations allow you to tweak the dumping of
your database backups. Enabling MySQL4 optimization is
recommened IF you are using MySQL 4 or Greater.

Also, if you are using INNODB, enable this option to enable
specific flag operations that will improve its restore
speed when recovering your database.

By default; both of these options are 0 for maximum
compatability, if you are using MySQL4 or Innodb PLEASE
change these for the sake of improving your MySQL Restore.
-----------------------------------------------------------
0 = Off (default)
1 = On
-----------------------------------------------------------
Lock Tables in Dump
-----------------------------------------------------------
This is to set whether or not you want the tables locked
in the dump file. This will vastly improve the speed at
which your dumps are restored back into the DB, some people
do not have LOCK permissions, if so disable this, but by
default it will be left on.
-----------------------------------------------------------
0 = Off
1 = On (default)
-----------------------------------------------------------
*/

$backup['MYSQL4'] = 1;
$backup['INNODB'] = 0;
$backup['LOCKTABLES'] = 1;



/*-----------------------------------------------------------
Execution Function
-----------------------------------------------------------
If using MySQLDump OR using a Compresser which you can
configure below. Select which PHP function you would like
to use to execute MySQLDump OR A compressor.

By default it is left as exec but depending on what
functions may or may not be enabled, you may have to change
them to suit your personalized needs.
-----------------------------------------------------------
Different Commands You Wish to Use
-----------------------------------------------------------
exec() = exec
system() = system
passthru() = passthru
-----------------------------------------------------------
*/

$backup['COMMAND'] = 'exec';



/*-----------------------------------------------------------
MySQLDUMP Path
-----------------------------------------------------------
If using MySQLDump, whats the path to it? Usually this can
be left alone. Although sometimes you may need to specify
a direct path to the binary if it is not registered in the
usual paths of shell.
-----------------------------------------------------------
examples;
MYSQLDUMP = mysqldump (default)
MYSQLDUMP = /usr/bin/mysqldump
MYSQLDUMP = /usr/local/bin/mysqldump
MYSQLDUMP = /path/to/custom/dir/mysqldump
-----------------------------------------------------------
*/

$backup['MYSQLDUMP'] = 'mysqldump';



/*-----------------------------------------------------------
MySQL Dump Switches
-----------------------------------------------------------
If using METHOD 1, these switches will be used when
creating the backup, go to:

dev.mysql.com/doc/mysql/en/mysqldump.html

For a complete list of the switches, and what actions they
account for.

By Default I will use the -opt switch as it gives us the
best switches all together for a faster dump/reload as well
as data integrity during the dump.

Unless you REALLY need something else. LEAVE THIS ALONE.

Note: --opt Adds Table Locking to your dump, if you Can Not
use Locks, you need to use other dump switches, as shown
in the below demonstration.
-----------------------------------------------------------
SWITCHES = '--opt' (default) (Best Performance)
SWITCHES = '--add-drop-table --extended-insert --quick' (Most Compatible)
-----------------------------------------------------------
*/

$backup['SWITCHES'] = '--opt';



/*-----------------------------------------------------------
Compression Options
-----------------------------------------------------------
If you are going to you Compression as Defined above you
should set here the type of compression that you would like
performed on the dump file. By Default this script supports
6 variations of formats.

The script is coded so that it will first try to use built
in PHP Functions to handle the compression such as
gzencode/bzcompress if not, it will try and handle that work
over to the command line for processing.

Another Note about the ZIP Archive, alot of *NIX system
don't support it, so if you want to use it, I suggest you
download the PCLZIP Library From:

http://www.phpconcept.net/pclzip/index.en.php

Then place it in the includes directory. The script will
automatically try to include the file and use it to
compress your backup file into zip format.
-----------------------------------------------------------
Use Compression
-----------------------------------------------------------
0 = No
1 = Yes
-----------------------------------------------------------
Buffer Block Size
-----------------------------------------------------------
This is the buffer size that is used, IF compressing occurs
with the built in PHP modules ZLIB/BZIP2. This will control
how many bytes of data are read at one time and then wrote
back to the filesystem in compressed output. Generally,
increasing this will somewhat increase the speed in output
but probably not by a lot. Be sure to check what your
local memory limit value is in phpinfo() before raising
this setting. The default value is (1048576) 1MB.
-----------------------------------------------------------
Compression Types
-----------------------------------------------------------
Gzip Archive = gz (PHP Module or GZip Binary)
BZIP2 Archive = bz2 (PHP Module or BZIP2 Binary)
Tar Archive = tar (Tar Binary)
Tar with Gzip = tgz (Tar Binary & GZip Filter)
Tar with Bzip = tbz (Tar Binary & BZip2 Filter)
Zip Archive = zip (PCLZIP Library or ZIP Binary)

Note: I strongly suggest to NOT USE THE BZIP2 LIBRARY.
It is painfully slow, and CPU Intensive at that. Use GZip,
ZIP, or a TAR/TAR with Gzip. Only use BZIP if you want the
best compression while sacrificing the time it takes to
compress the contents of the backup file.
-----------------------------------------------------------
Location to Compressors
-----------------------------------------------------------
If PHP Cannot find a PHP Module Function that will
facilitate its need to compress or in ZIP case the "PCLZip
Library which needs the PHP Zlib Module". It will instead
try to compress the file using an executable binary to
handle the compression.

I have default paths listed below, but as such as with the
mysqldump binary, you may need to change the full path to
the compressor as it differs from system to system,
although default usually will work on most setups.
-----------------------------------------------------------
examples;
gzip = gzip (default)
gzip = /path/to/gzip
bzip2= /usr/local/bin/bzip2
tar = /location/to/tar
-----------------------------------------------------------
*/

$backup['COMPRESS'] = 1;
$backup['BUFFER'] = 1048576;
$backup['COMPRESSION']= 'tgz';
$backup['COMPRESSORS']= array(
'gzip' => 'gzip',
'bzip2' => 'bzip2',
'tar' => 'tar',
'zip' => 'zip'
);

?>

Don't quote me on this, but I seem to recall having the same problem when executing it manually via vbulletin's cron manager back when I was on 3.0... If you allow it to execute automatically, the problem doesn't happen.

Paul M
10 Apr 2006, 09:36
Unfortunately, as mentioned in the notes, this is just to convert the necessary bits to make it function in 3.5, any pre-existing bugs in the 3.0 version will still be there, and won't be fixed (at least not by me). :)

99Percent
11 Apr 2006, 07:31
I too hit the snag "Failover was initiated for MySQLDump Binary & An error occured during the MySQL backup. Details (Could not open Destination SQL file for writing.)"

After a bit of debugging I discovered that an ending backslash for the DUMP_PATH configuration is now required (at least in my box). Perhaps it would be good to change this code:
Find ;

$this->FULL_PATH = ($this->DUMP_PATH ? $this->DUMP_PATH.'/'.$this->DATE : $this->DATE);

Replace With ;

$this->FULL_PATH = ($this->DUMP_PATH ? $this->DUMP_PATH.$this->PREFIX.$this->DATE : $this->PREFIX.$this->DATE);

------------------------------

with this

Find ;

$this->FULL_PATH = ($this->DUMP_PATH ? $this->DUMP_PATH.'/'.$this->DATE : $this->DATE);

Replace With ;

$this->FULL_PATH = ($this->DUMP_PATH ? $this->DUMP_PATH.'/'.$this->PREFIX.$this->DATE : $this->PREFIX.$this->DATE);

------------------------------

Paul M
11 Apr 2006, 09:58
You're right - I missed that small change in my config file, the bit with the prefix should say this ;

Find ;

$backup['DATE'] = 'm_d_y';
$backup['DUMP_PATH'] = 'backups';

Replace With ;

$backup['DATE'] = 'Y-m-d';
$backup['PREFIX'] = 'Live-'; // File prefix
$backup['DUMP_PATH'] = 'valid-backup-path/'; // Path ( With trailing '/' )

Instructions updated.

oneglory
11 Apr 2006, 18:42
the backslash still isn't working for me.

oneglory
11 Apr 2006, 19:14
edit: './backup/'; worked

Paul M
11 Apr 2006, 19:22
edit: './backup/'; workedYes, it has to be a valid path. I assumed that people actually altered this to their own path as the default is not really a good idea (the backups are available for anyone to download).

oneglory
12 Apr 2006, 04:23
yea mine isn't actually "backup" its named something else, i just put it up here as an example.

99Percent
15 Apr 2006, 01:36
I am still having trouble with this mod. For somereason it is not reading the configuration for the the DB, USER, PASS and HOST, even with the require to config.php added right into the mysqlbackupconfig.php. So it fails over to phpbackup, which I don't want either.

99Percent
15 Apr 2006, 02:14
another correction I am making for mysqlbackup.php:

instead ofif (!$this->TYPE && $this->COMBINE)
it should say:
if ($this->TYPE && $this->COMBINE)
and in mysqlbackupconfig.php
instead of If you have selected option 0 to dump specific tables. This
option determines whether or not the dumps are Re-Combined

It should say:
If you did not select option 0 to dump specific tables. This
option determines whether or not the dumps are Re-Combined

Paul M
15 Apr 2006, 03:11
This is what happens when you try and find all the changes you made and end up missing bits - this got missed as well;

Find ;

if (!$this->TYPE && $this->COMBINE)

Replace With ;

if ($this->MULTIFILE == 0)Added to file.

chet
16 Apr 2006, 20:36
Cheers Paul

camoman
18 Apr 2006, 21:35
I had this running on 3.0.7 then upgraded to 3.5.4. I have since made the changes listed here and when I execute the task it gives me this error

Fatal error: Cannot instantiate non-existent class: mysqlbackup in /home/****/public_html/forum/includes/cron/cronbackup.php on line 29

and line 29 reads this:

require_once('./includes/adminfunctions.php');$mysqlBackup = &new mysqlBackup($backup, $vbulletin->db);

any help would be appreciated!!

Thanks!

Paul M
18 Apr 2006, 21:57
How have you ended up with a line like that ?

If you have followed the instructions then those two bits of code cannot be be together like that. Somethings wrong with your file and that's almost certainly why it fails.

camoman
18 Apr 2006, 22:16
Thanks for pointing that out.. that part is fixed now..

HOWEVEr, I now get this:

Failover was initiated for MySQLDump Binary & An error occured with configuration. (GZ) alone is not compatible for compressing multiple files into 1 archive. Read Config.

And all tables are backedup sepratley in my backup folder???

I also tried to set it to do a .tar archive adn recieved this error:

Failover was initiated for MySQLDump Binary & An error occured outputing a New Tar Archive with the shell Tar Binary (tar -cS --remove-files -f /home/*****/backup/2006-04-18.tar /home/*****/backup/2006-04-18).

Paul M
18 Apr 2006, 23:09
If you want the table files combined into one file then set the COMBINE option in the config file to 1, not 0.

The rest I cannot help you with - it's functionality of the (original) hack, which I don't support.

hilfe-forum
05 May 2006, 10:42
"Could not fetch database options. Shutting backup down"

any clue why i do get this emssage after starting the cronjob manually?

Paul M
05 May 2006, 18:19
No idea.

aleclee
07 May 2006, 21:42
Don't quote me on this, but I seem to recall having the same problem when executing it manually via vbulletin's cron manager back when I was on 3.0... If you allow it to execute automatically, the problem doesn't happen.If only I were that lucky. :(

Tralala
07 May 2006, 22:01
So far no new version has ever been released, though I believe Trigunflame is working on a completely new system.

LiveWire has his new one here; (http://www.vbulletin.org/forum/showthread.php?t=114097) how do the two back-up systems compare?

Mitendrius
28 Jun 2006, 17:16
I m gettin this error message

Parse error: syntax error, unexpected T_VARIABLE in /is/htdocs/VBulletin/includes/mysqlbackupconfig.php on line 56

Paul M
28 Jun 2006, 19:34
Check for a typing error, possibly a missing semi-colon from the line above.

Neo_obs
29 Jun 2006, 11:18
I keep getting this error

Failover was initiated for MySQLDump Binary & An error occured during the MySQL backup. Details (Could not open Destination SQL file for writing.)

I checked and the folder is 777 and inside the forum folder. Do i need to turn safe mode off?

Do you think I can get some personal help as i am now clueless

Paul M
29 Jun 2006, 18:26
Yes, you will almost certainly need safe mode off to run this.

Neo_obs
30 Jun 2006, 05:47
how do i turn safe mode off? cause im not familar with linux

Paul M
30 Jun 2006, 07:17
Contact your host.

Neo_obs
01 Jul 2006, 10:18
thanks paul for this I absolutely love the idea but I cant turn off safe mode.(host wont let me) but i do appreciate your effort and love all your other hacks. Keep up the good work.

Mouse_cats
19 Jul 2006, 08:01
thanks paul installed

I||usi0nz
31 Jul 2006, 18:12
how come i see differently in cron.php i couldn't find some of those things.

Art Andrews
31 Jul 2006, 19:19
Mastercoder Paul,

Any idea on what might trigger this error after manually running the schedule:

DB Backup
Processing access : Total Rows = 0
Processing adminhelp : Total Rows = 1240

Fatal error: Call to undefined function mysqli_unbuffered_query() in /home/.griff/c17lm/themppc.com/forums/includes/class_core.php on line 1093

Paul M
31 Jul 2006, 20:53
That seems to be a php/mysql problem. You have obviously opted to use mysqli in your config, but php is complaining it can't find a mysqli function.

Mysticales
14 Aug 2006, 19:32
I have this issue.. I had the 3.0.7 version, worked BEYOND my expactions.. took only 2 mins to fully backup a 400 mb SQL database (Well.. was 400 in the backup archive)

However.. this new version after I went to 3.5.4 it took.. um.. 2 hours to do.. it made MORE files in the backup folder vs a .tz file or whatever.. it was slow etc.. Did I mess up in the conversion? Cause a cron job loop? Why did it make more files vs the 1 archive file and what could cause it to change so drastic from 2 min backup process to like 2 hours?

Paul M
14 Aug 2006, 20:29
By default, the settings in the conversion are set for one file per table, as that's what I do. Change the combine setting if you want one file. As for time, sorry, no idea.

Mysticales
14 Aug 2006, 20:42
How was it set on OLD mod? 1 file period?

I mean.. just kinda curious what I COULD be doing wrong.

Paul M
14 Aug 2006, 20:46
Like I said, change the COMBINE setting to suit what you want, it's a setting in the config file.

Mysticales
15 Aug 2006, 01:29
K, Do you think it would increase the time if it did it one by one?

I mean how big is your backup file? I know we have a large community. Just wondering if maybe I set something wrong up when I converted the 3.0x version over.

Paul M
15 Aug 2006, 01:38
My backups total about 500MB, and take about 5 mins to run.

Mysticales
15 Aug 2006, 01:54
Just to be stupid...

What Cron settings did you use? Cause all I can "think" of is that I caused it to loop... but not sure.

Im worried about retrying it again.. cause I had "Lock Tables" enabled.. meaning.. I couldnt even do ANYTHING to restore forum access after I started running it.

Paul M
15 Aug 2006, 02:21
I never use the lock tables option, nothing but trouble ....

I'm at work so I can't tell you what options I have, as I have no access to them, I'll look tomorrow.

Mysticales
15 Aug 2006, 02:33
Great! Btw.. thanks for saying "Dont lock tables"

Your guide or somewhere said it was recommended more to prevent locking.

How will this play into effect on a large forum?

rainyleaves
16 Sep 2006, 14:40
I installed like below...

This is what happens when you try and find all the changes you made and end up missing bits - this got missed as well;

Find ;

if (!$this->TYPE && $this->COMBINE)

Replace With ;

if ($this->MULTIFILE == 0)Added to file.

But I got combine error.
I mean that Combined .sql file is empty(0Byte).

And that I changed code like below!!


another correction I am making for mysqlbackup.php:

instead ofif (!$this->TYPE && $this->COMBINE)
it should say:
if ($this->TYPE && $this->COMBINE)
and in mysqlbackupconfig.php
instead of If you have selected option 0 to dump specific tables. This
option determines whether or not the dumps are Re-Combined

It should say:
If you did not select option 0 to dump specific tables. This
option determines whether or not the dumps are Re-Combined


It worked fine!!!!

Thanks 99Percent & Paul ^^

hnjco
19 Sep 2006, 05:00
Is the destination accessible to php (i.e. if it's outside the forum root is basdir protection stopping you). Basically that's a server permission error, not a hack error.


well, I think this is error of concern... if we are saving database backups under public_html anybody can download those. Secured way of using this script is to save the backups under root of the server or in the folders which are not accessible via web.

may be a point to look in your future release of this mod.. on the whole this mod is awsome

thanks

Paul M
19 Sep 2006, 12:53
may be a point to look in your future release of this mod.. on the whole this mod is awsomeThere is nothing to look at - this will save backups wherever it has permission to - it is up to you (the user) to have the correct permissions set-up to allow it to write where you want it to.

xcingix
11 Dec 2007, 15:35
Any plans for 3.6.8 or 3.7.0?