兩個(gè)備份數(shù)據(jù)庫(kù)的shell腳本
更新時(shí)間:2013年02月24日 11:05:10 作者:
這篇文章主要是分享兩個(gè)備份數(shù)據(jù)庫(kù)的shell腳本,需要的朋友可以參考下,功能略有不同
備份數(shù)據(jù)庫(kù)的shell腳本一
復(fù)制代碼 代碼如下:
#!/bin/bash
#指定運(yùn)行的腳本shell
#運(yùn)行腳本要給用戶(hù)執(zhí)行權(quán)限
bakdir=/backup
month=`date +%m`
day=`date +%d`
year=`date +%Y`
hour=`date +%k`
min=`date +%M`
dirname=$year-$month-$day-$hour-$min
mkdir $bakdir/$dirname
mkdir $bakdir/$dirname/conf
mkdir $bakdir/$dirname/web
mkdir $bakdir/$dirname/db
#熱備份數(shù)據(jù)庫(kù)
cp /opt/mysql/my.cnf $bakdir/$dirname/db/my.cnf
cd /opt/mysql
mysqldump --opt -u zhy -p --password=1986 test>$bakdir/$dirname/db/test.sql
mysqldump --opt -u zhy -p --password=1986 phpwind>$bakdir/$dirname/db/phpwind.sql
#遠(yuǎn)程拷貝的目錄要有可寫(xiě)權(quán)限
scp -r /backup/$dirname root@10.1.1.178:/backup
數(shù)據(jù)庫(kù)備份腳本shell二
復(fù)制代碼 代碼如下:
[plain]
#!/bin/bash
#----------------------------
#Target machine configuration
#----------------------------
#DBUser->Database user name
#DBPasswd->Database password ,not null
#DBName->Database name
#SERVER->IP address
#----------------------------
DBUser=****
DBPasswd=****
DBName=*****
SERVER=****
#--------------------------------
#The local machine configuration
#--------------------------------
#LocalDBUser->Database user name
#LocalDBPasswd->Database password,not null
#LocalDBName->Database name
#BackupPath->Backup path,end with '/'
#LogFile->Log file
#num->backup numbers
#--------------------------------
LocalDBUser=**
LocalDBPasswd=***
LocalDBName=****
BackupPath=****
LogFile=****
#num=2 -----> Has not been completed
#-------------------------------
#-------------------------------
#Other configuration
#-------------------------------
#IgnoreTables->ignore tables,like this:
#IgnoreTables= '--ignore-table=DBName.TableName1 --ignore-table=DBName.TableName2 .....'
#NeedTables->need backup tables,if you want to backup all tables,please let it empty
#like this: NeedTables='table1 table2 table3'
#-------------------------------
IgnoreTables='****‘
NeedTables=
#begin
NewFile="$BackupPath"dbBackup$(date +%y%m%d).sql
OldFile="$BackupPath"dbBackup$(date +%y%m%d --date='5 days ago').sql
echo "-------------------------------------------" >> $LogFile
echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile
echo $(date +%y%m%d --date='5 days ago') >>$LogFile
echo "--------------------------" >> $LogFile
#Delete Old File
if [ -f $OldFile ]
then
rm -f $OldFile >> $LogFile 2>&1
echo "[$OldFile]Delete Old File Success!" >> $LogFile
else
echo "[$OldFile]No Old Backup File!" >> $LogFile
fi
if [ -f $NewFile ]
then
echo "[$NewFile]The Backup File is exists,Can't Backup!" >> $LogFile
echo "Begin ro recover the data...."
mysql -u$LocalDBUser -p$LocalDBPasswd --default-character-set='utf8' $LocalDBName <$NewFile
echo "Data has been restored!" >>$LogFile
else
mysqldump -h$SERVER -u$DBUser -p$DBPasswd --default-character-set='utf8' --quick --single-transaction $DBName $NeedTables $IgnoreTables >$NewFile
echo "[$NewFile]Backup Success!" >> $LogFile
fi
echo "-------------------------------------------"
echo "作者 陳建虹"
您可能感興趣的文章:
- shell腳本實(shí)現(xiàn)mysql數(shù)據(jù)庫(kù)雙機(jī)定時(shí)備份的方法
- shell腳本定時(shí)備份MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)并保留指定時(shí)間
- shell 備份數(shù)據(jù)庫(kù)、代碼上線(xiàn)的腳本
- 使用shell腳本每天對(duì)MySQL多個(gè)數(shù)據(jù)庫(kù)自動(dòng)備份的講解
- MySQL數(shù)據(jù)庫(kù)的shell腳本自動(dòng)備份
- Shell腳本實(shí)現(xiàn)MySQL、Oracle、PostgreSQL數(shù)據(jù)庫(kù)備份
相關(guān)文章
linux下安裝oracle后使用命令行啟動(dòng)的方法 linux啟動(dòng)oracle
這篇文章主要介紹了在linux下安裝oracle后使用命令啟動(dòng)oracle的方法,大家參考使用吧2014-01-01
Shell腳本傳遞參數(shù)的4種方式實(shí)例說(shuō)明
Shell腳本是一種命令語(yǔ)言,可以用于自動(dòng)化執(zhí)行各種任務(wù),在腳本中,我們可以通過(guò)參數(shù)來(lái)傳遞信息,本文將介紹如何在shell腳本中傳遞參數(shù),包括位置參數(shù)、特殊變量、環(huán)境變量和命名參數(shù),需要的朋友可以參考下2023-06-06
Log4j 日志文件Linux/Mac/Windows通用存放位置設(shè)置方法
下面小編就為大家?guī)?lái)一篇Log4j 日志文件Linux/Mac/Windows通用存放位置設(shè)置方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01
linux 比較兩個(gè)文件夾diff不同 (diff命令, md5列表)
這篇文章主要介紹了linux 比較兩個(gè)文件夾diff不同 (diff命令, md5列表),比較文件夾diff,可以直接使用diff命令,也可以比較文件md5列表,下面通過(guò)實(shí)例給大家介紹下,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧2018-05-05
淺談:linux cron 計(jì)劃任務(wù)常用符號(hào)小結(jié)
本文給大家介紹linux cron計(jì)劃任務(wù)常用符號(hào)小結(jié),感興趣的朋友跟著小編一起學(xué)習(xí)吧2015-10-10

