Webmin在Linux(ubuntu)环境下的应用自动备份MySQL
Webmin提供对MySQL服务器的管理包括:权限管理、参数配置、数据库/表管理、备份和还原等等,这里我们要将的是如何进行自动备份的配置。
如果RHEL5是作为MySQL服务器使用的话,自动备份MySQL是一件必不可少的任务,一般的做法是手动写备份脚本,然后用corntab设置定时器。这些事情在有了webmin后,一切都变的简单很多。
1.在导航菜单中选择"MySQL Database Server",在打开的页面中选择要备份的数据库,比如"test":
2. 在出现的页面中选择"Backup Database" 按钮;
3. 在出现的页面中进行备份配置:
3.1. 在Backup to file 中输入备份文件的名称(注意:是文件名,不是目录名). 比如/root/backup/db/test.sql.gz;
3.2. 在Tables to backup 中选择要备份的表或备份所有表.(见上图).
3.3. 在Backup to file 中我们已经制定了备份文件的名称,但是如果是定时循环备份的话,旧的备份文件会被新的文件覆盖掉,为了解决这个问题,我们可以在 Other backup options 中的Command to run after backup 指定一段简单的shell脚本,告诉webmin在备份执行后执行一些操作,比如修改文件名,或移动文件等等。这里我使用的是修改文件名的方式,具体command如下:
mv /root/backup/db/test.sql.gz /root/backup/db/test`date +%Y-%m-%d-%H%M`.sql.gz
这行命令的意思是将文件名加上日期和时间,执行后的结果可能是:test2010-04-18-0000.sql.gz
3.4. 接下来是设置备份的时间,可以是一次性的备份,也可以是循环备份。我这里设定的是每天晚上0:00进行备份,所以设置结果如下:
3.5. 当一切都设置好了,可以点击Save按钮保存设置,也可以点击"Backup Now" 按钮进行备份。为了确认设置是否成功,可以在控制台执行下面的命令:
# crontab -l
注:要以管理员的身份登录;
这条命令的执行结果可能是:
0 0 * * * /etc/webmin/mysql/backup.pl test
如果你看不懂行显示结果的话,可以找点cron的资料学习一下,这里就不多说了。
到此MySQL自动备份的设置就完成了,当然,如果你是个思维严谨的开发人员,你一定会想办法先测试一下所做测设置是否是正确的,对吧? :)
3.6 顺便说一说MySQL的还原,还原自然用不着自动功能了,一般也只有在出现异常情况才需要进行还原,所以Webmin并没有"还原"的功能,但是它提供了一个叫"Execute SQL"的按钮,其实可以用它来还原数据。当然,一个系统上线后,往往需要发补丁的,我们也可以使用"Execute SQL"执行补丁脚本。所以这个功能也是很常用的,不妨试试。