对于站长来说,数据库备份必不可少。备份就像买保险。平时你没什么感觉,但一旦出事,绝对会是你的救命稻草。编写了一个mysql数据库备份脚本,可以每天定时备份数据库,清理过期备份文件,备份日志等功能。
数据库里的数据基本上每天都在变化,所以数据一般一天备份一次。将使用两个工具,corntab和mysqldump。Corntab负责定期执行任务,mysqldump负责将mysql数据备份到文件中。接下来我们在香港的vps主机上做一个演示。
基于mysqldump #的数据库备份脚本!/bin/bashnumber=30#已保存备份的数量backup _ dir=/root/MySQL backup # backup保存路径DD=` date % Y % M % d % H % M % s `# date format tool=MySQL dump username=root # username Password=123456 # Password Database _ name=sample #要备份的数据库名称$ tool-u $ usernamedefault-character-set=utf8-p $ Password $ Database _ name $ backup _ dir/$ Database _ name-$ DD-utf8 . dump #编写并创建备份日志dump' $ backup _ dir/log.txt #找出备份Delfile=` ls-l-CRT $ backup _ dir/*。转储| awk“{ print $ 9 }”| head-1 `。判断当前备份量是否大于$ NUMBER count=` ls-l-CRT $ backup _ dir/*。dump | awk“{ print $ 9 }”| WC-l ` if[$ count-gt $ NUMBER]therm $ delfile echo ' delete $ delfile ' $ backup _ dir/log。
上面的脚本可以在指定的日期备份数据库文件,超过某个日期的备份文件会被自动删除。还附带每日备份日志。需要根据自身情况配置mysql用户名、密码、数据库名称、备份文件保存路径、备份文件数量。然后将脚本保存为/MySQL _ bakup.sh之类的文件。
通过crontab实现脚本定期执行
比如每天晚上10点自动备份数据库,其中/mysql_bakup.sh是mysql备份脚本。
执行corntab -e并添加以下命令。
0 22 * * * bash /mysql_bakup.sh
Mysql数据库恢复步骤
1进入数据库mysql -u root -p2创建数据库create db _ name3.恢复数据库,其中mysql_bak.sql是备份文件源/mysql_bak.sql
更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码代理官网:www.chenqinet.cn。