欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Mysql(五)-數(shù)據(jù)恢復(fù)

########################################################################################
增量備份與增量恢復(fù)

王益ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!

一、啟用binlog日志實(shí)現(xiàn)增量備份
1、binlog日志介紹:
又被稱為二進(jìn)制日志,是MySQL數(shù)據(jù)庫(kù)服務(wù)日志文件的一種。

好處:
記錄 除查詢以外的所有SQL命令
可用于數(shù)據(jù)恢復(fù)
配置mysql主從同步的必要條件

############################################################
2、啟用binlog日志
#vim /etc/my.cnf
[mysql]
server_id=id號(hào) //數(shù)值范圍1-255,不能重復(fù)
log-bin[=dir/name]
//日志存放默認(rèn)位置為/var/lib/mysql/,如果需要自己指定日志文件的名稱以及存放位置,需要寫成中括號(hào)內(nèi)的格式。
注意:自己指定存放的位置的目錄需要修改文件屬主及屬組。chown -R mysql:mysql 存放路徑。
binlog_format="mixed" //日志格式

#systemctl restart mysqld

#ls /var/lib/mysql/

主機(jī)名-bin.000001 //默認(rèn)的binlog日志文件名
主機(jī)名-bin.index //記錄當(dāng)前已有的binlog日志文件名

日志格式:
statement:每一條修改數(shù)據(jù)的命令都會(huì)記錄在binlog日志中。
row:不記錄sql命令的上下文信息,僅保存哪條記錄被修改。
mixed:前兩種的綜合。

#############################################################

3、查看binlog日志:
#mysqlbinlog binlog日志文件名

#############################################################

4、binlog日志文件記錄sql命令的方式:
時(shí)間點(diǎn) //根據(jù)修改的時(shí)間記錄
pos點(diǎn) //根據(jù)數(shù)據(jù)偏移量記錄

#############################################################

5、恢復(fù)數(shù)據(jù)

格式:
mysqlbinlog 選項(xiàng) binlog日志文件名 | mysql -uroot -p密碼

選項(xiàng):
--》根據(jù)時(shí)間點(diǎn)恢復(fù)
--start-datatime="yyyy-mm-dd hh:mm:ss" --stop-datatime="yyyy-mm-dd hh:mm:ss"

--》根據(jù)偏移量恢復(fù) --start-position=數(shù)字 --stop-position=數(shù)字

##############################################################

6、生成日志與刪除日志
--》生成日志
mysql> flush logs;
#mysql -uroot -p123456 -e "flush logs"
#systemctl restart mysqld

--》刪除日志
mysql>reset master; //刪除所有
mysql>purge master logsto "日志文件名" //刪除指定日志之前的所有日志
mysql>purge master logs to "mysql11-bin.000003" //1和2 已經(jīng)刪除,但是3以后的保留

##################################################################

7、舉例
啟用binlog日志
重啟服務(wù)
寫入數(shù)據(jù)
#mysql -uroot -p123456
show master status; //查看當(dāng)前使用的binlog日志
create database db1;
create table db1.t1(id int);
insert into table db1 values(100);
insert into table db1 values(200);
select * from db1.t1; //查看數(shù)據(jù)是否插入成功
刪除數(shù)據(jù)
drop databases db1;
查看日志
mysqlbinlog /var/lib/mysql/mysql11-bin.000001
//通過查詢?nèi)罩?,create database db1; 建表的偏移量at 296
//insert into table db1 values(200); 插入這條記錄的偏移量 at 1097

恢復(fù)數(shù)據(jù)(通過偏移量)
mysql>show databases; //確認(rèn)庫(kù)已經(jīng)刪除
mysql>quit
#mysqlbinlog --start-position=296 --stop-position=1097 \
/var/lib/mysql/mysql11-bin.000001 | mysql -uroot -p123456

查看結(jié)果
mysql>show databases;
mysql>select * from db1.t1;

###################################################################

二、使用第三方軟件percona提供的命令innobackupex做增量備份

物理備份缺點(diǎn):
備份時(shí)間長(zhǎng),冗余備份,浪費(fèi)村數(shù)空間
跨平臺(tái)性差

mysqldump備份缺點(diǎn):
效率低,備份和還原時(shí)間慢
備份過程中,數(shù)據(jù)插入與更新會(huì)被掛起

percona優(yōu)點(diǎn):
備份過程不鎖表,適合生產(chǎn)環(huán)境
支持InnoDB/XtraDB
以Perl腳本封裝Xtrabackup還支持MyISAM

##########################################################

