Tutorials

This page is under continuous work. It is an index of several tutorials regarding the usage of . If you don't find the tutorial you are interested in then please come back at a later time. Until then please review the Get Support page. It will guide you to the nearest available support resource.
If you prefer a video tutorial instead a written one, then check out our You Tube channel.

  1. Checking if your system supports the application
  2. Installing the application
    1. as a WordPress plugin
    2. as a standalone web-application
  3. Configuring the application for the first time
  4. Defining backup jobs
    1. a simple backup job
    2. a more complex backup job
    3. multiple backup jobs with their own settings
  5. Schedule a backup job
    1. to run with WordPress Cron
    2. to run with local OS task scheduler
  6. Run a backup job
    1. with one-click
    2. manually from the system terminal (CLI)
    3. automatically by the job scheduler
  7. Restore a backup set
    1. a full backup set
    2. a differential backup set
    3. an incremental backup set
  8. Searching for a specific backup/restore job
  9. Downloading the MySQL database with one-click
  10. Downloading a backup archive from a remote storage
  11. Interpreting the application log files
  12. Interpreting the backup job statistic's charts
  13. Installing, uninstalling, enabling or disabling an Add-on
  14. Troubleshooting
    1. a backup job
    2. a restore job
    3. a remote connection
    4. an email message
    5. an application error
  15. Reporting an error or requesting a feature

Checking if your system supports the application

WP MyBackup is known to work Firefox, Chrome, IE7+ and Opera over IIS/Apache with MySQL v5.0+ and PHP 5.3+. The WordPress plugin was successfully tested on WordPress 3.0, 3.4, 4.x and 4.2.2 on both Windows and Linux environments.

The following PHP extensions are also required if you want to take advantage of all its features:
  • STL - used to load automatically the PHP scripts so this is a MUST
  • bz2 - used to compress/decompress files using the Burrows–Wheeler algorithm.
  • curl - used to upload/download content and to communicate via HTTP/FTP/SSH protocols; this is a MUST
  • fileinfo - used to read information about the file/content type
  • filter - used for validating URIs
  • ftp - used for FTP access
  • gettext - used for localization so this is a MUST
  • json - used heavily by the application so this is a MUST
  • lzf - used to compress the TAR archives with LZF compression algorithm
  • mysql - used to access and create the MySQL database backups; this is almost a MUST
  • pcre - used heavily by the application so this is a MUST
  • posix - on Unix like systems this is used to read file information (not required for non-Unix systems)
  • session - used to store session information between page reloads and therefore this is a MUST
  • zlib - used to compress/decompress files using the ZLib library
Additionally the following extension may be required:
  • mcrypt - used to encrypt/decrypt files using the Rijndael cipher
  • openssl - used to encrypt/decrypt files using the AES (aka Rijndael) cipher
  • zip - used to create ZIP archives
However, when launching the application for the first time it will show a Welcome page where, if some of the above extensions were missing, it will tell you. Furthermore, on the application dashboard's Support tab there is a button called Check PHP setup which does exactly the same thing.
To enable an PHP extension on Windows open the php.ini file and uncomment the line that starts with:
;extension=php_ extension-name .dll

Installing the WP MyBackup - the WordPress plugin

The installation/update process is quite simple:
  1. install manually by downloading the ZIP archive
    1. download the plugin's ZIP archive
      1. extract the archive to a temporary directory
      2. upload the wpmybackup folder to the /wp-content/plugins directory
      OR
      1. in WordPress 4.x open the Plugins -> Add New menu
      2. press the Upload Plugin button then choose the Zip archive by pressing the Browse button
      3. once selected press the Install Now button
  2. install automatically via WordPress dashboard
    1. in WordPress 4.x open the Plugins -> Add New menu
    2. search the plugin (using the search box) then click the Install Now button
Once installed just activate the WP MyBackup plugin through the Plugins menu in WordPress then continue with Configuring the application for the first time.
Note : the update process is exactly the same except that you will overwrite the existent files.

Installing the MyBackup - the standalone web application

