如何在专用服务器上设置 crontab 以转储 WordPress MySQL 数据库并将其通过电子邮件发送到 Gmail 帐户

如何在专用服务器上设置 crontab 以转储 WordPress MySQL 数据库并将其通过电子邮件发送到 Gmail 帐户

我知道我可以在我的专用服务器上为我的 WordPress 数据库进行 mysql 转储。但我想自动执行此操作,并希望将转储通过电子邮件发送到我的 Gmail 帐户。这可能吗?

答案1

您可以使用 wp-db-backup 插件将数据库备份到 gmail 或任何其他电子邮件地址。

http://wordpress.org/extend/plugins/wp-db-backup/

更新:

本教程介绍如何备份和通过电子邮件发送 WordPress 数据库。

http://www.tamba2.org.uk/wordpress/cron/

摘自脚本

#Set the 4 variables
#Replace what is AFTER the = with the information from your wp-config.php file
#That's your information on the right okay ?

DBNAME=DB_NAME

DBPASS=DB_PASSWORD

DBUSER=DB_USER

#Keep the " around your address
EMAIL="you@your_email.com"

#Change the 'wp_' to match your table_prefix in the database
mysqldump --opt -u $DBUSER -p$DBPASS $DBNAME > backup.sql
gzip backup.sql
DATE=`date +%Y%m%d` ; mv backup.sql.gz $DBNAME-backup-$DATE.sql.gz
echo 'Blog Name: Your mySQL Backup is attached' | mutt -a $DBNAME-backup-$DATE.sql.gz $EMAIL -s "MySQL Backup"
rm $DBNAME-backup-$DATE.sql.gz

快速教程:如何设置 crontab

http://adminschoice.com/crontab-quick-reference

答案2

有两种设置方法cron

  1. 如果您正在运行某种 Web 界面(如 cPanel),那么几乎肯定有一种简单的方法可以从那里设置 cron 作业。查找名为“cron 作业”或“计划任务”之类的东西。它们会询问您希望何时(例如每周日凌晨 4:00)运行以及将结果通过电子邮件发送到哪里。

  2. 如果您有服务器的 shell 访问权限,则可以crontab手动编辑。这是一个教程关于如何执行此操作,有很多方法。您可以直接通过键入 来编辑它crontab -e,使用 来查看它crontab -l,或者将 crontab 保存到文本文件并通过键入 来加载它crontab -r the-text-file

在您的情况下,对于选项 (2),您可以输入以下两行,以便每周日凌晨 4:00 更新并通过电子邮件向您发送结果。

0 4 * * 0 command-you-want-to-use
[email protected]

你可能想要使用的命令是

mysqldump --user=username --password=password databasename

这会将数据库转储到 stdout,crontab 会将其通过电子邮件发送给您。转储将包含在电子邮件的消息中。您可以通过在 crontab 中包含一行来配置将其发送到哪封电子邮件,例如

如果您希望将数据库保存到服务器上的文件中,而不是通过电子邮件发送给自己,则可以使用该命令

mysqldump --user=username --password=password databasename > somefilename

相关内容