本篇內(nèi)容介紹了“MySQL怎么備份到Windows共享路徑中”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!
創(chuàng)新互聯(lián)公司專注于長海網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供長海營銷型網(wǎng)站建設,長海網(wǎng)站制作、長海網(wǎng)頁設計、長海網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)公司服務,打造長海網(wǎng)絡公司原創(chuàng)品牌,更為您提供長海網(wǎng)站排名全網(wǎng)營銷落地服務。
下面簡單的實現(xiàn)了一下如何將MySQL的數(shù)據(jù)庫備份到一個遠程Windows服務器當中。
首先需要在Windows(IP:192.168.1.5)上面創(chuàng)建一個共享路徑:在D盤下面創(chuàng)建一個目錄名為HugoShare,在HugoShare目錄的屬性中點擊Share選項卡,在下拉框中找到Everyone,然后點擊Add添加到共享用戶組中,在權(quán)限中選擇Read/Write,再Share一下。在Securiy選項卡中找到Everyone這個用戶,看看他對這個目錄的權(quán)限是不是Full,如果不是編輯一下,為了方便起見,先設置成Full。這個時候,你的\\192.168.1.5\HugoShare應該是可以被任何人訪問的。
在MySQL服務端中測試一下上面的共享目錄是否能掛載
首先創(chuàng)建一個目錄,mkdir /mnt/HugoShare/,然后安裝cifs工具,apt-get install cifs-utils 安裝完成輸入下面命令mount.cifs //192.168.1.5/HugoShare /mnt/HugoShare -o user="hugo",pass="woaini"。如果掛載成功會返回0,echo $?就會顯示0。也可以mount -l | grep "/mnt/HugoShare"看一下是不是真的掛載上了。
貌似準備工作已經(jīng)完成,接下來就寫一個腳本
#!/bin/bash
# mysql數(shù)據(jù)庫備份腳本
# 數(shù)據(jù)庫配置
USERNAME=root
PASSWORD="woaini"
DATABASE="hugo"
HOSTNAME="localhost"
# 備份選項配置
BACKUP_SERVER="http://192.168.1.5/HugoShare/"
BACKUP_SERVER_OPTIONS="user=zed,pass=woaini"
BACKUP_DIR=/mnt/HugoShare
LOGFILE=$BACKUP_DIR/backup.log
DATE=`date '+%Y%m%d-%H%M'`
DUMPFILE=$DATE.bak.sql
ARCHIVE=$DATE.bak.sql.tgz
OPTIONS="-h$HOSTNAME -u$USERNAME -p$PASSWORD $DATABASE"
# 檢查備份目錄是否存在
if [ ! -d $BACKUP_DIR ] ;
then
mkdir -p $BACKUP_DIR
fi
# 檢查windows目錄是否掛載
mount -l | grep $BACKUP_DIR > /dev/null 2>&1
if [ $? == 1 ]
then
mount.cifs $BACKUP_SERVER $BACKUP_DIR -o $BACKUP_SERVER_OPTIONS
echo " ==================" >> $LOGFILE
echo "Windows netshare mounted:$BACKUP_SERVER" >> $LOGFILE
fi
# 日志功能
echo " " >> $LOGFILE
echo "====================" >> $LOGFILE
echo "BACKUP DATE:" $(date +"%y-%m-%d %H:%M:%S") >> $LOGFILE
echo "==================== " >> $LOGFILE
# 備份并歸檔
cd $BACKUP_DIR
mysqldump $OPTIONS > $DUMPFILE
if [ $? == 0 ] ;
then
tar czvf $ARCHIVE $DUMPFILE >> $LOGFILE 2>&1
echo "[$ARCHIVE] backup successful!" >> $LOGFILE
rm -f $DUMPFILE
else
echo "Backup failed " >> $LOGFILE
fi
腳本添加執(zhí)行權(quán)限chmod 777 mysql_dump.sh 看看效果。
可以改進的地方:
接下來的工作就是設置Windows共享目錄的安全,指定用戶訪問。其次就是修改一下腳本,指定備份的整個數(shù)據(jù)庫還是備份單個表,可以在crond中添加計劃任務,并且設置日志的輪詢工作。更好的方式是設置日志轉(zhuǎn)發(fā)郵件的功能。
“Mysql怎么備份到Windows共享路徑中”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!