日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

linux下利用shell脚本和mysqldump热备份和恢复mysql

發(fā)布時間:2025/4/5 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux下利用shell脚本和mysqldump热备份和恢复mysql 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

對mifeng數(shù)據(jù)庫進行每周六3:33完全熱備份,并可以完全恢復!

一、先建立備份腳本

#vi /mifengbackup/backup.sh#!bin/bash cd /mifengbackup echo "You are in backup dir" mv backup* /oldbackup echo "Old dbs are moved to oldbackup folder" File = backup-$Now.sql mysqldump -uroot -p123456 --quick --databases database-names --flush-logs --single-transaction > $File echo "Your database backup successfully completed"

上面腳本文件保存為backup.sh,并且系統(tǒng)中已經(jīng)創(chuàng)建兩個目錄/oldbackup和/mifengbackup。每次執(zhí)行backup.sh時都會先將/mifengbackup目錄下所有名稱為backup開頭的文件移到/oldbackup目錄。

對于具體備份sql如果不熟悉,可以看我的這篇文章:mysqldump使用大全

二、為上述腳本制定執(zhí)行計劃

#crontab -e 30 1 * * * /backup.sh

更多關于crontab知識,參閱:Linux定時任務Crontab命令詳解

附mysqldump參數(shù)說明:MYSQLDUMP參數(shù)詳解(轉(zhuǎn))寫得很詳細!

到了計劃任務執(zhí)行的時間,執(zhí)行好后會給我們發(fā)一封郵件,這是給我們的提示

You have new mail in /var/spool/mail/root

根據(jù)提示查看這封郵件

[root@localhost mail]# vi root X-Original-To: root Delivered-To: root@localhost.localdomain Received: by localhost.localdomain (Postfix, from userid 0)id 46BD24493CA2; Sat, 22 Dec 2018 03:33:02 -0800 (PST) From: "(Cron Daemon)" <root@localhost.localdomain> To: root@localhost.localdomain Subject: Cron <root@localhost> /backup.sh Content-Type: text/plain; charset=UTF-8 Auto-Submitted: auto-generated Precedence: bulk X-Cron-Env: <XDG_SESSION_ID=63> X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0> X-Cron-Env: <LANG=en_US.UTF-8> X-Cron-Env: <SHELL=/bin/sh> X-Cron-Env: <HOME=/root> X-Cron-Env: <PATH=/usr/bin:/bin> X-Cron-Env: <LOGNAME=root> X-Cron-Env: <USER=root> Message-Id: <20181222113302.46BD24493CA2@localhost.localdomain> Date: Sat, 22 Dec 2018 03:33:02 -0800 (PST)/bin/sh: /backup.sh: No such file or directory

主要是最后一句,是錯誤原因,提示文件路徑找不到,因為我們沒有配置環(huán)境變量,所以涉及到路徑的最好寫絕對路徑

#vi /usr/local/mifengbackup/backup.sh#!bin/bash cd /usr/local/mifengbackup echo "You are in mifengbackup dir" mv backup* /usr/local/oldbackup echo "Old dbs are moved to oldbackup folder" File = backup-$Now.sql mysqldump -h177.77.177.177 -uroot -p123456 --quick --databases mifeng --flush-logs --single-transaction > $File echo "Your database backup successfully completed"

三、恢復備份sql文件

cd /mysqlback tar zxvf extmail20170515.tar.gz mv extmail20170515.sql extmail.sql mysql -uroot -p < extmail.sql

?

總結(jié)

以上是生活随笔為你收集整理的linux下利用shell脚本和mysqldump热备份和恢复mysql的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。