本篇文章給大家帶來的內容是關於linux如何?定時備份mysql資料庫(代碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所協助。
1、查看磁碟空間情況:
[root@localhost backup]# df -h檔案系統 容量 已用 可用 已用% 掛載點/dev/mapper/centos-root 17G 2.7G 15G 16% /devtmpfs 476M 0 476M 0% /devtmpfs 488M 0 488M 0% /dev/shmtmpfs 488M 7.7M 480M 2% /runtmpfs 488M 0 488M 0% /sys/fs/cgroup/dev/sda1 1014M 130M 885M 13% /boottmpfs 98M 0 98M 0% /run/user/0[root@localhost backup]#
選擇合適磁碟存放備份檔案
2、建立備份目錄:
cd /homemkdir backupcd backup
3、建立備份Shell指令碼:
在建立的目錄下建立備份指令碼(vi bkDatabaseName.sh)
#!/bin/bashmysqldump -uroot -proot rtak > /data/backup/rtak_$(date +%Y%m%d_%H%M%S).sqlmysqldump -uroot -proot rtak | gzip > /data/backup/rtak_$(date +%Y%m%d_%H%M%S).sql.gz
註:
bkDatabaseName.sh 替換成有意思的名稱
sql備份與gz備份可以二選一,也可全備份
使用者名稱密碼需要替換
4、添加可執行許可權:
chmod u+x bkDatabaseName.sh
測試檔案是否可正常執行(./bkDatabaseName.sh)
註:(1)如果報錯 mysqldump: 未找到命令,執行
ln -fs /usr/local/mysql/bin/mysqldump /usr/bin (/usr/local/mysql 路徑為mysql安裝路徑)
(2)如果有警告(Warning: Using a password on the command line interface can be insecure.) 可以忽略。
(3)查看備份sql檔案是否正常,能否正常匯入資料庫
5、添加計劃任務
確認crontab是否安裝:
執行 crontab 命令如果報 command not found,就表明沒有安裝
執行命令:
crontab -e
輸入以下內容並儲存:
*/* * 1 * * /data/backup/bkDatabaseName.sh
/* * 1 * * / 幾個* 分別代表 分鐘 小時 日期 月 星期幾 執行備份操作
例如:每分鐘執行備份 /1 * * * * / (已測試)
每天淩晨3點執行備份/00 3 * * * / (未測試)
6、停止備份操作
在不需要定時備份的時候,執行該操作,正常流程到第五步就完成了 ~
crontab -r
註:及時清理已到期很久的sql備份,防止磁碟佔滿