MySQL主从复制简单配置(一主多从)
2020-02-01 08:28
633 查看
一、主从同复制原理
在主服务器上进行的操作,如:insert,update,会记录在binlog文件中,从服务器就会去读这个binlog文件,解析成自己可以执行的 relaylog ,然后执行。
binlog 是很敏感的,所以在主服务器中必须创建一个 slaver 账号,然后从服务器使用这个账号来连接主服务器。
二、配置
打开 mysql 的配置文件
-
配置服务器id
这么多服务器读写binlog,会很乱,所以需要为每个服务器配置一个id,一般这些服务器是在同一个局域网内的,所以一般是用ip的主机号部分作为id
server-id=201
-
主服务器配置binlog
# 声明二进制日志文件为mysql-bin.xxxx log-bin=mysql-bin # 二进制日志的格式,可以是 mixed(混合),row(磁盘变化),statement(语句) binlog-format=mixed
二进制日志格式:
row:记录磁盘的变化,适用于语句很长,但磁盘变化很小
statement:记录执行的语句,适用于语句很短,但是磁盘变化很大
mixed:混合使用,由系统根据语句来决定用row还是statement
-
从服务器配置relaylog
relay-log=mysql-relay relaylog-format=mixed
最后配置的结果:
主服务器配置:
[mysqld] ... server-id=201bin-log=mysql-bin binlog-format=mixed ...
从服务器配置:
[mysqld] ... server-id=202 # 一般从服务器也用作备份,或者它后面又跟着从服务器,所以一般从服务器也开启binlog bin-log=mysql-bin binlog-format=mixed relay-log=mysql-relay relaylog-format=mixed...
三、连接
配置完之后打开mysql,
主服务器查看是否拥有master功能:
mysql> show master status;
从服务器查看是否拥有slave功能:
mysql> show slave status;
-
主服务器创建replication账号,并分配权限
mysql> grant replication client, replication slave on *.* to repl@'192.168.1.*' identified by 'repl'; ymsql> flush privileges;
-
从服务器用账号连接
mysql> change master to -> master_host='192.168.201', -> master_user='repl', -> master_password='repl', -> master_log_file='mysql-bin.0001', -> master_log_pos=0; # 开启slave mysql> start slave; # 查看是否开启成功 mysql> show slave status \G;
注意:
master_log_file: 表示主服务器正在使用哪个binlog文件
master_log_pos: 表示主服务器的binlog的指针现在在哪里
在主服务器中用 show master status; 指令查看这两个值
四、其他
主主复制、读写分离
读写分离:
-
在php层面来控制,判断执行的是什么语句,比如:select则发送到从服务器,insert、update则发送到主服务器
-
在mysql层控制,使用集群中间件,比如官方的mysql_proxy,还有国产的中间件amoeba
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- mysql主从复制配置(简单,绝对能用)
- mysql主从复制简单配置
- mysql主从复制简单配置
- 简单配置mysql的主从复制
- MySQL学习笔记--简单主从复制配置
- 基于mysql的主从复制之Mycat简单配置和高可用
- mysql主从数据库配置 主从复制(超简单)
- mysql主从复制概述以及配置mysql5.7.10实现简单主从复制
- mysql主从复制的简单配置
- MySQL主从复制之Mycat简单配置和高可用
- MySQL 5.7 Distrib 5.7.8-rc 主从复制的简单配置,备忘
- MySQL主从复制配置流程(win7环境,Linux虚拟机结合简单测试演示)
- mysql主从复制简单配置
- MySQL简单配置主从复制
- Mysql配置数据库主从复制
- MySQL主从复制----半同步与异步的配置
- mysql主从复制配置
- 试试MySQL配置主从复制
- MySQL主从复制配置&一次mysql slave故障的解决过程
- mysql服务器简单主从配置