咱們使用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