MySQL邏輯備份mysqldump

來源:互聯網
上載者:User

標籤:

一個用mysqldump做邏輯備份的小指令碼

用於小資料量的備份,全庫,按日期,按庫,按表,進行分類

# date -s "2015/01/01" && bash mybackup.sh

#!/bin/bash# 使用mysqldump進行邏輯備份# 目錄結構/backup/日期 # 每隔7天刪除舊的備份目錄db_backup_root="/backup"today=`date +%Y%m%d`old_backup_dir=`date -d "-7 day" +%Y%m%d`db_user="root"db_passwd="geekoo"sock=`mysql -u$db_user -p$db_passwd -e "show variables like ‘%sock%‘" | grep -v Variable_name | awk {‘print $2‘}`mysql_client=`which mysql`mysqldump_client=`which mysqldump`xmysql="$mysql_client -S $sock -u$db_user -p$db_passwd"xmysqldump="$mysqldump_client -S $sock -u$db_user -p$db_passwd"if [ -d $old_backup_dir ]; thenecho "delete old backup $old_backup_dir"rm -rf $old_backup_dirfiif [ ! -d $today ]; thenmkdir -p $db_backup_root/$todayfi$xmysql -e "show databases;" | grep -vE "(Database|_schema)" > $db_backup_root/$today/db_listwhile read dbnamedo echo $dbnameif [ ! -d $db_backup_root/$today/$dbname ]; thenmkdir -p $db_backup_root/$today/$dbnamefi$xmysql -e "use $dbname; show tables;" | grep -v Tables_in > $db_backup_root/$today/$dbname/table_listwhile read tablenamedoecho $tablename$xmysqldump $dbname $tablename -R --events --triggers > $db_backup_root/$today/$dbname/$tablename.sqldone < $db_backup_root/$today/$dbname/table_listdone < $db_backup_root/$today/db_list

 

MySQL邏輯備份mysqldump

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.