Mysql備份II

Mysql備份II

V.II.I單臺或共用機器,數據量和訪問量小50G<

1 Mysqldump(全導出,導庫,導表) 鎖表 如果這時有些入會鎖住或者超時

2 至少停止寫入 防止innodb配置還沒刷到磁盤里 先flash tables

/usr/local/mysql/bin/mysqladmin -S /tmp/mysql.sock -u root -p password shutdown
Service msqld stop && 清除binlog   resetmaster  tar or rsync && service mysqld start

for MyISAM

mysqldump --user=root –all-databases –flush-privileges –lock-all-tables
--master-data=1 –flush-log –trigger –routines –events –hex-blob
> $backup_dir/full_dump_$date.sql

for InnoDB

mysqldump –user=root –all-databases –flush-privileges  -- single-transaction
--master-data=1 --flush -logs  -–triggers – -routines  --events –hex-blob>
$backup_dir/$full_dump_$date.sql

--hex-blob
使用十六進制格式導出二進制字符串字段.有二進制類型數據就必須使用 .binary
.varybinary .blob

--single-transaction
先提交begin sql,能保證導出數據庫的一致性狀態 ,只適用于 InnoDB 和BDB
TABLES 會使任何掛起的失誤隱含提交
導出 大表應結合使用—quick選項

Masterdata=1 mysqldump 會包括change master to file & position   

Masterdata=2  mysqldump 會包括change master to file & position  但是是被注釋掉的

這個值主要用于主從復制時

Tar:

ScriptS:

#!/bin/bash
#bakup mysql dbTables; usefree; not responsible;
#
#author lethe  6/15/2016
#QQ:914576241
#www.lethe.com.cn
#
#echo -n "inputdbname:"
#read dbname
#echo "$dbname"
echo -n "inputdbuser:"
read user
echo “$user”
echo -n "inputpassword:"
read password
echo -n "inputportNO.:"
read port
echo “$port”
echo -n "inputdeldata:"
read passday
echo “$passday”
user=“$user”
password=“$password”
#dbname=“$dbname”
cm= “mysql -S /tmp/mysql.sock -u “$user” -p “$password””
dm=” /usr/local/mysql/bin/mysqldump -S /tpm/mysql.sock -u $user -p $password”
em=” /usr/local/mysql/bin/mysqladmin -S /tmp/mysql.sock -u $user -p $password shutdown”
date=`date +%Y_%m_%d`
before=` date +%Y-%m-%d 00:00:00 `
ddate=` date +"%Y_%m_%d" -d "-${passday} day" `
rm -rf *_$ddate*
if [ ! -d /mysql/backup ];then
mkdir -p /mysql/backup
fi
cd /mysql/backup
$cm -e “PUGE MASTER LOGS BEFORE ‘$before’”
#binlog too large
task=`ps waux | grep mysql | grep -v grep| awk’{print $2}’| wc -l`
if [ $task -gt 0 ];then
$em
Service mysqld stop
fi
#make sure mysql closed
$em
tar zcf /mysql/backup/mysql_$port_$date.tar.gz /var/lib/mysql/
/usr/local/mysql/bin/mysql_safe –defaults-file=/var/lib/mysql/my.cnf &
Service mysqld start  &>  /dev/null
#make sure mysql start

原創文章,作者:雙慶 李,如若轉載,請注明出處:http://www.www58058.com/18008

(0)
雙慶 李雙慶 李
上一篇 2016-06-09 20:23
下一篇 2016-06-09 22:15

相關推薦

  • Lamp應用

    練習:分別使用CentOS 7和CentOS 6實現以下任務 (1) 配置三個基于名稱的虛擬主機; (a) discuzX (b) wordpress (c) https: phpMyAdmin (2) 對discuzX的主頁做壓測; 分別給出并發10, 100, 200, 500等每秒的響應數 建立私有CA (umask 077;openssl genrs…

    Linux干貨 2016-10-12
  • ldirectord 結合ipvsadm 配置nat,dr模型

    ldirectord 結合ipvsadm 配置nat,dr模型  一、nat模型 1、 drector # wget ftp://172.16.0.1/pub/Sources/7.x86_64/crmsh/ldirectord-3.9.6-0rc1.1.1.x86_64.rpm # yum -y install nginx (同時用于做為sorry…

    Linux干貨 2014-01-03
  • 馬哥教育網絡班21期-第4周課程練習

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。     cp -R /etc/skel /home/tuser1     chmod g-rwx,o-r…

    Linux干貨 2016-08-03
  • N22-℡浮生.若夢 ╮第九周作業

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現; #!/bin/bash ## declare -i log_user declare -i notlog_user for i …

    Linux干貨 2016-12-12
  • 壓縮和解壓縮總結

                      壓縮和解壓縮的命令很多,今天總結如下: gzip  壓縮比1–9  默認是6  壓縮比越高  耗費CPU資源也多,文件比較小的話,不建議使用gzip壓縮,因為使用gzip越壓縮越大?!?/p>

    Linux干貨 2017-04-17
  • 文本處理工具三劍客之awk

    文本處理工具:grep,sed,awk awk:報告生成器,格式化文本輸出 AWK: Aho ,Weinberger,Kernighan gawk:GNU awk gawk – pattren  scanning  and  processing  language 基本語法:gawk  [opt…

    Linux干貨 2016-09-22
欧美性久久久久