mysql 中怎么利用master

50次阅读
没有评论

共计 3561 个字符,预计需要花费 9 分钟才能阅读完成。

mysql 中怎么利用 master-master 实现双机热备份,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面丸趣 TV 小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1、环境描述。
    主机:192.168.0.167(A)
    主机:192.168.0.251(B)
   MYSQL 版本为 5.1.11
2、授权用户。
A:
grant replication slave,file on *.* to  identified
by 123456;
Query OK, 0 rows affected (0.00 sec)

mysql flush privileges;
Query OK, 0 rows affected (0.00 sec)
B:
mysql grant replication slave,file on *.* to  identified
by 123456;
Query OK, 0 rows affected (0.00 sec)

mysql flush privileges;
Query OK, 0 rows affected (0.00 sec)
然后都停止 MYSQL 服务器。

3、配置文件。
在两个机器上的 my.cnf 里面都开启二进制日志。
A:
user = mysql
log-bin=mysql-bin
server-id      = 1
binlog-do-db=test
binlog-ignore-db=mysql
replicate-do-db=test
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
sync_binlog=1
auto_increment_increment=2
auto_increment_offset=1

B:
user = mysql
log-bin=mysql-bin
server-id      = 2
binlog-do-db=test
binlog-ignore-db=mysql
replicate-do-db=test
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
sync_binlog=1
auto_increment_increment=2
auto_increment_offset=2
至于这些参数的说明具体看手册。
红色的部分非常重要,如果一个 MASTER 挂掉的话,另外一个马上接管。
紫红色的部分指的是服务器频繁的刷新日志。这个保证了在其中一台挂掉的话,日志刷新到另外一台。从而保证了数据的同步。
4、重新启动 MYSQL 服务器。
在 A 和 B 上执行相同的步骤
[root@localhost ~]# /usr/local/mysql/bin/mysqld_safe
[1] 4264
[root@localhost ~]# 071213 14:53:20 mysqld_safe Logging to /usr/local/mysql/data/localhost.localdomain.err.
/usr/local/mysql/bin/mysqld_safe: line 366: [: -eq: unary operator expected
071213 14:53:20 mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data

5、进入 MYSQL 的 SHELL。
A:
mysql flush tables with read lockG
Query OK, 0 rows affected (0.00 sec)

mysql show master statusG
*************************** 1. row ***************************
         File: mysql-bin.000007
     Position: 528
    Binlog_Do_DB: test
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)

B:
mysql flush tables with read lock;
Query OK, 0 rows affected (0.00 sec)

mysql show master statusG
*************************** 1. row ***************************
         File: mysql-bin.000004
     Position: 595
    Binlog_Do_DB: test
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)
然后备份自己的数据,保持两个机器的数据一致。
方法很多。完了后看下一步。
6、在各自机器上执行 CHANGE MASTER TO 命令。
A:
mysql change master to
    – master_host=192.168.0.251,
    – master_user=backup_251,
    – master_password=123456,
    – master_log_file=mysql-bin.000004,
    – master_log_pos=595;
Query OK, 0 rows affected (0.01 sec)
mysql start slave;
Query OK, 0 rows affected (0.00 sec)

B:
mysql change master to
    – master_host=192.168.0.167,
    – master_user=backup_167,
    – master_password=123456,
    – master_log_file=mysql-bin.000007,
    – master_log_pos=528;
Query OK, 0 rows affected (0.01 sec)
mysql start slave;
Query OK, 0 rows affected (0.00 sec)

7、查看各自机器上的 IO 进程和 SLAVE 进程是否都开启。
A:

mysql show processlistG
*************************** 1. row ***************************
   Id: 2
   User: repl
   Host: 192.168.0.251:54475
   db: NULL
Command: Binlog Dump
   Time: 1590
 State: Has sent all binlog to slave; waiting for binlog to be updated
   Info: NULL
*************************** 2. row ***************************
   Id: 3
   User: system user
   Host:
   db: NULL
Command: Connect
   Time: 1350
State: Waiting for master to send event
   Info: NULL
*************************** 3. row ***************************
   Id: 4
   User: system user
   Host:
   db: NULL
Command: Connect
   Time: 1149
 State: Has read all relay log; waiting for the slave I/O thread to update it
   Info: NULL
*************************** 4. row ***************************
   Id: 5
   User: root
   Host: localhost
   db: test
Command: Query
   Time: 0
 State: NULL
   Info: show processlist
4 rows in set (0.00 sec)

B:

mysql show processlistG
*************************** 1. row ***************************
   Id: 1
   User: system user
   Host:
   db: NULL
Command: Connect
   Time: 2130
State: Waiting for master to send event
   Info: NULL
*************************** 2. row ***************************
   Id: 2
   User: system user
   

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注丸趣 TV 行业资讯频道,感谢您对丸趣 TV 的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-01发表,共计3561字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)