主頁(yè) > 知識(shí)庫(kù) > 使用mysqldump實(shí)現(xiàn)mysql備份

使用mysqldump實(shí)現(xiàn)mysql備份

熱門標(biāo)簽:外呼系統(tǒng)怎樣才能不封號(hào) 地圖標(biāo)注百度競(jìng)價(jià) 外呼系統(tǒng)線路經(jīng)常出問(wèn)題嗎 地圖標(biāo)注什么軟件好用 安陽(yáng)手機(jī)自動(dòng)外呼系統(tǒng)原理是什么 地圖標(biāo)注專員入駐 神行者百貨商場(chǎng)地圖標(biāo)注 西藏地圖標(biāo)注改進(jìn)點(diǎn) 如何辦理400客服電話

注意:備份文件和二進(jìn)制日志文件不能與mysql放在同一磁盤下

節(jié)點(diǎn)1

1、節(jié)點(diǎn)1上修改mysql配置文件,開起二進(jìn)制日志保存

這里我將二進(jìn)制日志放在/data/mysql/目錄下,/data/是我創(chuàng)建的另外一個(gè)lvm磁盤,本來(lái)想直接放在/data/下,發(fā)現(xiàn)無(wú)法啟動(dòng)mysql,所以建議還是放在/data/mysql中

[root@node1 ~]# mkdir -pv /data/mysql/
[root@node1 ~]# chown mysql:mysql /data/*
[root@node1 mysql]# cd /var/lib/mysql
[root@node1 mysql]# cp -a mysql-bin.000001 mysql-bin.000002 mysql-bin.index /data/mysql/
[root@node1 ~]# vim /etc/my.cnf.d/server.cnf
  [server]
  log_bin=/data/mysql/mysql-bin
[root@node1 ~]# service mariadb restart

2、查看二進(jìn)制日志的一些信息

[root@node1 ~]# mysql
  MariaDB [(none)]> show master logs;
  +------------------+-----------+
  | Log_name     | File_size |
  +------------------+-----------+
  | mysql-bin.000001 |    264 |
  | mysql-bin.000002 |    245 |
  +------------------+-----------+

3、查看表的存儲(chǔ)引擎類型并備份

MariaDB [hellodb]> show table status\G;

如果engine是myisam則備份方案如下,需要對(duì)鎖表后操作

[root@node1 ~]# mysqldump -uroot --lock-tables --master-data=2 --flush-logs --databases hellodb > /root/hellodb_myis.sql

如果engine是innodb則備份方案如下

[root@node1 ~]# mysqldump -uroot --single-transaction --master-data=2 --flush-logs --databases hellodb > /root/hellodb_inno.sql
--single-transaction:熱備
--master-data=2:記錄為注釋的CHANGE MASTER TO語(yǔ)句
--flush-logs:日志滾動(dòng)

批量修改表的存儲(chǔ)引擎【將得到的結(jié)果一次執(zhí)行即可修改,不建議直接在mysql中修改】

MariaDB [hellodb]> SELECT CONCAT('ALTER TABLE ',table_name,' ENGINE=InnoDB;') FROM information_schema.tables WHERE table_schema='hellodb' AND ENGINE='myisam';

4、修改表內(nèi)數(shù)據(jù)

MariaDB [(none)]> use hellodb;
MariaDB [hellodb]> insert into students (Name,Age,Gender,ClassID,TeacherID) values ('caocao',99,'M',6,8);
MariaDB [hellodb]> delete from students where stuid=3;

5、復(fù)制備份文件到另一節(jié)點(diǎn)

[root@node1 ~]# scp hellodb_inno.sql 192.168.1.114:/root/

節(jié)點(diǎn)2

6、在另一個(gè)節(jié)點(diǎn)進(jìn)行mysql恢復(fù)

修改節(jié)點(diǎn)2的配置文件

[root@node2 ~]# mkdir -pv /data/mysql
[root@node2 ~]# vim /etc/my.cnf
  [mysqld] 
  log_bin=/data/mysql/mysql-bin
[root@node2 ~]# chown mysql:mysql /data/*
[root@node2 ~]# chown mysql:mysql /data
[root@node2 ~]# service mariadb start

還原備份文件

[root@node2 ~]# mysql  /root/hellodb_inno.sql
[root@node2 ~]# less hellodb_inno.sql
  -- CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=245;

