MySQL數據庫本地備份和雙機相互備份腳本

MySQL的本地備份和雙機相互備份腳本:

首先,我們需要修改腳本進行必要的配置,然後以root用戶執行。

◆1. 第一執行遠程備份時先用 first參數.

◆2. 本地備份用local參數

◆3. 遠程備份不用參數<注意1>

注意:

需要在另一主機上的MySQL用戶裏添加用戶。

需要配置的地方:

# define host and mysql password

REMOTE_HOST="" #遠程主機名或IP

REMOTE_PASSWORD="" #遠程主機的mysql中的root@本地主機 密碼.

# define database path

DB_PATH="/var/lib/mysql" #本地mysql數據庫路徑

LOCAL_PASSWORD="" #本地mysql root用戶密碼

DB_BACKUP_PATH="/root/db_bk" #本地備份時數據保存的路徑

NO_BACKUP_DB="" 設置本地數據庫中不想備份的數據庫名,用空格隔開

直接下載

#!/bin/sh

# mysqldump_all.sh

# this scripts is used to backup MySQL database bettwen tow MySQL SERVER!

# define host and mysql password

REMOTE_HOST=""

REMOTE_PASSWORD=""

# define database path

DB_PATH="/var/lib/mysql"

LOCAL_PASSWORD=""

DB_BACKUP_PATH="/root/db_bk"

# define which database no back up, write db anme escap whit space!

# example;

# NO_BACKUP_DB="yns test ps_note"

# this said that if db name is "yns" or "test" or "ps_note", then not backup them!

NO_BACKUP_DB=""

# get the database name and process one by one

echo "Start to Backup...";

#ls /var/lib/mysql > /tmp/mydb.all

if [ "$1" != "help" ]; then

for db in `ls $DB_PATH`; do

if_backup="1"

if [ -d $DB_PATH/$db ] ; then

for noBackDB in $NO_BACKUP_DB ; do

if ( test "$db" = "$noBackDB" ); then

#echo -n "...";

if_backup="";

fi

done

if [ $if_backup ]; then

case "$1" in

first)

echo -n "Crate db [ $db ] on $REMOTE_HOST first!"

result=`mysqladmin -h $REMOTE_HOST --password=$REMOTE_PASSWORD create $db`

if [ ! $result ]; then

echo "...Done!";

else

echo "...Fialed! check your configure plz!";

echo "Remote host said: $result";

exit

fi

;;

local)

# back up to localhost dir.

if [ ! -d $DB_BACKUP_PATH ]; then

mkdir $DB_BACKUP_PATH

fi

echo -n "[ $db ]....Backup to local$DB_BACKUP_PATH with gzip";

if [ -e "$DB_BACKUP_PATH/$db.gz" ]; then

mv $DB_BACKUP_PATH/$db.gz $DB_BACKUP_PATH/$db.1.gz;

fi

mysqldump --password=Walte#Ming $db | gzip > $DB_BACKUP_PATH/$db.gz

echo "...[OK]"

;;

*)

# Do common Backup!

echo -n "[ $db ]...Do Backup! ====>> $REMOTE_HOST/$db";

mysqldump --add-drop-table $db --password=$LOCAL_PASSWORD | mysql -h $REMOTE_HOST --password=$REMOTE_PASSWORD $db

echo "....[OK]";

esac

else

echo "[ $db ]";

echo "***This database set to Not backup!...Operation CANCELED!";

fi

else

echo "[ $db ]";

echo "***Warning! Not a DataBbase. Backup Canceled***";

fi

done

else

echo "Usage: mysqldupm_all.sh [firs|local|help]";

echo "Some question ask for href="mailto:walteyh@sohu.com";">walteyh@sohu.com";

fi

# Ended all backup opretion!

echo "";

echo "Note: if there is come wrong message white MySQL,you should check yourconfigure first!";

exit

 
詳細講解MySQL數據庫雙機熱備的配置方法
MySQL數據庫雙機熱備的配置方法: ◆1.MySQL數據庫沒有增量備份的機制,當數據量太大的時候備份是一個很大的問題。還好MySQL數據庫提供了一種主從備份的機制,其實就是把主數據庫的所有的數據同時寫到備份數據庫中。實...查看完整版>>詳細講解MySQL數據庫雙機熱備的配置方法
 
mysql的本地備份和雙機相互備份腳本
     先修改腳本進行必要的配置,然後以root用戶執行.  1. 第一執行遠程備份時先用 first參數.  2. 本地備份用local參數  3. 遠程備份不用參數<注意1>  注意:需要在另一主機上的Mysql用戶用添加用戶...查看完整版>>mysql的本地備份和雙機相互備份腳本
 
mysql的本地備份和雙機相互備份腳本
  先修改腳本進行必要的配置,然後以root用戶執行.  1. 第一執行遠程備份時先用 first參數.  2. 本地備份用local參數  3. 遠程備份不用參數  注意:需要在另一主機上的Mysql用戶用添加用戶..  需要配置的地...查看完整版>>mysql的本地備份和雙機相互備份腳本
 
Lunix環境下MySQL數據庫的自動備份腳本
可以將這個腳本放進crontab,每天淩晨執行一次,自動備份 這個腳本每天最多只執行一次,而且只保留最近五天的備份在服務器上。 #Setting #設置數據庫名,數據庫登錄名,密碼,備份路徑,日志路徑,數據文件位置,及備...查看完整版>>Lunix環境下MySQL數據庫的自動備份腳本
 
編制一個Mysql數據庫自動備份腳本
可以將這個腳本放進crontab,每天淩晨執行一次,自動備份這個腳本每天最多只執行一次,而且只保留最近五天的備份在服務器上。 代碼: #!/bin/bash #This is a ShellScript For Auto DB Backup #Powered by SearchData...查看完整版>>編制一個Mysql數據庫自動備份腳本
 
· 臨近國慶,李小璐與女兒在天安門前合影

http://image.wangchao.net.cn/users/...

· 震驚!原來酒駕處罰這麽嚴重

酒駕處罰標准 不要有任何一絲僥幸心理! http://image....

· 把年齡相仿的獅虎熊放一起,誰更厲害?結果出人意料

很多人都想知道獅子、老虎和熊打起來誰最厲害,于是便有好事之人把這三種動物關在一起...