- Backup (6)
- Backup Destinations (10)
- Backup Sources (8)
- Compression (7)
- Encryption (2)
- Job History (1)
- Logs (8)
- Miscellaneous (2)
- Notification (2)
- Reports (1)
- Restore (2)
- Schedule (3)
Backup | 7 Screenshots |
- Full backup
This feature allows you to create a full backup of all selected files/directories. It means that it always creates a full copy of your current files no matter if they changed since the last backup or not. It’s very useful to have a full backup copy of your files because you can always restore them by just extracting the whole archive over an existent location or even to a new location.
- Backup Restore Dashboard
This feature allows you to create quickly a backup copy or to restore your WordPress website from the last successful backup copy created by WP MyBackup. It also allows you to upload an external backup archive (tar, tar.gz, tar.bz, zip) created by itself of by some other backup application then allows you to restore it.
The restore function will restore the backup content to the WordPress root directory.Example: your backup contains a folder like /home/userABC/mywebsite/wp-admin/ and some files within it. When this folder is restored it will be restored as-is in your WordPress root folder despite the fact that you might expect that it will discard the /home/userABC/mywebsite prefix. So make sure your archive path is relative to the WordPress root path.
- Incremental backup
This feature allows you to create a backup copy where only those files will be included which have been changed since the last backup. If your blog/files have a considerable size (eg. 1GB+) and you are used to backup your files regularly on daily basis then usually (see full backup above) you must (i) compress all those files thus blocking your system resources and (ii) to transport the resulted backup set to a remote storage location which means using a huge amount of your network bandwidth. With incremental backup you just compress and transport those files changed since the last backup thus it (i) finishes earlier and (ii) uses less system resources than with the normal full backup (eg. on a blog with 10GB+ files if only two files are changed since the last backup then the backup will finish instantaneous!).
As for the backup the incremental backup mode is faster than the Differential backup which is faster than the full backup. As far as it concerns restoring the complexity is inversely proportional.
On the other hand this backup type is harder to restore because you have to restore each incremental set at a time, in their creation order. If you have the Restore Wizard then restoring an incremental backup set is almost as easy as drinking a glass of water.
- Differential backup
This feature allows you to create a backup where only those files will be included which have been changed since the last full backup. The difference between this feature and the other two (incremental respectively full backup) is that this is somehow a hybrid between the two. One disadvantage of the Incremental backup is when restoring the files : you need all the intermediary incremental copies to fully restore the system. With differential backup this number is usually lower and may vary from 1 to as many as in the case of the incremental backup.
As for the backup the Incremental backup mode is faster than the differential backup which is faster than the full backup. As far as it concerns restoring the complexity is inversely proportional.
On the other hand this backup type is harder to restore because you have to restore not only the differential set but also the last full backup set, in their creation order. If you have the Restore Wizard then restoring an differential backup set is almost as easy as drinking a glass of water.
- Backup from command-line (CLI)
This feature allows you to run the backup application from the command line. This option is mandatory if you want to schedule the backup to run via the OS scheduler (like cron on Linux or Task Scheduler on Windows).
The CLI tool has over 50 different options/switches available that allows you to set what to backup, how to backup and where to store the backup copies.Usage example:
php cli-backup.php --verbose=1 --email=eugenmihailescux@gmail.com --mysql --dir=/my-source-dir --disk --diskpath=/copy-here --diskage=5 --dropbox --dropboxage=5 –-excludeext=tar,gz,bz2 –-cpusleep=100The above will create a backup named 127.0.0.1-yymmdd_hhmmss.tar.gz (compressed at maximum) of those files from /my-source-dir/ exclusing any file with extention *.tar,*.gz or *.bz. It will backup also all MySQL tables. Any temporary file will be saved at /tmp and the same is true for the log files. The output verbosity will be keept minimal. Furthermore the backup will be automatically splitted into different volumes if it exceeds the limit of 150MB. Any email notification will be sent at youremail@domain.com. The final backup archive will be then deployed at Dropbox, on the local disk at /path/backup and nonetheless on Google. The CPU usage is throttled by setting a sleep threshold at 100ms.
- Advanced backup Wizard
This feature allows you to create one or many different backup profiles via a user-friendly Wizard interface.
A backup profile represents a bunch of settings that are stored into a named backup profile. Such settings tells the backup engine what to backup, how to backup, where to store the backup, and so on.Having multiple backup profiles is very useful because this allows you to create a fine-grained backup policy.
Example:
- I want to backup particular files (like images) with a particular encryption/compression method and to store them at a particular location
- I want to backup some other files (like data) with a particular encryption/compression method and to store them at some other location
- and so on
The idea is that I can define these backup profiles and run them at one, although they may have completely different settings.
Normally a backup program allows one global profile only and every time you want to have a particular profile you just change the global settings by overwriting the old settings. This feature is 2 in 1: a multi-profile backup and nonetheless a backup wizard 🙂
Backup Destinations | 4 Screenshots |
- Store backup to local disk
This feature allows you to store the backup copy to a local disk and in fact to any location where your local OS can read/write. Moreover, it allows you to define a disk backup age setting such that all copies older than the specified value will be automatically deleted. This is very useful when, for instance, you want to keep only the copies made within the last X-days.
- Store backup to FTP/FTPS
This feature allows you to store the backup copy to a remote FTP server. You may send the backup copies using a non-encrypted communication channel or, in case of FTPS, over a secure socket encrypted layer (SSL/TLS). This option enables the usage either of the PHP built-in FTP or the Curl library (which makes possible many other features like connection debugging, transfer progress, transfer throttling, etc). Moreover, it allows you to define a FTP backup age setting such that all copies older than the specified value will be automatically deleted. This is very useful when, for instance, you want to keep only the copies made within the last X-days. Nonetheless this feature allows you even to execute some remote raw FTP commands supported by your remote FTP server (see raw FTP commands).
- Store backup to SCP/SFTP
This feature allows you to store the backup copy to a remote SSH-enabled remote location. The transfer may be either via SFTP protocol (may not be confused with the FTPS) or via SCP protocol. They are very popular on Unix-like operating systems but nonetheless they work even on Windows. The communication is made via a public-private key (known as asymmetric cryptography) so no one can sneak in-between to stole your backup/data while you transfer it. The same is true for the other feature mentioned earlier (FTPS). Like all other sibling features this one also allows you to define a SSH backup age setting such that all copies older than the specified value will be automatically deleted.
- Store backup to Dropbox
This feature allows you to store the backup copy to your Dropbox cloud storage drive. Obviously you must have a Dropbox account. The Dropbox storage cloud is very useful in case of backup copies because (i) you can access the copy everywhere (as long you have Internet connection), (ii) it is simple to share a copy to other users so they download it directly from there and nevertheless (iii) it is stored in a safe and secure space that has redundant copies and anyway limitless storage resources comparing with normal people/businesses. Just like any other feature mentioned earlier this one also allows you to define a Dropbox backup age setting such that all copies older than the specified value will be automatically deleted.
- Store backup to Google Drive
This feature allows you to store the backup copy to your Google cloud storage drive. Obviously you must have a Google account. The Google storage cloud is very useful in case of backup copies for the same reasons like the those mentioned earlier for Dropbox, ie. (i) you can access the copy everywhere (as long you have Internet connection), (ii) it is simple to share a copy to other users so they download it directly from there and nevertheless (iii) it is stored in a safe and secure space that has redundant copies and anyway limitless storage resources comparing with normal people/businesses. It also worth mentioning that, like its sibling features, this one also allows you to define a Google backup age setting such that all copies older than the specified value will be automatically deleted.
- Store backup to WebDAV
This feature allows you to store the backup copy to a WebDAV server either securely (via HTTPS) or non-securely (HTTP). This feature is very useful because it allows you to copy your backup to a remote server using the native HTTP(S) protocol. When your host provider does not allow the usage of some nice-to-have ports like 22 (SSH) or 21 (FTP), when you don’t want to store your backup to a cloud like Google or Dropbox, the WebDAV comes in rescue. Note that the WebDAV is supported by IIS, Apache, Nginx and probably by all other web servers. Like all its sibling features this one also allows defining a WebDAV backup age setting such that all copies older than the specified value will be automatically deleted.
- Send your backup to e-mail
This feature allows you to send the backup via e-mail. Depending on the chosen SMTP backend (like PEAR Mail or the native mail library) the email may be sent securely (TLS) or not. This feature is particularly useful only when you have a small blog or when you use incremental backups. If you have a large backup file then sending it via e-mail may be cumbersome because with emails everything is base-64 encoded which make the original message 33% bigger as size. Moreover, some SMTP servers don’t allow attachments larger than a specific threshold so use it with care. However, you may configure an option that will split the backup into several messages such that you may overcome the SMTP server limits. Furthermore, you may use the native PHP mail back-end or the PEAR SMTP library which allows you to perform easily some benchmarks and see which back-end suits you best. In the future this will also include a mail queue which allows the application to enqueue the mails and send them in background.
- Upload throttling
This feature is kind of bandwidth throttling, ie. it allows you to limit the network bandwidth usage while uploading a backup file to its destination.
This feature is really useful because you want that your website visitors to have a pleasant experience while browsing your website. If a backup transfer is on progress and if it takes all the bandwidth while sending the data then your web visitors might notice a delay while they are navigating through your website. No one wants a angry visitor, it’s not good for the business, right?
- Advanced network settings
These feature allows you to have a fine-grained control over how your system access and communicates with other systems. It allows you set globally the following settings:
- the proxy settings:
- type (HTTP/SOCKS)
- host, port
- authentication method (basic/NTLM) and the user/password
- the SSL settings:
- the SSL certificates path
- if you want to enforce the SSL to check the peer identity and/or the host identity
- the SSL version to be used (like TLS 1.x/1.0/1.1/1.2, SSL2 or SSL3)
- a global download throttling threshold (see the Upload throttling)
- a global request timeout that sets how long will wait for a web page to load until it generates a timeout-error
- the name of the outgoing interface (network card) to be used; this is very useful for servers that have multiple network cards and you want to use a particular interface with this application
- Advanced file explorer
No matter if you choose as a backup destination the local filesystem, a FTP server, a SSH server, a Dropbox, Google or WebDAV drive, this features allows you to navigate through their directory/file structure, to create, rename, remove or to download the remote content on the same way you do on your OS file explorer.
Without this feature you would have to create/rename/remove files/directories with the aid of some external applications (like a FTP application or on a separate Dropbox/Google web page, etc). Nevertheless without this feature you would have to set the destination path by typing the full path in a text box instead of navingation on a WYSIWYG interface. I love to see what am I doing while I’m doing and not just to wait and see what happens. If you are like me then this addon is certainly for you.
Backup Sources | 5 Screenshots |
- Backup remote MySQL database
This feature allows you to backup any local/remote MySQL database.
Basically the backup consists of a SQL script file that actually represents a script able to recreate the whole database content from scratch. For each table it contains SQL statements that will recreate:
- the tables structure
- the tables indecs/keys
- the tables records
This backup file may be later used as a safe copy, to migrate the database manually to another MySQL server or just to restore it automatically on the same server using the Restore Wizard add-on.
Note that this feature will use also the MySQL database maintenance feature to check/repair the MySQL database before the backup is made.
If you would prefer a more robust MySQL backup option like mysqldump then you may be interested in the Backup MySQL via mysqldump add-on.
- Backup Wordpress database
This feature allows you to backup your WordPress MySQL database.
Basically the backup consists of a SQL script file that actually represents a script able to recreate the whole database content from scratch. For each table it contains SQL statements that will recreate:
- the tables structure
- the tables indecs/keys
- the tables records
This backup file may be later used as a safe copy, to migrate the database manually to another MySQL server or just to restore it automatically on the same server (the WordPress server) using the Restore Wizard add-on.
Note that this feature will use also the MySQL database maintenance feature to check/repair the MySQL database before the backup is made.
If you would prefer a more robust MySQL backup option like mysqldump then you may be interested in the Backup MySQL via mysqldump add-on.In case you want to backup other database/server than WordPress then you may want to check the WP Backup remote MySQL database add-on.
- Backup local filesystem
This feature allows you to backup any file that you can access on your local system.
If your system maps some remote drive as a local drive (eg. a Dropbox drive as a local drive or a network mountpoint as a local drive) then obviously you will be able to backup these files too.
The WordPress users might want to check the WP backup local filesystem add-on instead.
- Backup Wordpress files
This feature allows you to select the WordPress files you want to backup. If you need to backup some other non-Wordpress files too the you may want to use the WP backup local filesystem add-on. Being specially created for the WordPress this feature allows you to select and backup the WordPress files by their role like “WP dashboard files”, “WP uploaded files” (eg. cache, images, videos, etc), “WP plugins”, “WP themes”, “WP core files”, etc. For those WordPress users that are not acustomed with the WordPress internal file structure this will realy simplify the file selection.
- MySQL database maintenance
This feature allows the selected MySQL database to be analyzed, checked, 0ptimized and eventually repaired before you create its backup. These operations are 100% safe due the fact that this is done using the MySQL built-in functions.
- WP backup local filesystem
This feature allows you to backup any file that is visible to your local OS. It doesn’t matter if the file is stored locally or on a remote location (eg. LAN, NAS, WebDAV, Dropbox,etc) as long as your system can access it locally.
- Backup MySQL via mysqldump
This add-on allows you to perform the MySQL backup via the native MySQL mysqldump utility. So this feature acts more like an interface between MyBackup and that MySQL utility.
The backup created via mysqldump should run a bit faster and the script should be a bit safer. Furthermore this option will allow you to set many advanced mysqldump options that normally are not available with the MyBackup built-in MySQL backup function.
This option is recommended to the advanced users only because if you want to use it at its full potential you should have some knowledge of MySQL/mysqldump (which the everyday user doesn’t have it).
- WP Backup remote MySQL database
This feature allows you to backup ANY local/remote MySQL database.
Basically the backup consists of a SQL script file that actually represents a script able to recreate the whole database content from scratch. For each table it contains SQL statements that will recreate:
- the tables structure
- the tables indecs/keys
- the tables records
This backup file may be later used as a safe copy, to migrate the database manually to another MySQL server or just to restore it automatically on the same server using the Restore Wizard add-on.
Note that this feature will use also the MySQL database maintenance feature to check/repair the MySQL database before the backup is made.
If you would prefer a more robust MySQL backup option like mysqldump then you may be interested in the Backup MySQL via mysqldump add-on.
Compression | 8 Screenshots |
- Internal PHP compression toolchain
This feature enables the usage of the PHP built-in compression algorithms like Bzip, Gzip, LZF. It means that your backup files can be compressed and encapsulated into a TAR archive such as .tar.bz2, .tar.gz, .tar.lzf (very popular nowadays especially on Linux/Unix world).
Besides that the well known Zip archive is also available. The availability of Zip archive gives you the ability to use the archive between different operating systems with easy due the fact that Zip is well supported by probably all known OS.
Some metrics about the above compression algorithms:
Compression speed: BZip2 < GZip < Zip < LZF (the lower the better)
Compression ratio: LZF > GZip > Zip > BZip2 (the higher the better)Please note that LZF is not available by default. If you need to use it then you may want to check the LZF compression add-on.
- CPU throttling
This feature allows you to slow down the application by setting a small sleep-time the CPU may uses between two consecutive operations. Although it may sound counter-intuitive this feature is actually helping you (likewise Upload throttling) by not using 100% the CPU during backup/restore operations.
With other words although your system is engaged in a resource consuming operation (like backup/restore) your website visitors will not notice a thing because it is you who set how much CPU will be used and thus how much will be available for your website visitors.
For instance, if you set a CPU sleep time of 1000 ms (ie. 1 second) then the backup/restore function will compress/decompress a chunk of ~4KB then sleeps for one second. Then it continue with the next chunk and so on. By doing this the system’s CPU will be almost free (not used) which means that it is instead available for your website visitors.
When you want to disable this feature just set this option to 0ms which means no-sleep, ie. 100% CPU.
- PclZip archive
This feature allows you to backup your files by enclosing them into the most popular archive format: ZIP archive. It uses the PclZip library distributed by WordPress thus this feature is available only for WP MyBackup. However, if you need Zip support for MyBackup (the non-WordPress flavour) then you should check the ZIP archive addon.
Due to PclZip implementation this feature is slower than the commercial ZIP archive addon (which is also available for the non-WordPress flavour).
PclZip is written on top of PHP zlib library. The Zip Archive addon is based on the ZipArchive PHP class which also uses the zlib library. Therefore we can see that the speed difference might be the way that PclZip and ZipArchive are implemented.
- External OS compression toolchain
This feature enables the usage of the external OS-dependent compression tools like tar, gzip, bzip, pbzip (available on Windows via Cygwin). Basically you can use almost the same compression algorithms/archives as with the built-in Internal PHP compression toolchain feature. So what’s the catch you would ask? Well, the main advantage of this add-on is that it allows the usage of some multi-processor compression tools like PBZip2. By using PBzip2 you get almost linear speed improvements on multi-CPU and multi-core computers (ie. on a computer with 8 CPU the compression may run 8 times faster).
- Benchmark the compression toolchains
This feature allows you to compare the performance of the internal toolchain vs. the external toolchain for your current backup configuration. The benchmark test will compare the following metrics:
- compression time
- memory usage
- compression size
- compression ratio
Based on the calculated performance indicators it will suggest you what toolchain is better to use. This tool is also useful because it gives you an rough idea about how long and what resources are needed to complete the backup task.
- LZF compression
This feature allows you to compress your backup using the LZF compression filter. libLZF is probably one of the fastest compression library out there.
LZF is ideal when you want to achieve a fast, real-time compression, where liblzf can save I/O without costing too much CPU time.
- ZIP archive
This feature allows you to backup your files by enclosing them into the most popular archive format: ZIP archive. This may be desirable for the Windows users that are accustomed with the Zip archive or for those who do not know much about the tar.bz2, tar.gz or the uncompressed .tar archives (very popular among Linux/Unix users).
The usage of this archive format has many advantages, for instance you can use the archive on different operating systems with easy because (i) it is probably supported by any OS out there and (ii) everyone knows how to handle a Zip archive, don’t they?
Encryption | 4 Screenshots |
- OpenSSL AES encryption
This feature allows you to apply an encryption to the resulted backup archive using an encryption key. Later you may decrypt that archive on any system that provides OpenSSL support.
The only supported cipher is AES (aka Rijndael) because any other doesn’t count anymore. You may opt between the 128/192/256 bit key with CBC encryption block.
Note that the Advanced Encryption Standard (AES) is the one of most secure cipher adopted worldwide by, among many others, the US government and their National Security Agency (NSA).
It is worth mentioning that when you want to restore the encrypted archive using this application the decryption is done automatically.
The main advantage of OpenSSL over Mcrypt implementation (see below) is that the former one is much faster than the Mcrypt. Some tests show that OpenSSL can encrypt even 20x faster than Mcrypt and decrypt about 30x faster than the last one!
- Mcrypt Rijndael encryption
This feature allows you to apply an encryption to the resulted backup archive using an encryption key. Later you may decrypt that archive on any system that provides MCrypt support.
The only supported cipher is Rijndael which is in fact the same algorithm used by AES. You may opt between the 128/192/256 bit key with CBC encryption block.
Note that the Rijndael (aka AES) is the one of most secure cipher adopted worldwide by, among many others, the US government and their National Security Agency (NSA).
Comparing with OpenSSL this one is much slower but it is a good alternative when OpenSSL library is not around.
Job History | 4 Screenshots |
- Enhanced job history
This feature allows you to query the job history database (by status,state,time) and to access all information about one job (over 80 fields).
If you want to check why something (not) worked as expected then this feature is the place to start looking for. I just simply love it 🙂The difference between this option and the Logs feature (which consists on a set of plain-text files) is that this one aggregates all the log information in a user-friendly web interface that just simplifies everything!
Note that this feature makes also possible the existence of Reports.
Logs | 5 Screenshots |
- Jobs log
This feature allows you to access the job log file which basically has an entry that contains the date/time and the type of job for each backup/restore job that has been run since the application was installed. If you want to know what happened during that backup/restore job then you may want to check the Full log feature.
- Jobs full log
This feature allows you to access the job full log file that gives you all the possible details about a particular backup/restore job. Such details contains, among others, the system resources at the beginning of the job (like free memory, disk, cpu usage, etc), the job settings (compression method, ratio, many other settings), the list of the files archived, what was copied and where, how long it took, in short, everything! If you want a friendly user interface for that file then probably you would like to check the Enhanced job history add-on instead.
Sample log:
[job_id:123]
[2015-06-25 08:16:04] Job started with WP-Admin-Async interface
[2015-06-25 08:16:04] * OS/PHP : Linux/5.4.38-pl0-gentoo
[2015-06-25 08:16:04] * Working directory : /tmp/
[2015-06-25 08:16:04] * Log directory : /tmp/logs/
[2015-06-25 08:16:04] * Backup mode : Full
[2015-06-25 08:16:04] * Toolchain : WP MyBackup (intern)
[2015-06-25 08:16:04] * Compression type : bzip2
[2015-06-25 08:16:04] * Compression level : 9
[2015-06-25 08:16:04] * Encryption type : none
[2015-06-25 08:16:04] * CPU sleep : 0ms
[2015-06-25 08:16:04] * PHP memory limit : 128.00 MiB
[2015-06-25 08:16:04] * PHP memory footprint : 4.50 MiB (~3.52 % => 96.48 % available)
[2015-06-25 08:16:04] * Exec time limit : 30s
[2015-06-25 08:16:04] * Disk free space : 1.87 GiB
[2015-06-25 08:16:04] * Timezone : UTC
[2015-06-25 08:16:04] * Verbosity : Full
—————————————————————————————————-
[2015-06-25 08:16:04] Backing up the MySQL database mynixwor_wp tables
[2015-06-25 08:16:05] – tables pattern: *
[2015-06-25 08:16:05] – compressing localhost-20150625-081604.sql with BZIP2 filter
[2015-06-25 08:16:06] – TAR volume(0) compressed successfully (3.52 MiB @ ratio 15.05)
[2015-06-25 08:16:08] – uploading securely localhost-20150625-081604.sql.tar.bz2 (239.25 KiB) to dropbox:///
[2015-06-25 08:16:15] – file uploaded successfully (34.18 KiB/s)
[2015-06-25 08:16:15] – copying localhost-20150625-081604.sql.tar.bz2 (239.25 KiB) to disk:///home/eugen/xxx
[2015-06-25 08:16:15] – file copied successfully (less than 1s)
—————————————————————————————————-
[2015-06-25 08:16:15] Creating the backup file list (/home/user8754648/wordpress/)
[2015-06-25 08:16:15] – excluding directory /
[2015-06-25 08:16:15] – Added /home/user8754648/wordpress/wp-dir directory (3 files)
…
TOTAL : 6 old files cleaned-up
—————————————————————————————————-
Job finished successfully.
Total elapsed time 00:00:37
Average compression ratio 7.01x
—————————————————————————————————-
[/job_id:123]Sending this report via e-mail to [eugenmihailescux@gmail.com]
- Debug error log
Any PHP unexpected error that may occur during the usage of this application is captured into a specific log file. This feature is very useful in case you want to debug why something hasn’t worked as expected or even when you want to report a specific bug error.
- Debug trace log
Any error that is thrown/triggered by this application will be captured into a specific log file. This feature, likewise the one mentioned earlier, is very useful when you want to know what went wrong. It also provides a full backtrace of the error so usually, for developers/webadmins, this is pure gold.
- cURL debug log
Usually the whole HTTP communication is done via cURL library. This feature captures all the HTTP request/responses sent/received via cURL. It is particularly useful when troubleshooting some communication issues because the cURL debug log will provide you additional information which normally is not visible on the UI.
Sample log:
——————————————————————————–
[2015-06-25 08:16:07] URL=https://api.dropbox.com/1/account/info
——————————————————————————–
* Hostname was found in DNS cache
* Trying 108.160.172.237…
* Connected to api.dropbox.com (108.160.172.237) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: /home/user8754648/wordpress/wpmybackup/ssl/cacert.pem
CApath: /etc/ssl/certs
* SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
* Server certificate:
* subject: OU=Domain Control Validated; CN=api.dropboxapi.com
* start date: 2015-05-13 19:06:39 GMT
* expire date: 2016-05-07 18:59:42 GMT
* issuer: C=US; ST=Arizona; L=Scottsdale; O=GoDaddy.com, Inc.; OU=http://certs.godaddy.com/repository/; CN=Go Daddy Secure Certificate Authority – G2
* SSL certificate verify ok.
> GET /1/account/info HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Firefox/31.0
Host: api.dropbox.com
Accept: */*
Authorization: Bearer aWYgeW91IHJlYWQgdGhpcyB0aGVuIHRoZXJlIGlzIGEgbGl0dGxlIGhhY2tlciBpbiB5b3U< HTTP/1.1 200 OK
< Server: nginx
< Date: Thu, 25 Jun 2015 08:16:07 GMT
< Content-Type: text/javascript
< Transfer-Encoding: chunked
< Connection: keep-alive
< x-content-type-options: nosniff
* Added cookie gvc=”MTIzNDU2Nzg5ODc2NTQzMjE” for domain api.dropbox.com, path /, expire 1592900167
< set-cookie: gvc=MTIzNDU2Nzg5ODc2NTQzMjE; expires=Tue, 23 Jun 2020 08:16:07 GMT; httponly; Path=/; secure
< x-server-response-time: 69
< x-dropbox-request-id: 1602db3cea5c36cd589c1ca33816fbdd
< pragma: no-cache
< cache-control: no-cache
< x-dropbox-http-protocol: None
< x-frame-options: SAMEORIGIN
< * Connection #0 to host api.dropbox.com left intact [2015-06-25 08:16:07] Curl error code=0, HTTP code=200 ——————————————————————————– Global CURL options: Array ( [CURLOPT_HTTPAUTH] => -17
[CURLOPT_USERPWD] =>
[CURLOPT_COOKIESESSION] =>
[CURLOPT_FOLLOWLOCATION] => 1
…Command CURL options:
Array
(
[CURLOPT_URL] => https://api.dropbox.com/1/account/info
[CURLOPT_RETURNTRANSFER] => 1
[CURLOPT_HTTPHEADER] => Array
(
[0] => Authorization: Bearer aWYgeW91IHJlYWQgdGhpcyB0aGVuIHRoZXJlIGlzIGEgbGl0dGxlIGhhY2tlciBpbiB5b3U
))
- SQL/Reports log
MyBackup uses internally either the MySQL or SQLite for storing its options, logs, history and statistics. This feature captures all SQL commands/results sent/received to/from these database engines. Also useful for troubleshooting.
- Trace action log
Any element you click on the UI may be an asynchronous/synchronous call to a MyBackup function. This feature captures all these actions and save them in a special log file. It’s useful also for troubleshooting.
- SMTP debug log
When mail is not delivered successfully, the first order of business is to look for errors that prevent mail library from working properly.
To help you diagnose the email communication issues MyBackup logs all failed and successful deliveries to a logfile.
If you are using the native email back-end then the log will contain an entry for each email that is sent with a brief information about when, who, what.
If you are using the Pear Mail back-end with debug option set ON then the Pear Mail library provides extended debug information like the example below:
Recv: 220 mx.google.com ESMTP c11sm22982907wib.1 - gsmtp Send: EHLO localhost Recv: 250-mx.google.com at your service, [x.x.x.x] Recv: 250-SIZE 35882577 Recv: 250-8BITMIME Recv: 250-AUTH LOGIN PLAIN XOAUTH2 PLAIN-CLIENTTOKEN XOAUTH Recv: 250-ENHANCEDSTATUSCODES Recv: 250-PIPELINING Recv: 250-CHUNKING Recv: 250 SMTPUTF8 Send: AUTH LOGIN Recv: 334 bWFpbHVzZXI Send: bWFpbHVzZXJAZG9tYWluLm9yZw Recv: 334 UGFzc3dvcmQ6 Send: cGFzc3dvcmQ= Recv: 235 2.7.0 Accepted Send: MAIL FROM:<mailuser@domain.org> Recv: 250 2.1.0 OK c11sm22982907wib.1 - gsmtp Send: RCPT TO:<whatever@younameit.info> Recv: 250 2.1.5 OK c11sm22982907wib.1 - gsmtp Send: DATA Recv: 354 Go ahead c11sm22982907wib.1 - gsmtp Send: MIME-Version: 1.0 Send: --=_f29f431eb8f4144cb810444e297bec5e Send: 7XAmjtaRZ Send: Recv: 250 2.0.0 OK 1435074337 c11sm22982907wib.1 - gsmtp Send: QUIT Recv: 221 2.0.0 closing connection c11sm22982907wib.1 - gsmtp
Miscellaneous | 1 Screenshots |
- Export settings
If for some reason you need to export the settings of this application they may be exported in three different formats: as XML file, as JSON file or as .ini file.
- System check
This option will check if you system fulfils the minimal criteria for this application to work like the installed hardware/software, PHP libraries, WordPress plugins (in case of WordPress installation). If is particularly useful at installation time.
Notification | 2 Screenshots |
- E-mail notifications
This feature makes sure that you get notified via e-mail each time a backup/restore job starts/finishes. A similar notification is also sent after the MySQL database is checked. The email contains an exhaustive report that basically contains exactly the same level of details as the Job full log feature.
- Dashboard notifications
This feature captures all those warnings/errors or any other internal notices that may occur during the backup/restore process and store them into an internal message repository. If there are any unread notifications the UI will display a small banner that just let you know how many they are. Whether you opt to read/delete them or not this feature makes sure you cannot ignore them until you set them as read (it is supposed that they contain an important message, isn’t it?).
Reports | 8 Screenshots |
- Backup reports
This feature aggregates all the info provided by the Job history add-on, analyzes it and compiles over seven different charts reports with the aim to answer the following questions:
- what was the system load during the backup
- what is the backup status (eg. running,aborted,etc) for a given period
- what is the backup state(partial,failed,completed) for a give period
- what is the backup state per target (eg. Dropbox, Google, disk, etc)
- what is the current media usage(used,free) per target
- what is the forecast for media usage for the next X days
It also gives you four different gauges that shows the actual system usage: cpu, memory, network bandwidth usage, disk usage.
Restore | 11 Screenshots |
- Backup Restore Dashboard
This feature allows you to create quickly a backup copy or to restore your WordPress website from the last successful backup copy created by WP MyBackup. It also allows you to upload an external backup archive (tar, tar.gz, tar.bz, zip) created by itself of by some other backup application then allows you to restore it.
The restore function will restore the backup content to the WordPress root directory.Example: your backup contains a folder like /home/userABC/mywebsite/wp-admin/ and some files within it. When this folder is restored it will be restored as-is in your WordPress root folder despite the fact that you might expect that it will discard the /home/userABC/mywebsite prefix. So make sure your archive path is relative to the WordPress root path.
- Restore Wizard
This feature allows you to restore fully or partial your files/MySQL database from an existent backup copy. It might be handy if you don’t have the knowledge to do this manually. It may be handy even for experts thanks to the wizard that guides your steps throughout the entire process. Being integrated with the job history feature it already knows what backup you have and where were they stored so the restore task will be is almost as easy as drinking a glass of water 😉
It supports restoring a full backup set, a differential backup set and an incremental backup set created by this application.
Schedule | 5 Screenshots |
- Schedule the backup via OS
This feature allows you to schedule the backup to run automatically as a predefined Linux/Windows scheduled cron job/task. Usually, for security reasons, the web server is configured such that the web application (this one for instance) does not have access to the OS configuration files/routines. It means that there is no way to create automatically a schedule at the OS level without the sys-admin intervention. What this feature does is that it creates the shell-command that you may use when you define the Linux/Windows scheduled task. Although you might create it by yourself (any sysadmin should know how to do it) it is not a trivial task because it is supposed that you have to recreate the command – by hand – each time you change something in the MyBackup configuration. Note that this feature makes no sense without the Backup CLI interface support feature. Backup CLI interface support allows you to run MyBackup from shell and thus you may use this feature to call the Backup CLI interface support from shell.
Example:
php cli-backup.php --url=127.0.0.1 --gzip --9 --dir=/my-source-dir/ --wrkdir=/tmp --verbose=minimal --size=150 --mail=eugenmihailescux@gmail.com --excludeext=tar,gz,bz2 --logdir=/tmp --logrotate --logsize=1 --dropbox=/dropbox/backup/ --disk=/path/backup --google=/g-root/ --tables=* --cpusleep=100Note that there are at least 50 different options/switches available because MyBackup is quite a complex application so as I’ve said it’s not a trivial task. With this feature creating that command is just a breeze 🙂
- Schedule the backup via WP Cron
WordPress does include a Linux like cron scheduler. This feature creates a WordPress Cron schedule such that your files are automatically backed-up whenever WordPress runs that schedule entry (like hourly, twice daily, daily, weekly, monthly or any other schedule already predefined within your WordPress installation).
- Schedule the WP backup via OS
This feature allows you to schedule the backup to run automatically as a predefined Linux/Windows scheduled cron job/task. Usually, for security reasons, the web server is configured such that the web application (this one for instance) does not have access to the OS configuration files/routines. It means that there is no way to create automatically a schedule at the OS level without the sys-admin intervention. What this feature does is that it creates the shell-command that you may use when you define the Linux/Windows scheduled task. Although you might create it by yourself (any sysadmin should know how to do it) it is not a trivial task because it is supposed that you have to recreate the command – by hand – each time you change something in the MyBackup configuration. Note that this feature makes no sense without the Backup CLI interface support feature. Backup CLI interface support allows you to run MyBackup from shell and thus you may use this feature to call the Backup CLI interface support from shell.
Example:
php cli-backup.php --verbose=1 --email=eugenmihailescux@gmail.com --mysql --dir=/my-source-dir --disk --diskpath=/copy-here --diskage=5 --dropbox --dropboxage=5 –-excludeext=tar,gz,bz2 –-cpusleep=100Note that there are at least 50 different options/switches available because MyBackup is quite a complex application so as I’ve said it’s not a trivial task. With this feature creating that command is just a breeze 🙂
To see what is included in the FREE version or what can be bought additionally please check the FREE vs PRO comparison matrix.
You may also want to check the screenshot section.