Allows you to optimize database, repair database, backup database, restore database, delete backup database , drop/empty tables and run selected queries. Supports automatic scheduling of backing up, optimizing and repairing of database.
- The script will automatically create a folder called
backup-dbin the wp-content folder if that folder is writable. If it is not created, please create the folder and ensure that the folder is writable
- If you are on Apache, move the
Folder: wp-content/backup-db/.htaccessif it is not there already
- If you are on IIS, move the
Folder: wp-content/backup-db/Web.configif it is not there already
Folder: wp-content/backup-db/index.phpif it is not there already
- Go to
WP-Admin -> Database -> DB Optionsto configure the database options
- I spent most of my free time creating, updating, maintaining and supporting these plugins, if you really love my plugins and could spare me a couple of bucks, I will really appreciate it. If not feel free to use it without any obligations.
- Note that this plugin passes your datababase password via –password in the command line of mysqldump. This is convenient but as a trade off, it is insecure.
- On some systems, your password becomes visible to system status programs such as ps that may be invoked by other users to display command lines. MySQL clients typically overwrite the command-line password argument with zeros during their initialization sequence. However, there is still a brief interval during which the value is visible. Also, on some systems this overwriting strategy is ineffective and the password remains visible to ps. Source: End-User Guidelines for Password Security
- If this is a concern to you, I recommend another database backup plugin called WP-DB-Backup
- To know about the difference between WP-DBManager and WP-DB-backup, checkout What is the difference between WP-DBManager and WP-DB-Backup? in the FAQ section.
My database is not backed up / My backup file is 0Kb
- Ensure that your host allows you to access mysqldump. You can try to narrow the problem by Debugging via SSH:
check_backup_files();on line 246
- Add below it
- Go to
WP-Admin -> Database -> Backup
- It should print some debugging statements
- Copy that line than run it in SSH
- If you need help on SSH contact your host or google for more info
What is the difference between WP-DBManager and WP-DB-Backup?
- WP-DBManager uses
mysqldumpapplication to generate the backup and
mysqlapplication to restore them via shell.
- WP-DB-Backup uses PHP to generate the backup. In some cases WP-DB-Backup will work better for you because it requires less permissions. Not all host allows you to access mysqldump/mysql directly via shell.
- WP-DBManager allows you to have automatic optimizing and repairing of database on top of backing up of database.
- WP-DBManager uses
Why do I get the message «Warning: Your backup folder MIGHT be visible to the public!»?
- Ensure that you have renamed
.htaccessand placed it in your backup folder (defaults to
- If you are 100% sure you have did that and have verfied that the folder no longer is accessible to the public by visiting the URL
http://yousite.com/wp-content/backup-db/, you can safely disable the notice by going to
WP-Admin -> Database -> DB Optionsand set
Hide Admin Noticesto
- Ensure that you have renamed
Contributors & Developers
“WP-DBManager” is open source software. The following people have contributed to this plugin.Contributors
“WP-DBManager” has been translated into 10 locales. Thank you to the translators for their contributions.
Translate “WP-DBManager” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
- FIXED: Handle folder permissions properly
- FIXED: Miss out database-backup.php.
- FIXED: Changed ‘edit_files’ capability to ‘install_plugins’ instead.
- FIXED: Remove ‘manage_database’ and use ‘edit_files’ to check for capability instead.
- FIXED: Changed utf8 to utf8mb4 for backing up
- FIXED: Clear WP-DBManager cron jobs on uninstall
- FIXED: Poly fill array_key_first() for PHP < 7.3
- FIXED: Newer backup is being replaced instead of older backup
- FIXED: 1970 date issues.
- FIXED: Sorting order of backup files.
- NEW: Prefix MD5 checksum to the database backup file to prevent user from guessing the filename.
- FIXED: Arbitrary file delete bug by sanitizing filename. Props RIPS Technologies.
- FIXED: Added default utf8 charset
- FIXED: Proper check for disabled functions
- NEW: Bump WordPress 4.7
- FIXED: Undefined index: repair and repair_period
- FIXED: escapeshellcmd on Windows. Props Gregory Karpinsky.
- FIXED: Move wp_mkdir_p() up before if check. Props Scott Allen.
- FIXED: Blank screen downloading backup
- FIXED: Remove MySQL Version check to display tables stats
- NEW: Add wp_dbmanager_before_escapeshellcmd action just before escapeshellcmd()
- FIXED: Missing / for Windows
- FIXED: When activating the plugin, copy index.php to the backup folder
- FIXED: If you are on Apache, .htaccess will be copied to the backup folder, if you are on IIS, Web.config will be copied to the backup folder
- FIXED: When choosing 1 Month(s) for Backup/Optimize/Repair, the next date calculation is wrong
- FIXED: escapeshellarg() already escape $, no need to double escape it
- FIXED: Unable to backup/restore database if user database password has certain special characters in them
- FIXED: Use escapeshellcmd() to escape shell commands. Props Larry W. Cashdollari.
- FIXED: Do not allow LOAD_FILE to be run. Props Larry W. Cashdollari.
- FIXED: Uses dbmanager_is_valid_path() to check for mysql and mysqldump path. Fixes arbitrary command injection using backup path. Props Larry W. Cashdollari.
- FIXED: Uses realpath() to check for backup path. Fixes arbitrary command injection using backup path. Props Larry W. Cashdollari.
- NEW: Bump to 4.0
- New: Uses WordPress 3.9 Dashicons
- NEW: Allow you to hide admin notices in the DB Options page
- NEW: Allow Multisite Network Activate
- NEW: Uses WordPress uninstall.php file to uninstall the plugin
- NEW: Uses wp_mail() to send email instead of PHP mail()
- NEW: New From E-mail, From Name & Subject template
- FIXED: Issues with email from field if site title contains , (comma)
- FIXED: Notices
- FIXED: Set default character set to UTF-8. Props Karsonito
- FIXED: Use intval() instead of is_int() when checking for port number. Props Webby Scots
Version 2.63 (03-05-2011)
- NEW: Added Auto Repair Functionality
- NEW: Added nonce To All Forms For Added Security