1.利用mysqldump命令進行手動備份和手動恢復
#> mysqldump -uroot -proot -p3306 --default-character-set=utf8 --opt test > /tmp/test_`date +%y%m%d-%h%m`.sql;
2.利用直接在mysql終端進行匯入
mysql>source /tmp/test_20160927-1408.sql;
3.實現linux的定時進行備份
#> vi /etc/crontab
30 2 * * * root mysqldump -uroot -proot --all-databases |gzip > /mnt/data_bak/database_`date +%y%m%d-%h%m`.sql.gz
附:前面5個引數分別表示分鐘、小時、日、月、年,星號表示任意。`date +%y%m%d-%h%m` 得到當前日期的yyyymmdd-m格式
4.利用linux系統定時器來執行備份指令碼執行
4.1建立需要備份的目錄資料夾
#> mkdir -p /backup/mysql;
4.2建立需要執行的shell指令碼
#>vi back_mysql_test.sh
echo "you are in backup/mysql dir"
file=backup-`date +%y%m%d-%h%m`.sql
mysqldump -uroot -proot -p3306 --default-character-set=utf8 test>$file
echo "your database backup successfull companylete"
4.3修改shell指令碼許可權
#> chomn 777 back_mysql_test.sh
4.4設定定時器執行shell指令碼
#>vi /etc/crontab
0 16 * * * root /backup/mysql/back_mysql_test.sh
附:如果出現 您在 /var/spool/mail/root 中有郵件 則需要檢視郵件
#> mail -f /var/spool/mail/root
如果沒有mail命令則需要進行安裝命令
#>yum search mail
#>yum install mailx
用mail命令檢視收到的郵件(多半是因為第4.3許可權的原因造成的。然後再有一半原因是因為在shell指令碼中的file的定義有問題。)
#> mail -f /var/spool/mail/root
mysql之通過日誌的定時備份和恢復(中)
mysql日誌備份一般遵循一周進行一次全量備份,一天進行一次增量備份。增量備份,必須要開啟mysql的binlog配置,需要在mysql的配置檔案 my.cnf 開啟binlog日誌,同時用mysqlbinlog命令進行恢復 第一步 開啟日誌 vi usr my.cnf 記錄除select語句外的所...
mysql定時備份指令碼 MySql定時備份指令碼
最近需要對某服務的資料庫資料進行備份,因此參考網上教程完成資料庫備份指令碼.因為服務的使用頻率較低,因此設定定時任務,在每天的中午以及午夜時分進行備份操作.bin bash 設定mysql的登入使用者名稱和密碼 根據實際情況填寫 mysql user mysql password mysql hos...
nginx定時備份日誌
思路 用shell指令碼加linux定時任務來備份日誌 首先在進入nginx目錄 cd usr local nginx 建立乙個logdata目錄以後的指令碼和備份的日誌都放在這裡 mkdir logdata進入logdata目錄編輯建立建立乙個runlog.shshell指令碼 cd logdat...