Contributors: GamerZ
Donate link: http://lesterchan.net/site/donation/
Tags: database, manage, wp-dbmanager, manager, table, optimize, backup, queries, query, drop, empty, tables, table, run, repair, cron, schedule, scheduling, automatic
Requires at least: 4.0
Tested up to: 5.6
Stable tag: 2.80.5
Manages your WordPress database.
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.
- Activate
WP-DBManager
Plugin - The script will automatically create a folder called
backup-db
in 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 - Open
Folder: wp-content/backup-db
- If you are on Apache, move the
htaccess.txt
file fromFolder: wp-content/plugins/wp-dbmanager
toFolder: wp-content/backup-db/.htaccess
if it is not there already - If you are on IIS, move the
Web.config.txt
file fromFolder: wp-content/plugins/wp-dbmanager
toFolder: wp-content/backup-db/Web.config
if it is not there already - Move
index.php
file fromFolder: wp-content/plugins/wp-dbmanager
toFolder: wp-content/backup-db/index.php
if it is not there already - Go to
WP-Admin -> Database -> DB Options
to 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.
- 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
- NEW: Added Auto Repair Functionality
- NEW: Added nonce To All Forms For Added Security
- Admin - Backup DB
- Admin - Empty/Drop Tables In DB
- Admin - DB Information
- Admin - Manage DB
- Admin - Optimize DB
- Admin - DB Options
- Admin - DB Options
- Admin - Repair DB
- Admin - Run Query in DB
- Ensure that your host allows you to access mysqldump. You can try to narrow the problem by Debugging via SSH:
- In
wp-dbmanager.php
- Find
check_backup_files();
on line 246 - Add below it
echo $command;
- Go to
WP-Admin -> Database -> Backup
- Click
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
- WP-DBManager uses
mysqldump
application to generate the backup andmysql
application 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.
- Ensure that you have renamed
htaccess.txt
to.htaccess
and placed it in your backup folder (defaults towp-content/backup-db/
) - 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 toWP-Admin -> Database -> DB Options
and setHide Admin Notices
toYes
.