咱们使用cent os7因此使用yum命令进行安装mysql
yum install mysql
使用mysqldump命令能够远程导出sql格式的备份文件sql
命令格式:shell
mysqldump -h[地址] -P[端口] -u[用户名] -p[密码] [数据库名] >[存储路径]
例子: 数据库
mysqldump -hrm-2ez4k2hwt0pa8ie96.mysql.rds.aliyuncs.com -P3306 -uprod_root -p888888 mfqy-production >./pmall_prod_v5.3.0.sql
直接备份下来的sql文件占用空间较大,咱们能够将其进行压缩节省空间bash
tar cvzf pmall_prod_v5.3.0.tar.gz pmall_prod_v5.3.0.sql rm -rf pmall_prod_v5.3.0.sql
咱们能够编写一个shell脚原本执行备份与压缩工做spa
#!/bin/bash Date=`date +%Y%m%d%H%M%S` cd /home/maintenance/Backup /usr/bin/mysqldump -hrm-2ze4k2hch0pa4ie75.mysql.rds.aliyuncs.com -P3306 -uprod_root -pMfqy_root_87654321 mfqy-production>./pmall_prod_$Date.sql
为脚本增长可执行权限code
chmod a+x backup.sh
咱们能够编写一个shell脚原本执行删除工做crontab
/usr/bin/find /home/maintenance/Backup -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;
删除/home/maintenance/Backup目录下30天以前建立的以tar.gz做为扩展名的文件。io
{} 花括号表明前面find查找出来的文件名扩展
为脚本增长可执行权限
chmod a+x delete.sh
使用crontab -e命令进入计时器编辑页面
crontab -e
crontab文件的含义:用户所创建的crontab文件中,每一行都表明一项任务,每行的每一个字段表明一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式以下:
minute hour day month week command 顺序:分 时 日 月 周 命令
添加执行备份脚本计时器
0 0 * * * /home/maintenance/Backup/backup.sh
天天0时0分执行备份脚本
添加执行删除脚本计时器
0 8 * * * /home/maintenance/Backup/delete.sh
天天8时0分执行删除脚本
查看计时器列表
crontab -l
tar xvzf pmall_prod_v5.3.0.tar.gz rm -rf pmall_prod_v5.3.0.tar.gz
将sql文件备份还原到数据库
命令格式:
mysql -h[地址] -P[端口] -u[用户名] -p[密码] [数据库名] <[备份文件]
例子:
mysql -hrdso30006c33s57oufvf.mysql.rds.aliyuncs.com -P3306 -uadm -p888888 pltx-production <./pmall_prod_v5.3.0.sql