日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Centos Mysql数据还原

發布時間:2024/9/30 数据库 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Centos Mysql数据还原 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、通過mysqlbinlog恢復數據

先安裝mysql mysql-server

yum -y install mysql mysql-server

編輯配置文件

[root@localhost 桌面]# vim /etc/my.cnf #添加 log-bin=mysql-bin


啟動服務

service mysqld start

設置mysql密碼

[root@localhost mysql]# mysqladmin -u root password '123456'

看二進制文件是否啟用

mysql> show global variables like '%log%';


已經啟用

有三個二進制文件,當前使用的是第三個

mysql> show binlog events in 'mysql-bin.000003';

查看這個文件的詳細的信息,做任何操作都會在這個文件中呈現出來

先進行一些操作

查看一下,確實記錄了剛才的操作

添加刪除的操作都有記錄

[root@localhost mysql]# cd /var/lib/mysql [root@localhost mysql]# mysqlbinlog mysql-bin.000003

利用二進制文件進行恢復操作

拿時間做恢復,必須精確到秒

[root@localhost mysql]# mysqlbinlog --start-datetime="2020-05-20 14:40:06" --stop-datetime="2020-05-20 14:40:11" mysql-bin.000003 |mysql -u root -p


但是dd數據庫沒有被恢復,因為我們設置的結束時間是dd的創建時間,應該用dd下面刪除數據庫的時間.

[root@localhost mysql]# mysqlbinlog --start-datetime="2020-05-20 14:40:06" --stop-datetime="2020-05-20 14:40:26" mysql-bin.000003 |mysql -u root -p


下面根據位置進行還原

因為位置是結束位置,所以要向上一條去寫

[root@localhost mysql]# mysqlbinlog --start-position=1024 --stop-position=1261 mysql-bin.000003 |mysql -u root -p


總結一下:

通過mysqlbinlog恢復數據 mysqlbinlog --start-datetime --stop-datetime 起始時間 --start-position --stop-position 結束位置

定期清楚binlog文件,但不能使用rm去刪除這些二進制文件

mysql> purge binary logs to 'mysql-bin.000002'; #會將'mysql-bin.000001'文件刪除

主從復制

定義:

主從同步使得數據可以從一個數據庫服務器復制到其他服務器上,在復制數據時,一個服務器充當主服務器(master),其余的服務器充當從服務器(slave)。因為復制是異步進行的,所以從服務器不需要一直連接著主服務器,從服務器甚至可以通過撥號斷斷續續地連接主服務器。通過配置文件,可以指定復制所有的數據庫,某個數據庫,甚至是某個數據庫上的某個表。

主服務器(master)

yum -y install mysql mysql-server

關閉防火墻\SELinux

iptables -F setenforce 0

啟用二進制文件

vim /etc/my.cnf


開啟mysql

service mysqld start

設置密碼

[root@localhost 桌面]# mysqladmin -u root password '123456'

在mysql中設置權限

mysql> grant replication slave on *.* to 'zhangsan'@'%' identified by '123456'; mysql> flush privileges;

當前使用的二進制文件

從服務器

yum -y install mysql mysql-server

關閉防火墻\SELinux

iptables -F setenforce 0

編輯配置文件

設置數據庫密碼

[root@localhost 桌面]# mysqladmin -u root password '123456'

進行同步操作

start slave; show slave status\G;


連接成功,可以進行同步

主服務器

從服務器

在從服務器上進行查看

同步成功

三、主主復制

所謂雙主備份,其實也就是互做主從復制,每臺master既是master,又是另一臺服務器的slave。這樣,任何一方所做的變更,都會通過復制應用到另外一方的數據庫中。

主服務器端

yum -y install mysql mysql-server

修改主配置文件,添加

啟動,如果失敗了直接恢復快照直接重來

進行授權

mysql> flush privileges;mysql> show master status;


進行同步操作

mysql> start slave;

mysql> show slave status\G;

屬服務器

yum -y install mysql mysql-server

修改主配置文件,添加

先把數據庫給鎖一下,防止數據更新

mysql> flush tables with read lock;

進行拷貝

再進行解鎖

unlock tables;

授權

查看

進行同步

mysql> start slave;

mysql> show slave status\G;

最后進行測驗

在主服務器

use test; create table aa(name char(20));

從服務器

查看主服務器

查看從服務器

說明雙方互相同步,實驗完成

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的Centos Mysql数据还原的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。