如何编写cron任务备份MySQL数据库?

-2 投票
1 回答
1418 浏览
提问于 2025-04-16 17:31

更新:正如我所说的,我不懂Perl或Python。请不要给我例子,因为我根本不理解!

我看过这里的其他帖子,但没有找到真正的答案。我使用的是Go Daddy,想要每天备份我的MySQL数据库,如果可能的话,希望文件夹里最多只保留7个备份。

文件夹:_db_backups
数据库名称:ccadatabase

Go Daddy说:

你的共享主机账户支持以下语言和对应的解释器:

Perl: #!/usr/bin/perl

Python 2.2: #!/usr/bin/python2.2

Python 2.3: #!/usr/bin/python2.3

Python 2.4: #!/usr/bin/python2.4

Ruby: #!/usr/local/bin/ruby

Bash: #!/bin/bash

安装的PHP 4和PHP 5版本不支持在PHP文件中指定解释器。如果想通过Cron运行PHP脚本,必须手动指定解释器。例如:

PHP 4: /web/cgi-bin/php "$HOME/html/test.php"

PHP 5: /web/cgi-bin/php5 "$HOME/html/test.php5"

有没有人能帮我写一个简单的脚本来自动化这个过程?那就太好了!我不懂Perl或Python,所以如果你能解释一下你的代码,我会非常感激。谢谢!

1 个回答

2

这是我使用的内容

#!/bin/bash  
DATE_NOW=$(date +%Y%m%d)
BACKUP_DIR=/Users/nico/${DATE_NOW}

mkdir -p ${BACKUP_DIR}

echo "Dumping data ..."
mysqldump -ume -hlocalhost -ppass db > ${BACKUP_DIR}/${DATE_NOW}-mybackup.sql                                                                                                                      

注意:你需要把mysqldump里的用户名、密码、数据库等信息换成你自己的。

撰写回答