本文目錄一覽:
linux下如何自動備份mysql數據庫?
1.
寫個自動備份的腳本autobackup.sh,內容如下
#!/bin/bash
mysqldump
-p
databasename
mydata.sql
2.
更改其為可執行文件
chmod
+x
autobackup.sh
3.
通過crontab讓系統自動運行這個腳本就好了,如crontab
-e
*
*
*
/路徑到/autobackup.sh
第一個0表示分鐘,第二個0表示0小時也就是零辰第三個*表示每天,第四個*表示每月,第五個*表示每周
linux下mysql如何實現每天自動備份
首先建立一個備份文件夾:mkdir
mysql_data_bak在建立一個腳本文件:touch
autobackupmysql.sh打開文件vi
autobackupmysql.sh在腳本中加入如下內容:filename=`date
+%Y%m%d`/usr/bin/mysqldump
-uroot
-proot
boss
/home/mysql_data_bak/$filename.sql檢查有沒安裝crond,如果沒有,先安裝yum
-y
install
vixie-cronyum
-y
install
crontabs啟動服務
:service
crond
start在CentOS系統中加入開機自動啟動:
chkconfig
–level
345
crond
oncrontab
-e加入內容:00
03
*
*
*
source
/root/autobackupmysql.sh
每天凌晨3點運行此文件,對數據庫進行備份
service
crond
restart到此linux下mysql實現沒天自動備份完成。
linux下mysql數據庫備份工具有哪些
1. mysqldump: 最早,也是最成熟的邏輯備份工具,是 MySQL 原生的用來備份整個數據庫實例、單個數據庫、單張表的邏輯備份工具, 上手簡單,學習成本幾乎為 0。備份簡單,恢復也簡單。
比如導出單個數據庫 ytt: mysqldump ytt /tmp/ytt.sql;
恢復也非常簡單:mysql /tmp/ytt.sql
缺點是備份速度慢。在整個備份過程中,是單線程運行;備份出來的數據集要恢復的話同樣也是單線程運行,恢復速度也慢。除非對同一時刻的所有表單獨備份出來,自己寫額外腳本進行多線程恢復。
2. mysqlpump:MySQL 5.7 GA 後推出的 mysqldump工具的增強版。可以對同一個數據集多個線程並發備份,備份速度很快。
其他缺點和 mysqldump 一樣。
3. MySQL Shell UTIL 對象附帶的備份工具:隨 MySQL 8.0.21 最新版本捆綁發佈,自帶多線程備份以及多線程恢復功能, 可以直接替代 mysqldump/mysqlpump。
dump_instance/dumpInstance 用來多線程備份 MySQL 整個單機實例
dump_schemas/dumpSchemas 用來多線程備份 MySQL 單個數據庫
load_dump/loadDump 用來多線程恢復之前兩個工具導出的數據集文件
MySQL Shell UTIL 備份恢復工具具備如下特性:
1. 壓縮導出(默認壓縮算法 zstd)
2. 數據集分塊導出,每塊 32M
3. 默認導出存儲過程、存儲函數、觸發器、事件、用戶、視圖
4. 默認 4 個線程導出
5. 默認進度展示
6. 默認字符集 utf8mb4
7. 默認開啟一致性導出
8. 默認表,視圖等定義導出為 SQL 語句
9. 默認數據導出為 TSV 格式數據
如何在linux下實現mysql數據庫每天自動備份
方法/步驟
1. 在根目錄下新建定時備份存儲文件夾mkdir /mysql_backup
2.新建備份的腳本vim /root/mysql_backup.sh
3.在mysql_backup.sh中輸入內容:
backupdir=/mysqlbackup time=` date +%Y%m%d%H`mysqldump -uroot -proot abc | gzip $backupdir/abc$time.sql.gzfind $backupdir -name 「abc*.sql.gz” -type f -mtime +5 -exec rm {} \; /dev/null 21
——————————————————————————————
說明:
backupdir = 備份文件存儲文件夾time = 獲取當前時間 年月日時(2014111417)2014年11月14日17點mysqldump 備份數據庫指令 abc要備份的數據庫find $backupdir -name 「abc*.sql.gz” -type f -mtime +5 -exec rm {} \; /dev/null 21 刪除5天前的備份文件
3 :wq 文件保存成功後
先按一下鍵盤上的 ” esc ” 然後輸入 」 :wq 「
執行一下腳本,看根目錄下的mysql_backup文件夾是否有.sql.gz後綴名的文件
./mysql_backup.sh
寫入每天的定時任務 修改 /etc/crontabvi /etc/crontab
按鍵盤上的”i”,開始輸入
02 4 * * * root /root/mysql_backup.sh
表示每天4點2分執行備份任務
先按一下鍵盤上的 ” esc ” 然後輸入 」 :wq 「 表示保存
重新啟動crond
service crond restart 或 /etc/rc.d/init.d/crond restart
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/198060.html