使用wp-cli备份wordpress数据库

时间:2017-06-22 09:52:20

标签: wordpress wp-cli

这是一个基本问题.. 我正在尝试编写一个非常简单的脚本来每小时备份我的wordpress数据库..

#!/bin/sh
#
# This script do an hourly backup of WordPress DB

# Set global parameters
WPROOT=/home/mydomain/public_html
WPBKUPS=/usr/home/mydomain/db_backups
SITEURL=`wp option get siteurl | awk -F/ '{print $3}'`
BKNAME="$WPBKUPS/`date +%Y-%m-%d.%H%M`-$SITEURL"

# change directory
#cd $WPROOT
#cd /usr/local/www/production/httpdocs/wpsite
wp db export --allow-root - | gzip -9 > $BKNAME.sql.gz

# Stop build-up of loads of older files with exec rm \o/
find "$WPBKUPS" -mtime +1 -exec rm {} \;

问题1:我应该使用--add-drop-table选项吗? 与我的代码有什么区别

问题2: 目前脚本驻留在wproot上..如何更改脚本以使脚本不在面向公众的目录中?

谢谢

1 个答案:

答案 0 :(得分:1)

问题1: --add-drop-table它会添加Add DROP TABLE statement before each CREATE TABLE statement。 恢复它时,表已经存在。

您可以在Link

找到更多相关信息

问题2: mysqldump –-user [user name] –-password=[password] [database name] > [dump file]

例如: /usr/bin/mysqldump --user="root" --password="root" "wp_db" > wp_db.sql

将此命令添加到脚本文件中,然后将其存储在 WordPress root之外。

使脚本可执行,

chmod +x /path/to/yourscript.sh

打开您的个人crontab
EDITOR=gedit crontab -e

并在其中附加以下行以每小时运行一次脚本。

0 */1 * * *  /path/to/yourscript.sh