mysql高可用方案之主主架构

mysql高可用方案之主主架构,第1张

mysql高可用方案之主主架构(master-master)

mysql的主从将主服务器的 *** 作记录写入二进制日志文件,然后通过mysqldump线程将日志发送到从服务器的中继日志,从服务器读取并执行中继日志中的信息。mysql主从架构的原理和主从类似,只是两个服务器都要打开二进制日志文件,互相发送读取日志的内容,这样数据才能同步。两台服务器可以同时读写,但它不能解决单点故障。

环境规划:

主机名:tong2IP:192.168.1.248

主机名:tong3IP:192.168.1.249

数据库:mysql-5.6.21

1.配置服务器网络环境

Tong2节点:

[root@tong2~]#ifconfigeth0
eth0Linkencap:EthernetHWaddr10:78:D2:C7:17:E8
inetaddr:192.168.1.248Bcast:192.168.1.255Mask:255.255.255.0
inet6addr:fe80::1278:d2ff:FEC7:17e

[root@tong2~]#vim/etc/hosts

192.168.1.248舌片2

[root@tong2~]#

Tong3节点:

[root@tong3~]#ifconfigeth0
eth0Linkencap:EthernetHWaddr10:78:D2:C8:F7:50
inetaddr:192.168.1.249Bcast:192.168.1.255Mask:255.255.255.0
inet6addr:fe80::1278:d2ff:FEC8:f750

192.168.1.248舌片2

[root@tong3~]#

2.下载并安装mysql-5.6.21软件

Tong2节点和tong3节点:

Http://mirrors.sohu.com/mysql/mysql-5.6/-Download关于MySQL的软件

[root@tong2~]#rpm-IVHmysql-*-安装所有MySQL包

3.修改配置文件

Tong2节点:

[root@tong2~]#vim/usr/my.CNF-将以下内容添加到配置文件中

server_id=10-服务器的id号

log-bin=MySQL-bin-二进制日志文件
log-bin-index=MySQL-bin-index-index文件
Relay-log=Relay-bin-Relay日志文件
Relay-log-index=Relay-bin-index-Relay索引文件
replicate-do-db=tong-要同步的数据库

auto_increment_offset=1-设置服务器交替读取和写入数据
auto_increment_increment=2

[root@tong2~]#

Tong3节点:

[root@tong3~]#vim/usr/my.cnf

server_id=20

log-bin=MySQL-bin
log-bin-index=MySQL-bin-index
relay-log=relay-bin
relay-log-index=relay-bin-index
replication-do-db=tong

auto_increment_offset=2
auto_increment_increment=2

[root@tong3~]#

3.登录数据库并创建用户。

Tong2节点:

[root@tong2~]#/etc/init.d/MySQLrestart-重新启动服务
关闭MySQL..成功!
启动MySQL。成功!
[root@tong2~]#netstat-antup|grep3306
TCP00:::3306:::*listEN8508/mysqld

[root@tong2~]#MySQL-uroot-p
输入密码:
欢迎使用MySQLmonitor。命令以结尾;或者\g.
你的MySQL连接id是5
服务器版本:5.6.21MySQL社区服务器(GPL)

版权所有(c)2000,2014,Oracle和/或其附属公司。保留所有权利。

甲骨文是甲骨文公司和/或其
附属公司的注册商标。其他名称可能是其各自所有者的商标

键入“help”或“\h”寻求帮助。键入'\c'清除当前的输入语句。

mysql>创建数据库tong-创建要同步的数据库。

查询正常,1行受影响(0.00秒)

mysql>授予复制从属服务器,在*上的复制客户端。*到由“系统”标识的“tong2”@“192.168.1.249”;-创建复制用户
查询正常,0行受影响(0.00秒)

mysql>冲洗桌子;
查询正常,0行受影响(0.00秒)

mysql>

Tong3节点:

[root@tong3~]#/etc/init.d/mysqlrestart
关闭MySQL..成功!
启动MySQL。成功!
[root@tong3~]#netstat-antup|grep3306
TCP00:::3306:::*listEN3484/mysqld

[root@tong3~]#MySQL-uroot-p
输入密码:
欢迎使用MySQLmonitor。命令以结尾;或者\g.
你的MySQL连接id是3
服务器版本:5.6.21MySQL社区服务器(GPL)

版权所有(c)2000,2014,Oracle和/或其附属公司。保留所有权利。

甲骨文是甲骨文公司和/或其
附属公司的注册商标。其他名称可能是其各自所有者的商标

键入“help”或“\h”寻求帮助。键入'\c'清除当前的输入语句。

mysql>创建数据库tong

查询正常,1行受影响(0.00秒)

mysql>授予复制从属服务器,在*上的复制客户端。*totong3@由“系统”标识的“192.168.1.248”;
查询正常,0行受影响(0.00秒)

mysql>冲洗桌子;
查询正常,0行受影响(0.00秒)

mysql>

4.iptable包过滤

Tong2节点和tong3节点:

[root@tong2~]#vim/etc/sysconfig/iptables

-ainput-mstate-statenew-mTCP-pTCP-s192.168.1.249-dport3306-jaccept-add规则传递mysql。