1、安裝軟件包(網(wǎng)上下載)
libev-4.15-1.el6.rf.x86_64.rpm
percona-xtrabackup-24-2.4.7-1.el7.x86_64.rpm

###########################################################

2、innobackupex基本選項(xiàng)

--host //主機(jī)名
--user //用戶名
--password //登陸密碼
--databases //數(shù)據(jù)庫(kù)名
--no-timestamp //備份文件不用日期命名

--apply-log //回滾日志(準(zhǔn)備還原)
--redo-only //日志回滾合并(最后一次的回滾合并不需要添加此選項(xiàng))
--incremental 目錄名 //增量備份
--incremental-basedir=目錄名 //增量備份時(shí)指定上一次備份數(shù)據(jù)村存儲(chǔ)的文件名
--export //導(dǎo)出表信息
import //導(dǎo)入表空間

##############################################################

3、完全備份
#innobackupex --user root --password 123456 --databases="系統(tǒng)庫(kù) 存儲(chǔ)庫(kù)" 備份目錄名 --no-timestamp

#rm -rf /var/lib/mysql
#mkdir /var/lib/mysql

完全恢復(fù)數(shù)據(jù)
#innobackup --user root --password 123456 --databases="系統(tǒng)庫(kù) 存儲(chǔ)庫(kù)" --apply-log 備份目錄名
//回滾日志
#innobackupex --user root --password 123456 --databases="系統(tǒng)庫(kù)列表 存儲(chǔ)數(shù)據(jù)庫(kù)" --copy-back 備份目錄名
//恢復(fù)數(shù)據(jù)

#ls /var/lib/mysql/
#chown -R mysql:mysql /var/lib/mysql
#systemctl stop mysqld
#systemctl start mysqld
#mysql -uroot -pabc123
mysql>show databases;

###############################################################

4、增量備份

增量備份之前,通常先作一次完全備份

增量備份第一次:
#innobackupex --user root --password 123456 --databases="系統(tǒng)庫(kù)列表 存儲(chǔ)數(shù)據(jù)庫(kù)" --incremental 目錄名1 --incremental-basedir=完全備份名 --no-timestamp

增量備份第二次:
#innobackupex --user root --password 123456 --databases="系統(tǒng)庫(kù)列表 存儲(chǔ)數(shù)據(jù)庫(kù)" --incremental 目錄名2 --incremental-basedir=目錄名1 --no-timestamp

//相當(dāng)于你的下一次備份,參照的時(shí)上一次的備份文件。

5、刪除信息

rm -rf /var/lib/mysql
mkdir /var/lib/mysql

6、增量恢復(fù)日志文件

#innobackupex --user root --password 123456 --databases=“系統(tǒng)庫(kù) 存儲(chǔ)庫(kù)” --apply-log --redo-only 完全備份目錄名
#innobackupex --user root --password 123456 --databases=“系統(tǒng)庫(kù) 存儲(chǔ)庫(kù)” --apply-log --redo-only 完全備份目錄名
--incremental-dir=目錄名1
#innobackupex --user root --password 123456 --databases=“系統(tǒng)庫(kù) 存儲(chǔ)庫(kù)” --apply-log --redo-only 完全備份目錄名
--incremental-dir=目錄名2
#cat 備份目錄/xtraback_checkpositions //文件可以查看日志序列號(hào)

7、恢復(fù)數(shù)據(jù)
#innobackupex --user root --password abc123 --databases="系統(tǒng)庫(kù)列表 存儲(chǔ)數(shù)據(jù)庫(kù)" --copy-back 完全備份目錄名

#chown -R mysql:mysql /var/lib/mysql

8、重啟服務(wù)查看
#systemctl stop mysqld
#systemctl start mysqld

###############################################################################
9、增量舉例

/allbak //自定義完全備份的目錄名
/new1 //自定義第一次增量備份目錄名
/new2 //自定義第二次增量備份目錄名

//無需自己創(chuàng)建

完全備份
#innobackupex --user root --password 123456 --databases="系統(tǒng)庫(kù)列表 gamedb" /allbak
--no-timestamp

增量第一次:
mysql>create table gamedb.t2(id int);
mysql>insert into gamedb.t2 values(200);

#innobackupex --user root --password 123456 --databases="系統(tǒng)庫(kù)列表 gamedb" --incremental /new1 --incremental-basedir=/allbak --no-timestamp

增量第二次:
mysql>create table gamedb.t3(id int);
mysql>insert into gamedb.t3 values(300);

#innobackupex --user root --password 123456 --databases="系統(tǒng)庫(kù) gamedb" --incremental /new2
--incremental-basedir=/new1 --no-timestamp

