環境:
1. SQL Server 2008 + MsSQL 2008 (機器在公司內部)
2.Linux(Fedora 10) + MySQL (機器在外部機房)
備份地點:
公司內部的Apple time capsule
備份方式:
因為Apple time capsule不知原FTP的功能,只能透過雲端硬碟的方式來做備份
所以我先將在外部的Linux透過FTP的方式將dump出來的.sql檔案傳到內部的SQL Server
在統一將SQL Server 的檔案用xcopy的方式放到雲端硬碟
實際操作記錄:
Linux部分:
1.首先要先透過vi編輯好Shell Script部分
[root@ec ~]# vi backup.sh
#!/bin/bash
# Program:
# Backup MySQL Datebases
# History:
# 2014/12/05
PATH=/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/home/marrble
export PATH
now=$(date +%Y-%m-%d)
mysqldump --default-character-set=utf8 -uroot --password=********** imed > /home/marrble/imed_$now.sql
mysqldump --default-character-set=utf8 -uroot --password=********** imed1 > /home/marrble/imed1_$now.sql
mysqldump --default-character-set=utf8 -uroot --password=********** imed_spa > /home/marrble/imed_spa_$now.sql
mysqldump --default-character-set=utf8 -uroot --password=********** imed_tools > /home/marrble/imed_tools_$now.sql
host='IP(111.111.111.111)'
account='FTP account(admin)'
pswd='FTP Password(admin)'
ftp -n $host << EOF
user $account $pswd
lcd /home/marrble
put imed_$now.sql
put imed1_$now.sql
put imed_spa_$now.sql
put imed_tools_$now.sql
bye
PS:這部分應該要再將檔案透過FTP傳到別台電腦時,將備份出來的.sql檔案刪除,或是設定刪除前5天資料才不會讓資料量越來越大,只是目前測試還沒成功....
2.再來透過 crontab -e 編輯排程,設定每天中午12:10分執行sh
[root@ec ~]# crontab -e
10 12 * * * /home/marrble/test.sh
參考資料:
Mysql 定期備份: http://www.lihuai.net/linux/mysql/803.html
鳥哥16、13章: http://linux.vbird.org/linux_basic/0430cron.php
http://linux.vbird.org/linux_basic/0340bashshell-scripts.php
定期刪除資料: http://my.oschina.net/u/231017/blog/186447
SQL Server 到 time capsule未完......
沒有留言:
張貼留言