The installation/update process is similar to one presented earlier for WordPress plugin:
  1. follow the instruction from the 1.1.1 above
  2. upload the wpmybackup to your website home directory (or somewhere where you want to have this application installed)
  3. if the location choosen above is part/subdirectory of a running web site (eg. www.acme.com) then to access the application dashboard just enter the website home address + the path to the above directory + index.php (eg. www.acme.com/relative-install-path/index.php
  4. if the location choose to install is not part of a running web site then obviously you have to create a new web server configuration in your web server configuration files/console that will point to that directory. For Apache web server read this. For Microsoft IIS Server read this. For nginx web server read this.

Configuring the application for the first time

If this is the first time you run the application it normally shows a Welcome page that basically gives you the minimal knowledge of using this application. You can later re-check that page again by going to the Support tab and clicking the link that mention "introductive guide". I am not going to repeat the same information as it would be redundant thus useless. It is suppose that this set of tutorials will give you at least as much knownledge (if not more) as that introductive guide would normally do. Please continue reading because important information is just about to come.

Defining a simple backup job

We should start by explaining the concept of a backup job . Although you may be already familiarized with this concept from other similar software it may diverge at some point because there is no standard that defines this concept that everybody follow.

That being said what is a backup job? It is just a bunch of settings that define how this job type named backup will work.

Usually it includes settings regarding :
  1. what to include/exclude in/from the backup
  2. where to store the resulting backup copy
  3. what resources to use to create the backup (like algorithms, memory, storage, timeouts, etc)
About the same concept we implement in MyBackup so creating a simple backup job supposes to cover at minimum the former steps.

III. What resources to use

  1. go to the Backup tab then :
    1. enter a representative name for your backup job either in the Backup name field or Backup prefix. The resulting archive name will be constructed using this value like this : [this-value]-YYYYMMDD-HHIISS.tar.[ext] where ext depends on the choosen compression algorithm
    2. enter a Working directory where you have read-write access and enough working space; note that the backup job will create the archive right into this folder and only later will deploy the archive to the backup target (eg. a network directory, FTP server, Dropbox, etc).
    3. if you want to be notified when the backup job finishes (or in case of errors) then enter also your email address in the E-mail notification field.

I. What to include/exclude

  1. go to the WP source (or Backup source) tab
    1. enter the location of the directory you want to backup in the Backup directory field
  2. go to the MySQL source tab then check the Enabled checkbox in case you want to backup the MySQL database too; this will allow you to access the rest of the fields within this tab

II. Where to store the result

  1. go to the Backup target tab then for each location where you want to keep a duplicate copy of the backup follow the instructions below (make sure you click the Save settings button at the bottom before moving from one target tab to another):
    1. check the Enabled checkbox in case you want to use that destination target
    2. in case of File system target enter also the path on the local network where you want to store the backup copy (can be a local directory on the web server or even a remote path on a network system)
    3. in case of FTP/FTPS target enter the Server, Port, User and Password to be used to connect the FTP/FTPS server; nonetheless enter into the Remote dir field the path on the remote server where you want to store the copy of the backup
    4. in case of SFTP/SCP target proceed similarly as in the case of FTP/FTPS (see above)
    5. in case of Dropbox and/or Google targets you should first authorize the application to access your cloud disk while uploading the backup copy there; this would normally happen one time only only; once authorized enter into the Remote folder field the path on the cloud server where you want to store the backup copy
    6. In case of WebDAV target specify the WebDAV URL as well as the authentication User and Password; nonetheless enter the Remote directory where you want to store the backup copy
    7. in case of E-mail target just check the Backup to e-mail checkbox to enable the transfer of the backup copy to your primary e-mail address

Defining a more complex backup job

Sorry, this tutorial is not yet defined πŸ™

Defining multiple backup jobs with their own settings

Sorry, this tutorial is not yet defined πŸ™

Schedule a backup job to run with WordPress Cron

WordPress comes with a pseudo Cron scheduler that allows a plugin to schedule an event to be run automatically within a predefined recurrence (hourly, twice daily, daily). We use this schedule and define two new recurrences if case there don't exists similar recurrences already defined :
  • WP MyBackup weekly
  • WP MyBackup monthly
Once you have defined the backup job you may schedule it to run with a specified reccurence (like daily). To do that:
  1. go to the Schedule tab then select the WP-Cron subtab
  2. check the Enabled checkbox then check also the Schedule by WP-Cron radio button
  3. select from selector one of the predefined schedule reccurences; their names should be suggestive enough
  4. if you want to set a prefered time when the job should be run (like 22:15 o'clock) then set also the Next run field as the next date/time when the backup job should run; otherwise the current date/time will be set
  5. click the Save settings button at the bottom
Note : this scheduler has its drawbacks that actually has nothing to do with WP MyBackup. Read more .

Schedule a backup job to run with local OS task scheduler

Sorry, this tutorial is not yet defined πŸ™

Run a backup job manually with one-click

This is probably one of the most easies thing to do on the Earth:
  1. go to the Backup tab then click the Run Backup Now button
A please wait message should be displayed during the whole backup process as well as a scrollable backup job log where the current execution steps, progress or estimated finish time are shown.
Note : you may abort the backup job at any time by pressing the Abort Job button visible on the backup job console window. It may not respond instantly so please give it a time to respond.

Run a backup job manually from the system terminal (CLI)

Sorry, this tutorial is not yet defined πŸ™

Run a backup job automatically by the job scheduler

Sorry, this tutorial is not yet defined πŸ™

Restore a full backup set

Sorry, this tutorial is not yet defined πŸ™

Restore a differential backup set

Sorry, this tutorial is not yet defined πŸ™

Restore an incremental backup set

Sorry, this tutorial is not yet defined πŸ™

Searching for a specific backup/restore job

Sorry, this tutorial is not yet defined πŸ™

Downloading the MySQL database with one-click

This is probably the next easiest thing to do on the Earth after the running a backup job with one-click :
  1. go to the MySQL source tab then click the Download .sql file
In case you want to download the database in phpMyAdmin XML format then select the respective Format , click the Save settings button at the bottom followed by clicking the Download button mentioned earlier.

Downloading a backup archive from a remote storage

Sorry, this tutorial is not yet defined πŸ™

Interpreting the application log files

As of December, 2015 MyBackup has eight different types of log files:
  1. Jobs log
  2. Full log
  3. Debug Error log
  4. Debug Trace log
  5. Curl Debug log
  6. Sql+charts Debug log
  7. Trace action log
  8. SMTP debug log

1. Jobs log

Every time a job is started (either manually or automatically) it will add an entry into this log file that looks like this:
[2015-10-10 21:16:33] Running backup JJJ (job_id: XXX)
[2015-10-10 21:20:15] Backup task ended
where `XXX` is in number that identifies the job ID. When using the free version of MyBackup this is always zero. The `JJJ` may be one of the following:
  • WP-Admin-Async: the job started manually by user
  • WP-Cron schedule: the job started automatically by WP Cron scheduler
  • CLI: the job started via CLI script
When starting a concurrent job (which is not supported) the log will contain an entry like:
[2015-11-01 03:40:38] Access denied due to concurent job (job id #0 started 21 seconds ago)

2. Full log

When running a backup/restore job it will output many useful information like the (relevant) current settings at the job starting time, the folder(s) and/or WordPress components being backed up, the archive uploaded, the status for each operation, eventually the warning or error messages if any, etc.
Example :
...
[job_id:0]
[2015-09-17 01:01:46] Job started with WP-Cron schedule interface
[2015-09-17 01:01:46] 	* OS/PHP : Linux/5.5.29
[2015-09-17 01:01:46] 	* Working directory : /tmp/
[2015-09-17 01:01:46] 	* Log directory : /tmp/logs/
[2015-09-17 01:01:46] 	* Backup mode : Full
[2015-09-17 01:01:46] 	* Toolchain : WP MyBackup (intern)
[2015-09-17 01:01:46] 	* Compression type : bzip2
[2015-09-17 01:01:47] 	* Compression level : 9
[2015-09-17 01:01:47] 	* Encryption type : none
[2015-09-17 01:01:47] 	* CPU sleep : 0ms
[2015-09-17 01:01:47] 	* PHP memory limit : 256.00 MiB
[2015-09-17 01:01:47] 	* PHP memory footprint : 55.75 MiB (~21.78 % => 78.22 % available)
[2015-09-17 01:01:47] 	* Exec time limit : 600s
[2015-09-17 01:01:47] 	* Disk free space : 162.07 GiB
[2015-09-17 01:01:47] 	* Timezone : UTC
[2015-09-17 01:01:47] 	* Verbosity : Minimal

[2015-09-17 01:01:47] Backing up the MySQL database demo tables [2015-09-17 01:01:47] - tables pattern: wp_.+ [2015-09-17 01:01:47] - Executing table maintenance for the tables wp_.+ [2015-09-17 01:01:56] - compressing mynixworld.info-20150917-010146.sql with BZIP2 filter [2015-09-17 01:02:09] - TAR volume(#1) compressed successfully (59.92 MiB @ ratio 6.01) [2015-09-17 01:02:10] - uploading securely mynixworld.info-20150917-010146.sql.tar.bz2 (9.96 MiB) to dropbox:///Apps/mynixworld.backup/ [2015-09-17 01:02:17] - file uploaded successfully (1.42 MiB/s) [2015-09-17 01:02:17] [!] Google account not linked yet. Please authenticate within the web interface then try again. [2015-09-17 01:02:17] - mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead
[2015-09-17 01:02:17] Creating the backup file list (/user/public_html/) [2015-09-17 01:02:17] - excluding directory / [2015-09-17 01:02:19] - Logging the MD5 hash value of the files into ROOT/tmp/logs/wpmybackup-backup-filter-0.log [2015-09-17 01:02:41] - 23943 file(s) scheduled to be backed up [2015-09-17 01:02:41] - 6 archive(s) scheduled to be created
[2015-09-17 01:02:41] [1/6] Backing up the source folder (WordPress Core files, multi-volume @ max 150.00 MiB/volume) [2015-09-17 01:02:41] - archive mynixworld.info-20150917-010146-wp-includes created successfully (557 files, 1 volumes) [2015-09-17 01:02:41] - compressing mynixworld.info-20150917-010146-wp-includes with BZIP2 filter [2015-09-17 01:02:43] - TAR volume(#1) compressed successfully (10.55 MiB @ ratio 3.83) [2015-09-17 01:02:44] - uploading securely mynixworld.info-20150917-010146-wp-includes.tar.bz2 (2.76 MiB) to dropbox:///Apps/mynixworld.backup/ [2015-09-17 01:02:47] - file uploaded successfully (941.19 KiB/s) [2015-09-17 01:02:47] [!] Google account not linked yet. Please authenticate within the web interface then try again. [2015-09-17 01:02:48] - mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead ... Job finished successfully. Total elapsed time 00:05:01 Average compression ratio 1.84x
Sending this report via e-mail to [your_email@domain.dom]
Do not forget to test your backups regularly. This step is as important as the backup itself. Read more here.
The log verbosity level depends on the Verbosity option which can be set in the Backup tab:Minimal, Compact or Full.
This file may contain one or many such detailed logs, depending on how many jobs have been recorded so far.

3. Debug Error log

This log contains the error messages captured by MyBackup while running the application. Ideally this log should always be empty but if it's not then it means that some unexpected errors occured while using this application.
Try to understand what the error message says and if you can not fix the problem by yourself (because it's not a PHP settings problem but rather a plug-in problem) then please report the problem such that (hopefully) it gets fixed in the next/future release.

4. Debug Trace log

This log file contains an entry for every error captured in the Debug Error log . Each entry consists in a backtrace of functions that were executed until the error occured.
This backtrace gives the developer a chance to understand what failed and where and eventually to patch the problem.

5. Curl Debug log

This log file contains a detailed entry for each HTTP/Socket call send via Curl library (which is used by default).
If for some reason or another the communicatin doesn't work as expected (eg. uploading a file, authenticating, connecting a remote server, etc) you could try to check this file regarding what was the server response when the respective request was sent. The message contained here might lighten you such that you may solve the problem without further technical assistance.

6. Sql+charts Debug log

This log file contains the SQL statements executed to store/load statistics to/from database. If may be helpfully for debugging purpose.
Note : This file does not exists on the free version of this application.

7. Trace action log

Everytime you click a tab within MyBackup dashboard or just a button (or alike), everytime some request is sent from the MyBackup to the web server, the request is captured and saved to this log file for further reference.
By reading this log cronologically one can understand what steps the user did and when. This might be helpful when debuggin an error/issue.

8. SMTP debug log

The e-mail messages sent via SMTP library are captured and stored into this log file. What is stored is only relevant information like connection settings, message size, attachment size, message sent status, etc. However, the raw e-mail message or its attachments are not stored due to disk space considerations.

Interpreting the backup job statistic's charts

Sorry, this tutorial is not yet defined πŸ™

Installing, uninstalling, enabling or disabling an Add-on

Sorry, this tutorial is not yet defined πŸ™

Troubleshooting a backup job

Sorry, this tutorial is not yet defined πŸ™

Troubleshooting a restore job

Sorry, this tutorial is not yet defined πŸ™

Troubleshooting a remote connection

Sorry, this tutorial is not yet defined πŸ™

Troubleshooting an email message

Sorry, this tutorial is not yet defined πŸ™

Troubleshooting an application error

Sorry, this tutorial is not yet defined πŸ™

Reporting an error or requesting a feature

Sorry, this tutorial is not yet defined πŸ™