mysql 一個比較好用的備份指令碼 可以進行熱備 本人測試好用
urce /root/.bash_profile
today=`date +"%Y_%m_%d"`
bkdir=/opt/newdata
today_bkdir=$bkdir/$today
cd $bkdir
if [ ! -d $today_bkdir ] ; then
mkdir -p $today_bkdir
fi
DATE=`date +%Y%m%d_%H%M`
mysqldump -p123456 --flush-logs --master-data=2 --single-transaction -R --triggers newdb --default-character-set=utf8 > $today_bkdir/360$DATE.sql
LFILE=`mysql -uroot -p123456 -e "show binary logs"|grep "mysql-bin"|awk 'END {print $1}'`
cd $today_bakdir
find $bkdir -type d -mtime +3 -maxdepth 1 -exec rm -rf {} \;
方法二:
#!/bin/sh
source /root/.bash_profile
today=`date +"%Y_%m_%d"`
bkdir=/opt/data
today_bkdir=$bkdir/$today
cd $bkdir
if [ ! -d $today_bkdir ] ; then
mkdir -p $today_bkdir
fi
MYSQL_CONN="-uroot -p123456"
mysql ${MYSQL_CONN} -A -e"FLUSH TABLES WITH READ LOCK; SELECT SLEEP(86400)" &
sleep 3
mysql -uroot -padmin -e "show master status;"
mysql -uroot -padmin -e "show slave status\G;"
rsync --recursive /opt/data $today_bkdir
mysql -uroot -padmin -e "show slave status\G;"
mysql -uroot -padmin -e "show master status;"
SLEEP_ID=`mysql ${MYSQL_CONN} -A -e"SHOW PROCESSLIST;" | grep "SELECT SLEEP(86400)" | awk '{print $1}'`
mysql ${MYSQL_CONN} -A -e"KILL ${SLEEP_ID}"
cd $today_bakdir
find $bkdir -type d -mtime +2 -maxdepth 1 -exec rm -rf {} \;
today=`date +"%Y_%m_%d"`
bkdir=/opt/newdata
today_bkdir=$bkdir/$today
cd $bkdir
if [ ! -d $today_bkdir ] ; then
mkdir -p $today_bkdir
fi
DATE=`date +%Y%m%d_%H%M`
mysqldump -p123456 --flush-logs --master-data=2 --single-transaction -R --triggers newdb --default-character-set=utf8 > $today_bkdir/360$DATE.sql
LFILE=`mysql -uroot -p123456 -e "show binary logs"|grep "mysql-bin"|awk 'END {print $1}'`
cd $today_bakdir
find $bkdir -type d -mtime +3 -maxdepth 1 -exec rm -rf {} \;
方法二:
#!/bin/sh
source /root/.bash_profile
today=`date +"%Y_%m_%d"`
bkdir=/opt/data
today_bkdir=$bkdir/$today
cd $bkdir
if [ ! -d $today_bkdir ] ; then
mkdir -p $today_bkdir
fi
MYSQL_CONN="-uroot -p123456"
mysql ${MYSQL_CONN} -A -e"FLUSH TABLES WITH READ LOCK; SELECT SLEEP(86400)" &
sleep 3
mysql -uroot -padmin -e "show master status;"
mysql -uroot -padmin -e "show slave status\G;"
rsync --recursive /opt/data $today_bkdir
mysql -uroot -padmin -e "show slave status\G;"
mysql -uroot -padmin -e "show master status;"
SLEEP_ID=`mysql ${MYSQL_CONN} -A -e"SHOW PROCESSLIST;" | grep "SELECT SLEEP(86400)" | awk '{print $1}'`
mysql ${MYSQL_CONN} -A -e"KILL ${SLEEP_ID}"
cd $today_bakdir
find $bkdir -type d -mtime +2 -maxdepth 1 -exec rm -rf {} \;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17172228/viewspace-1077925/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql的一個備份指令碼MySql指令碼
- Mysql 一個比較好用的函式MySql函式
- 一個較完整的RMAN增量備份指令碼指令碼
- 生成熱備份指令碼指令碼
- mysql備份指令碼MySql指令碼
- RMAN備份恢復測試指令碼指令碼
- 站長必備:10個好用的 WordPress 備份外掛
- 備份&恢復系列之二:在linux中對oracle進行熱備份的指令碼!LinuxOracle指令碼
- mysql innobackupex備份指令碼MySql指令碼
- mysql的冷備份與熱備份MySql
- MySQL備份之分庫分表備份指令碼MySql指令碼
- Oracle物理熱備份指令碼(ZT)Oracle指令碼
- 使用Windows指令碼進行邏輯備份Windows指令碼
- MySQL增量備份的指令碼(innobackupex)MySql指令碼
- 兩套mysql備份指令碼MySql指令碼
- mysql按表備份指令碼MySql指令碼
- Mysql異地備份指令碼MySql指令碼
- MySQL自動備份指令碼MySql指令碼
- 一個完整的RMAN備份指令碼(轉)指令碼
- 一個比較好用的分頁控制元件控制元件
- mysql備份恢復測試MySql
- linux下oracle熱備份指令碼LinuxOracle指令碼
- Oracle冷備份(一致備份)指令碼Oracle指令碼
- mysql備份和恢復測試(一)--xtrabackupMySql
- mysql每天定時備份指令碼MySql指令碼
- mysql定時備份shell指令碼MySql指令碼
- 基於表空間的熱備份指令碼指令碼
- 備份指令碼指令碼
- oracle的熱備指令碼Oracle指令碼
- 不同備份方法的特性比較
- MySQL的冷備份和熱備份概念理解(轉)MySql
- oracle 熱備指令碼 .Oracle指令碼
- rman備份和增量備份指令碼指令碼
- MySQL資料庫備份的shell指令碼MySql資料庫指令碼
- Oracle用指令碼執行備份Oracle指令碼
- rman映像copy自動備份的一個指令碼指令碼
- EXP的備份指令碼指令碼
- Mysql定時備份資料指令碼MySql指令碼