刪除數(shù)據(jù)
rm -rf /var/lib/mysql
mkdir /var/lib/mysql

恢復(fù)日志文件
#innobackupex --user root --password abc123 --databases="系統(tǒng)庫(kù)列表 gamedb" --apply-log --redo-only
/allbak
//回滾日志
#cat /allbak/xtraback_checkpositions //文件可以查看日志序列號(hào)

#innobackupex --user root --password abc123 --databases="系統(tǒng)庫(kù)列表 gamedb" --apply-log --redo-only
/allbak --incremental-dir=/new1
//增量回滾/new1

#cat /new1/xtraback_checkpositions //文件可以查看日志序列號(hào)
#cat /allbak/xtraback_checkpositions //文件可以查看日志序列號(hào)
//對(duì)比可以發(fā)現(xiàn),回滾成功,它們的序列號(hào)是首尾相接的

#innobackupex --user root --password abc123 --databases="系統(tǒng)庫(kù)列表 gamedb" --apply-log --redo-only
/allbak --increment-dir=/new2
//增量回滾/new2

#cat /new2/xtraback_checkpositions //文件可以查看日志序列號(hào)
#cat /allbak/xtraback_checkpositions //文件可以查看日志序列號(hào)
//對(duì)比可以發(fā)現(xiàn),回滾成功,它們的序列號(hào)是首尾相接的

恢復(fù)數(shù)據(jù)
#innobackupex --user root --password abc123 --databases="系統(tǒng)庫(kù)列表 gamedb" --copy-back /allbak

查看
#systemctl stop mysqld
#systemctl start mysqld

##############################################################################################

10、恢復(fù)單個(gè)表:

10.1 備份庫(kù)
#innobackup --user root --password 123456 --databases="gamedb" /gamedbbak

10.2 刪除單個(gè)表
mysql> drop table gamedb.t1;

10.3 按照原表結(jié)構(gòu)創(chuàng)建表
mysql> create table gamedb.t1(id int);

10.4 導(dǎo)出表信息
#innobackup --user root --password abc123 --databases=“gamedb.t1” --apply-log --export /gamedbbak

10.5 刪除表空間
mysql>alter table gamedb.t1 discart tablespace;

10.6 將導(dǎo)出的表信息,拷貝到對(duì)應(yīng)的數(shù)據(jù)庫(kù)目錄下
#cd /gamedbbak/gamedb
#cp t1.{exp,ibd,cfg} /var/lib/mysql/gamedb/
#ls /var/lib/mysql/gamedb/t1.
#chown mysql:myql /var/lib/mysql/gamedb/t1.

10.6 導(dǎo)入表空間
alter table t1 import tablespace;

10.7 驗(yàn)證
select * from gamedb.t1;

###########################################################################################################

4、

名稱欄目:Mysql(五)-數(shù)據(jù)恢復(fù)
當(dāng)前網(wǎng)址:http://chinadenli.net/article28/jgipjp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)、定制網(wǎng)站、網(wǎng)站建設(shè)全網(wǎng)營(yíng)銷推廣、企業(yè)建站微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
91日韩欧美在线视频| 极品少妇一区二区三区精品视频 | 欧美国产日韩在线综合| 欧美日韩精品一区免费| 玩弄人妻少妇一区二区桃花| 在线视频免费看你懂的| 成年人视频日本大香蕉久久| 亚洲熟女国产熟女二区三区| 在线日韩欧美国产自拍| 久久热这里只有精品视频| 风间中文字幕亚洲一区| 免费一区二区三区少妇| 亚洲最新的黄色录像在线| 久久婷婷综合色拍亚洲| 国产视频在线一区二区| 免费一级欧美大片免费看| 亚洲中文在线中文字幕91| 天堂热东京热男人天堂| 最新午夜福利视频偷拍| 欧美日韩综合在线精品| 欧美午夜视频免费观看| 天堂网中文字幕在线视频| 国产日韩精品欧美综合区| 国产一区二区三区av在线| 色哟哟哟在线观看视频| 亚洲欧洲一区二区中文字幕| 欧美亚洲另类久久久精品| 午夜精品一区二区三区国产| 亚洲一区二区三区免费的视频| 丁香六月啪啪激情综合区| 麻豆蜜桃星空传媒在线观看| 在线日韩欧美国产自拍| 精品国产日韩一区三区| 色婷婷视频在线精品免费观看| 亚洲精品偷拍视频免费观看| 中日韩免费一区二区三区| 日韩av欧美中文字幕| 亚洲国产一级片在线观看| 国产亚洲精品俞拍视频福利区| 香港国产三级久久精品三级| 国产精品一区二区视频|