BackupBuddy: ImportBuddy

From iThemes Codex
Revision as of 09:15, 11 October 2012 by Dustin (talk | contribs)
Jump to: navigation, search

Getting Started

Getting the ImportBuddy tool

The ImportBuddy tool can be downloaded in BackupBuddy.

  1. Navigate to the `Backup & Restore` page.
  2. Click on the `ImportBuddy` link or `Restore / Migrate` button depending on your version.
    • Alternatively you may click the `Send` link beneath the `Restore / Migrate` button to directly send the tool to a remote destination.
  3. Save the script to your computer. (You will next upload this script to your destination server to begin using it)

Uploading ImportBuddy to your destination server

  • Decide on the FTP directory that you would like to migrate or restore the backup to (using an empty directory is best) that corresponds to the web URL you want your destination site to be at.
    • For example, if you want your new site's URL to be "" then your server directory MIGHT be something like this "/usr/skyler/public_html/mybuddy/"; this is the directory you will then put importbuddy.php into. The directory structure varies host to host but often follows a similar format.
  • Upload importbuddy.php and the backup zip file (don't rename the zip file!) to that FTP directory that corresponds to the URL you want.
  • Navigate to the importbuddy.php file in your web browser after it has been uploaded.
    • Example:
  • Follow the directions provided for each ImportBuddy step.
  • If you encounter problems note the logging information displayed on the problem step when contacting support.

Log In - Password Authentication

This step asks for the password associated with the importbuddy.php file. ImportBuddy requires this to protect unauthorized access to your site and backup files before you have finished restoring. This password was previously set by you (or someone) on BackupBuddy's Settings page.

Typical Usage

  • Enter your password.
  • Submit the form to continue. (Click the button to submit / continue to the next step)

Misc Notes:

  • The password is encoded inside your importbuddy.php file when it is made, so:
    • If you share this importbuddy.php file to another for usage with a backup file you will need to provide the corresponding password.
    • If you change the password will need to download a new copy of importbuddy.php; changing the password will NOT change it in existing importbuddy.php files.

Step 1

On this step a listing of backup files that were found in the same directory as the importbuddy.php script are listed for your selection to restore / migrate. If you have not already uploaded your backup file along with the importbuddy.php file an upload feature is available for convenience. However, FTP is the best way to upload your backup archives (.zip files), especially for larger files..

Typical Usage

  • Select the backup you want to restore or migrate to this destination.
  • Select any optional advanced options if needed or directed by technical support.
  • Submit the form to continue.

Advanced Troubleshooting Options

ImportBuddy automatically accounts for many server configurations and troubleshooting settings. However, when ImportBuddy cannot automatically account for some difficulty or cannot automatically assume to do so safely, you have the option to control server options and features which can aid with working around server problems or troubleshooting possible issues.


  • Skip zip file extraction.
    • If enabled then Step 2 of ImportBuddy will skip unzipping / extracting your backup ZIP file. You will need to manually unzip the file somehow, such as on your local system and then uploading all files, or with a server-side tool such as within your host's control panel file manager (if available).
  • Wipe all database tables. - Use caution.
    • This features wipes (erases / deletes) ALL tables within the database you will later select. Use extreme caution with this feature as it could release in permanent loss of data / sites / content in your database if used improperly. This is typically used to clear out a database and start fresh for this restored site. - Use caution.
  • Wipe only database tables matching prefix.
    • This feature is like the above EXCEPT it only erases tables with the same prefix you enter. Ie if you enter wp_ only tables starting with wp_ will be erased. Use caution. This is typically used to overwrite a single existing site.
  • Skip import of database.
    • Useful if you only want to restore files and not import anything into your current database. Note: Your database will still be migrated unless disabled below.
  • Skip migration of database.
    • Useful if you only want to migrate the data in the already imported database (ie: You already imported a database or have an existing one and just need things like URLs and paths migrated.) Note: Your database will still be imported unless disabled above.
  • Error Logging to importbuddy.txt
  • Ignore SQL errors & hide them. Rarely used option for hiding error messages. This can be used if your server is reporting incorrect errors/warnings caused by misconfiguration and it's preventing you from continuing the restore.
  • Skip migration of .htaccess file.
    • Rarely used for technical purposes only.
  • Force medium speed compatibility mode (ZipArchive).
    • Bypass attempting to use command line zip. Rarely needed; troubleshooting.
  • Force slow speed compatibility mode (PCLZip).
    • Bypass both high speed mode and medium speed mode, falling back all the way to PCLZip (slow speed). Rarely needed; troubleshooting.
  • Show detailed PHP warnings.
  • PHP Maximum Execution Time
    • Setting this a little lower can help force importbuddy to chunk the importing and migration of the database into multiple steps if large

Step 2

The file extraction process occurs during this step. ImportBuddy attempts to unzip / extract your backup ZIP archive (.zip file) into the same directory as the importbuddy.php script.

ImportBuddy attempts to use the following techniques to unzip on your server:

  • Command line zip on both Linux and Windows systems (if zip.exe is provided and properly granted security access to run). (Very fast and reliable) - BEST
  • PHP's ZipArchive library. (decent speed; reliable) - MEDIUM LEVEL
  • PCLZip (extracts the zip file using a PHP script; very low performance; relies on PHP memory limits which are commonly low) - WORST CASE

If you are having difficulties getting past this step it is often simplest to just manually unzip your site locally on your computer and upload the files to the destination directory by FTP (or using cpanel to unzip) and on Step 1 of ImportBuddy, select the 'Advanced troubleshooting option' to `Skip file extraction`. See the frequently seen support questions page if you want to troubleshoot why the unzip is failing.

Step 3

This step is used to set the URL and database connection information. The information shown in parentheses is what importbuddy sees the values where previously, useful for a restore when most if not all of the information will be the same.

  • WordPress Address
    • This field will be pre-set using the information for the current directory the user is restoring/migrating to.
  • MySQL Server
    • This is the address to the mySQL server where your database will be stored. 99% of the time this is localhost. The location of your mySQL server will be provided to you by your host if it differs.
  • Database Name
    • This is the name of the database you want to import your blog into. The database user must have permissions to be able to access this database. If you are migrating this blog to a new host you will need to create this database (ie using CPanel or phpmyadmin) and create a mysql database user with permissions.
  • Database User
    • This is the database user account that has permission to access the database name in the input above. This user must be given permission to this database for the import to work.
  • Database Pass
    • This is the password for the database user.
  • Database Prefix
    • This is the prefix given to all tables in the database. If you are cloning the site on the same server AND the same database name then you will want to change this or else the imported database will overwrite the existing tables.
    • The most common prefix is wp_ which is fine to use but if you want to use something else that is fine.

After entering the database information there is a button labelled "test database settings" that will test the validity of that connection information.

Step 4

The database information is imported straight into the database.

Step 5

Importbuddy looks through the database and updates any URLs, paths, settings, etc. The wp-config.php information is set and the links are changed during this step.

  • Use the link of the site provided to verify that the site is fully migrated and complete before continuing to step 6.
  • Can choose which of the import files get deleted in next step if desired. By default is all of them.

Step 6

Cleanup step. This step attempts to delete

  • backup zip archive
  • importbuddy.php
  • temporary import files (db_1.sql, backupbuddy_dat.php, etc.)
  • importbuddy.txt log file