[root@tong2~]#/etc/init.d/iptablesrestart
iptables:将链设置为策略接受:筛选[OK]
iptables:刷新防火墙规则:[OK]
iptables:卸载模块:[OK]
iptables:应用防火墙规则:[OK]
[root@tong2~]#

5.检查每个节点的二进制日志的位置。

Tong2节点:

mysql>显示主机状态;
+--+-+-+-+
|File|Position|Binlog_Do_DB|Binlog_Ignore_DB|Executed_Gtid_Set|
+---+-+--+
|MySQL-bin.000001|120|||||
+--+-+-+
集合中的一行(0.00秒)

mysql>

Tong3节点:

mysql>显示主机状态;
+--+-+-+-+
|File|Position|Binlog_Do_DB|Binlog_Ignore_DB|Executed_Gtid_Set|
+---+-+--+
|MySQL-bin.000004|120|||||
+--+-+-+
集合中的一行(0.00秒)

mysql>

6.服务器相互连接。

Tong2节点:

[root@tong2~]#MySQL-uroot-p
输入密码:
欢迎使用MySQLmonitor。命令以结尾;或者\g.
您的MySQL连接id是2
服务器版本:5.6.21-logMySQL社区服务器(GPL)

版权所有(c)2000,2014,Oracle和/或其附属公司。保留所有权利。

甲骨文是甲骨文公司和/或其
附属公司的注册商标。其他名称可能是其各自所有者的商标

键入“help”或“\h”寻求帮助。键入'\c'清除当前的输入语句。

mysql>将master改为master_host='192.168.1.249',master_user='tong3',master_password='system',master_port=3306,master_log_file='MySQL-bin.000004',master_log_pos=120
查询正常,0行受影响,2个警告(0.43秒)

mysql>启动从机;
查询正常,0行受影响(0.03秒)

mysql>显示从属状态\G
************************1。row***************************
Slave_IO_State:等待master发送事件
Master_Host:192.168.1.249
Master_User:tong3
Master_Port:3306
Connect_Retry:60
Master_Log_File:MySQL-bin.000004
Read_Master_Log_Pos:120[/brskip_Counter:0
Exec_Master_Log_Pos:120
Relay_Log_Space:450
Until_Condition:None
Until_Log_File:
Until_Log_Pos:0
Master_SSL_Allowed:No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
正在等待从I/O线程更新它
Master_Retry_Count:86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position:0

mysql>

Tong3节点:

[root@tong3~]#MySQL-uroot-p
输入密码:
欢迎使用MySQLmonitor。命令以结尾;或者\g.
您的MySQL连接id是2
服务器版本:5.6.21-logMySQL社区服务器(GPL)

版权所有(c)2000,2014,Oracle和/或其附属公司。保留所有权利。

甲骨文是甲骨文公司和/或其
附属公司的注册商标。其他名称可能是其各自所有者的商标

键入“help”或“\h”寻求帮助。键入'\c'清除当前的输入语句。
MySQL>;将master改为master_host='192.168.1.248',master_user='tong2',master_password='system',master_port=3306,master_log_file='MySQL-bin.000001',master_log_pos=120
查询正常,0行受影响,2个警告(0.43秒)

mysql>启动从机;
查询正常,0行受影响(0.06秒)

mysql>显示从属状态\G
************************1。row***************************
Slave_IO_State:等待master发送事件
Master_Host:192.168.1.248
Master_User:tong2
Master_Port:3306
Connect_Retry:60
Master_Log_File:MySQL-bin.000001
Read_Master_Log_Pos:120[/brLast_SQL_Errno:0
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id:10
Master_UUID:2CB52da5-759f-11D6-bc85-1078D2c717e8
Master_Info_File:/var/lib/MySQL/Master.Info
SQL_Delay:0
sq正在等待从I/O线程更新它
Master_Retry_Count:86400
Master_Bind:
Last_IO_Error_Timestamp:
Last_SQL_Error_Timestamp:
Master_SSL_Crl:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position:0

mysql>

7.测试服务是否正常。

Tong2节点:

mysql>创建表a(一个int);
查询正常,0行受到影响(0.26秒)
MySQL>;插入a值(1)、(2)、(3)、(4);
查询正常,4行受影响(0.03秒)
记录:4个重复项:0个警告:0个

mysql>select*froma;
+-+
|a|
+-+
|1|
|2|
|3|
|4|
+-+
集合中的4行(0.00秒)

mysql>

Tong3节点:

mysql>\utong
读取表信息以完成表名和列名
您可以关闭此功能,用-A

数据库已更改
MySQL>;select*froma;
+-+
|a|
+-+
|1|
|2|
|3|
|4|
+-+
集合中的4行(0.00秒)

mysql>创建表a1(a1int);
查询正常,0行受影响(0.27秒)

mysql>插入a1值(11)、(12)、(13)、(14);
查询正常,4行受影响(0.03秒)
记录:4个重复项:0个警告:0个

mysql>select*froma1
+-+
|a1|
+-+
|11|
|12|
|13|
|14|
+-+
集合中的4行(0.00秒)

mysql>

Tong2节点:

mysql>select*froma1
+-+
|a1|
+-+
|11|
|12|
|13|
|14|
+-+
集合中的4行(0.00秒)

mysql>

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/783957.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-04
下一篇 2022-05-04

发表评论

登录后才能评论

评论列表(0条)

保存