Linux系統如何實現MySQL每天定時備份?

2021-10-23 22:39:07 字數 2514 閱讀 8717

備份是容災的基礎,是指為防止系統出現操作失誤或系統故障導致資料丟失,而將全部或部分資料集合從應用主機的硬碟或陣列複製到其它的儲存介質的過程。而對於一些**、系統來說,資料庫就是一切,所以做好資料庫的備份是至關重要的!

光碟 磁帶 硬碟 磁碟陣列 das:直接附加儲存 nas:網路附加儲存 san:儲存區域網路 雲儲存
這裡主要以本地磁碟為儲存介質講一下計畫任務的新增使用,基本的備份指令碼,其它儲存介質只是介質的訪問方式可能不大一樣。1、檢視磁碟空間情況:既然是定時備份,就要選擇乙個空間充足的磁碟空間,避免出現因空間不足導致備份失敗,資料丟失的惡果! 儲存到當前磁碟這是最簡單,卻是最不推薦的;伺服器有多塊硬碟,最好是把備份存放到另一塊硬碟上;有條件就選擇更好更安全的儲存介質;# df -hfilesystem

2、建立備份目錄:上面我們使用命令看出/home下空間比較充足,所以可以考慮在/home儲存備份檔案;cd /homemkdir backupcd backup

3、建立備份shell指令碼:注意把以下命令中的databasename換為實際的資料庫名稱; 當然,你也可以使用其實的命名規則!vi bkdatabasename.sh

輸入/貼上以下內容:

#!/bin/bashmysqldump -u username -p password databasename > /home/backup/databasename_$(date +%y%m%d_%h%m%s).sql

對備份進行壓縮:

#!/bin/bashmysqldump -uusername -ppassword databasename | gzip > /home/backup/databasename_$(date +%y%m%d_%h%m%s).sql.gz

注意:把 username 替換為實際的使用者名稱; 把 password 替換為實際的密碼; 把 databasename 替換為實際的資料庫名;

4、新增可執行許可權:

chmod u+x bkdatabasename.sh

新增可執行許可權之後先執行一下,看看指令碼有沒有錯誤,能不能正常使用;

./bkdatabasename.sh

確認crontab是否安裝: 執行 crontab 命令如果報 command not found,就表明沒有安裝

如時沒有安裝 crontab,需要先安裝它,具體步驟請參考: centos下使用yum命令安裝計畫任務程式crontab 使用rpm命令從centos系統盤安裝計畫任務程式crontab

執行命令:

crontab -e這時就像使用vi編輯器一樣,可以對計畫任務進行編輯。 輸入以下內容並儲存:*/1 * * * * /home/backup/bkdatabasename.sh具體是什麼意思呢? 意思是每一分鐘執行一次shell指令碼「/home/backup/bkdatabasename.sh」。6、測試任務是否執行很簡單,我們就執行幾次「ls」命令,看看一分鐘過後檔案有沒有被建立就可以了!如果任務執行失敗了,可以通過以下命令檢視任務日誌:# tail -f /var/log/cron

輸出類似如下:

sep 30 14:01:01 bogon run-parts(/etc/cron.hourly)[2503]: starting 0anacronsep 30 14:01:01 bogon run-parts(/etc/cron.hourly)[2512]: finished 0anacronsep 30 15:01:01 bogon crond[3092]: (root) cmd (run-parts /etc/cron.hourly)sep 30 15:01:01 bogon run-parts(/etc/cron.hourly)[3092]: starting 0anacronsep 30 15:01:02 bogon run-parts(/etc/cron.hourly)[3101]: finished 0anacronsep 30 15:50:44 bogon crontab[3598]: (root) begin edit (root)sep 30 16:01:01 bogon crond[3705]: (root) cmd (run-parts /etc/cron.hourly)sep 30 16:01:01 bogon run-parts(/etc/cron.hourly)[3705]: starting 0anacronsep 30 16:01:01 bogon run-parts(/etc/cron.hourly)[3714]: finished 0anacronsep 30 16:15:29 bogon crontab[3598]: (root) end edit (root)

——end——

Windows系統下如何解除安裝乾淨mysql

一 在控制面板中解除安裝mysql軟體 二 解除安裝過後刪除c program files x86 mysql該目錄下剩餘了所有檔案,把mysql資料夾也刪了 三 windows r執行 regedit 檔案,開啟登錄檔 六 刪除c盤下的c programdata mysql 所有檔案,如果刪除不了...

dns mysql DNSlog實現Mysql注入

step1 通過dnslog盲注需要用到load file 函式。show variables like secure 檢視load file 可以讀取的磁碟。1 當secure file priv為空,就可以讀取磁碟的目錄。2 當secure file priv為g 就可以讀取g盤的檔案。3 當s...

mysql windows系統安裝mysql資料庫

解決方法 1 環境變數path新增完成 例如 c program files mysql 5.7.13 winx64 bin 在my.ini ini檔案是window裡面的配置檔案,裡面各種預設的資料。中寫入如下內容。1 mysql 2 設定mysql客戶端預設字符集 3 default chara...