根據(jù)表中的顯示,在備份那一刻,二進(jìn)制日志mysql-bin.000002,操作到了245

7、在節(jié)點(diǎn)2上恢復(fù)二進(jìn)制日志

在節(jié)點(diǎn)1上將245之后的二進(jìn)制日志文件轉(zhuǎn)換為sql文件

[root@node1 ~]# mysqlbinlog --start-position=245 /var/lib/mysql/mysql-bin.000002 > binlog.sql

復(fù)制給節(jié)點(diǎn)2

[root@node1 ~]# scp binlog.sql 192.168.1.114:/root/

利用剛才生產(chǎn)的sql文件來(lái)恢復(fù)備份之后操作的內(nèi)容

[root@node2 ~]# mysql /root/binlog.sql

8、查看恢復(fù)情況

[root@node2 ~]# mysql
MariaDB [(none)]> use hellodb;
MariaDB [hellodb]> select * from students;
+-------+---------------+-----+--------+---------+-----------+
| StuID | Name     | Age | Gender | ClassID | TeacherID |
+-------+---------------+-----+--------+---------+-----------+
|   1 | Shi Zhongyu  | 22 | M   |    2 |     3 |
|   2 | Shi Potian  | 22 | M   |    1 |     7 |
|   4 | Ding Dian   | 32 | M   |    4 |     4 |
|   5 | Yu Yutong   | 26 | M   |    3 |     1 |
|   6 | Shi Qing   | 46 | M   |    5 |   NULL |
|   7 | Xi Ren    | 19 | F   |    3 |   NULL |
|   8 | Lin Daiyu   | 17 | F   |    7 |   NULL |
|   9 | Ren Yingying | 20 | F   |    6 |   NULL |
|  10 | Yue Lingshan | 19 | F   |    3 |   NULL |
|  11 | Yuan Chengzhi | 23 | M   |    6 |   NULL |
|  12 | Wen Qingqing | 19 | F   |    1 |   NULL |
|  13 | Tian Boguang | 33 | M   |    2 |   NULL |
|  14 | Lu Wushuang  | 17 | F   |    3 |   NULL |
|  15 | Duan Yu    | 19 | M   |    4 |   NULL |
|  16 | Xu Zhu    | 21 | M   |    1 |   NULL |
|  17 | Lin Chong   | 25 | M   |    4 |   NULL |
|  18 | Hua Rong   | 23 | M   |    7 |   NULL |
|  19 | Xue Baochai  | 18 | F   |    6 |   NULL |
|  20 | Diao Chan   | 19 | F   |    7 |   NULL |
|  21 | Huang Yueying | 22 | F   |    6 |   NULL |
|  22 | Xiao Qiao   | 20 | F   |    1 |   NULL |
|  23 | Ma Chao    | 23 | M   |    4 |   NULL |
|  24 | Xu Xian    | 27 | M   |  NULL |   NULL |
|  25 | Sun Dasheng  | 100 | M   |  NULL |   NULL |
|  26 | caocao    | 99 | M   |    6 |     8 |
+-------+---------------+-----+--------+---------+-----------+

您可能感興趣的文章:
  • mysqldump備份還原和mysqldump導(dǎo)入導(dǎo)出語(yǔ)句大全詳解
  • mysql數(shù)據(jù)庫(kù)備份及恢復(fù)命令 mysqldump,source的用法
  • mysqldump數(shù)據(jù)庫(kù)備份參數(shù)詳解
  • MySQL的備份工具mysqldump的基礎(chǔ)使用命令總結(jié)
  • 如何備份MySQL數(shù)據(jù)庫(kù)
  • 用mysqldump備份和恢復(fù)指定表的方法
  • mysqldump備份數(shù)據(jù)庫(kù)時(shí)排除某些庫(kù)的實(shí)例

標(biāo)簽:阜陽(yáng) 張掖 萍鄉(xiāng) 衡水 貴港 AXB 雞西 酒泉

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用mysqldump實(shí)現(xiàn)mysql備份》,本文關(guān)鍵詞  使用,mysqldump,實(shí)現(xiàn),mysql,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《使用mysqldump實(shí)現(xiàn)mysql備份》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于使用mysqldump實(shí)現(xiàn)mysql備份的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章