国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

linux中mydumper 多線程快速備份,恢復mysql數據庫

2024-07-24 12:36:36
字體:
來源:轉載
供稿:網友

mydumper比mysql中自帶的功能性能要強很多它可以實現多線程數據備份與恢復,下面本教程就來介紹mydumper安裝,備份及自動備份腳本的例子,希望此例子對各位會帶來幫助.

mydumper 安裝

1、先安裝cmake,因為這個軟件要用cmake編譯,代碼如下:

# apt-get install cmake

2、接下來安裝mydumper兼容包,這個很關鍵,因為根據官網文檔,centos/redhat等其他系統需要的包名是不同的,可根據實際系統去查閱官網資料,代碼如下:

# apt-get install libglib2.0-dev libmysqlclient15-dev zlib1g-dev libpcre3-dev

3、下載源碼安裝包:

#wget http://launchpad.net/mydumper/0.2/0.2.3/+download/mydumper-0.2.3.tar.gz

4、解壓包,代碼如下:

#tar xzvf mydumper-0.2.3.tar.gz

5、進入解壓目錄,準備開始安裝,代碼如下:

#cd mydumper-0.2.3/

6、用cmake進行編譯,注意后面有個字符"."(其實就是英文的句號),,別落下了啊,代碼如下:

#cmake .

7、安裝,代碼如下:

#make

#make install

到這里就已經安裝完畢了.

簡單的備份恢復測試

備份,代碼如下:mydumper –kill-long-queries -u root -B dbname -T db-tables-name -p ‘password’ -v 2 -c -t 8 –outputdir=/home/backup/20120615/

恢復備份,代碼如下:

myloader -d /home/backup/20120615/ -o -B dbname  -u root -p ‘passwd’ -t 4 &

myloader 大多參數和mydumper一樣

–directory, -d 要還原的數據目錄

–overwrite-tables, -o Drop any existing tables when restoring schemas

下面是各項常用參數解釋:

–host, -h 連接的mysql服務器
–user, -u 用戶備份的連接用戶
–password, -p
–port, -P 連接端口
–socket, -S 連接socket文件
–database, -B 需要備份的數據庫
–table-list, -T 需要備份的表,用,分隔
–outputdir, -o 輸出的目錄
–build-empty-files ,-e 如果表數據是空,還是產生一個空文件,默認無數據則只有表結構文件
–regex, -x 支持正則表達式,如mydumper –regex ’^(?!(mysql|test))’
–ignore-engines, -i 忽略的存儲引擎
–no-schemas, -m 不導出表結構
–long-query-guard 長查詢,默認60s,超過則通過mydumper
–kill-long-queries, 可以設置kill長查詢
–verbose, -v 0 = silent, 1 = errors, 2 = warnings, 3 = info,默認是2
–binlogs, -b 導出binlog www.111cn.net
 
–daemon, -D 啟用守護進程模式
–snapshot-interval, -I dump快照間隔時間,默認60s
–logfile, -L mysqldumper日志輸出,一般在Daemon模式下使用

備份mysql的shell腳本

該腳本基本功能如下(如果允許的話請自行增加異地/異機災備):

1、備份數據庫;

2、加上了過期代碼,保留了7天的備份,以免硬盤被撐爆了,有需求的請自行增減時間;

3、通過對比可得知數據庫備份使用了多長時間。

實例代碼如下:

  1. #!/bin/bash 
  2. #This is a ShellScript for auto DB-Backup 
  3. #201204 by szy 
  4. #Setting  
  5.   DBName=test 
  6.   DBUser=root 
  7.   DBPasswd=password 
  8. m.survivalescaperooms.com 
  9.  BackupPath=/home/backup/db 
  10.  LogFile=/home/backup/log/DBbackup.log 
  11.  
  12.  NewFile="$BackupPath"/"$DBName1"/$(date +%y%m%d) 
  13.  OldFile="$BackupPath"/"$DBName1"/$(date +%y%m%d --date='7 days ago') 
  14.  
  15.  echo "----------------Backup Start-------------------" >> $LogFile 
  16.  echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile 
  17.  echo "-----------------------------------------------------" >> $LogFile  
  18.  
  19. #Delect Old File 
  20.  if [ -d $OldFile ]  
  21. then  
  22.     rm -rf $OldFile >> $LogFile 2>&1  
  23.     echo "----------[$OldFile]Delete Old File Success!----------" >> $LogFile  
  24. else  
  25.     echo "----------[$DBName]No Old Backup File!-------------" >> $LogFile  
  26. fi 
  27.  
  28. #Backup 
  29.  echo "----------------------$DBName----------------------" >> $LogFile 
  30.  echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile 
  31.  if [ -d $NewFile ]  
  32. then  
  33.    echo "----------[$NewFile]The Backup File is exists,Can't Backup!----------" >> $LogFile   
  34. else  
  35. mkdir $NewFile 
  36.  mydumper --kill-long-queries -u $DBUser -B $DBName -p $DBPasswd -v 2 -c -t 8 --outputdir=$NewFile 
  37.  fi 
  38.  echo $(date +"%y-%m-%d %H:%M:%S") >> $LogFile 
  39.  echo "--------------This ShellScript End-------------------" >> $LogFile

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平度市| 滦平县| 修水县| 建水县| 兴宁市| 青阳县| 汉寿县| 札达县| 永川市| 新平| 南靖县| 肥西县| 高邑县| 仁怀市| 丰原市| 庆安县| 图木舒克市| 莱芜市| 安顺市| 平武县| 汉阴县| 曲阜市| 肥乡县| 闸北区| 谢通门县| 广东省| 肇源县| 仁化县| 都江堰市| 漾濞| 湖口县| 荆门市| 射阳县| 绥德县| 南部县| 普安县| 铜陵市| 新兴县| 锡林郭勒盟| 福贡县| 象州县|