mysql5.7.27主从配置

一、.环境准备:

1)服务器准备:

主服务器:

192.168.137.158 

从服务器:

192.168.137.155

2)主从服务器安装mysql数据库:

此处省略

注:请参考我的mysql5.7.27安装,请选择离线安装方式

二、主服务器配置:

1)修改mysql数据库配置文件

vim /etc/my.cnf

在[mysqld]加入下面的内容:

# 服务的唯一编号
server-id = 1
# 开启mysql binlog功能
log-bin = mysql-bin
# binlog记录内容的方式,记录被操作的每一行
binlog_format = ROW
# 减少记录日志的内容,只记录受影响的列
binlog_row_image = minimal
# 指定需要复制的数据库名为testdb
binlog-do-db = testdb

2)重启服务:

service mysqld restart

3)创建从库同步数据的账号:

mysql -uroot -p (其中“root”是账号名,输入密码进入mysql终端模式)

grant replication slave on *.* to 'root'@'192.168.197.136' identified by '123456';

flush privileges;(刷新权限表结构)

注:root:数据库账户名,“123456”:密码(可能会出现Your password does not satisfy the current policy requirements,请修改密码数据库密码策略)

4)查看主库状态:

show master status\G

注:不要加“”,否则会报(No query specified  ==>出现此错误

三、配置从库

1)修改配置文件

vim /etc/my.cnf

在[mysqld]加入下面的内容:

# 服务的唯一编号
server-id = 2
# 开启mysql binlog功能
log-bin = mysql-bin
# binlog记录内容的方式,记录被操作的每一行
binlog_format = ROW
# 减少记录日志的内容,只记录受影响的列
binlog_row_image = minimal
# 指定需要复制的数据库名为testdb
binlog-do-db = testdb

2)重启服务:

service mysqld restart

3)执行同步命令

mysql -uroot  -p(输入密码,进入mysql终端模式)

 

# 设置主服务器ip,同步账号密码,同步位置 :

change master to master_host='192.168.137.158',master_user='root',master_password='123456',master_log_file='mysql-bin.000002',master_log_pos=2380;

注:master_log_file='mysql-bin.000002'(要与配置主库的第四xiao步,截图中的file一致)

4)启动同步功能:

start slave;

5)查询从库状态

show slave status\G

注:Slave_IO_Running和Slave_SQL_Running的状态都为Yes时,才说明配置成功。

三、测试:

1)在主库上创建testdb数据库,即

create schema testdb;(如对create schema语法不熟悉可以自行百度查看)

2)创建测试表:

use testdb;  

CREATE TABLE test_config (id varchar(200) NOT NULL ,name varchar(1024) DEFAULT NULL ,description varchar(2000) DEFAULT NULL ,PRIMARY KEY (id)) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;

3)插入数据测试:

insert into test_config(id, name, description) values('1', '测试', '测试一下');

4)在从库上查看schemas模式:

show schemas;

注:如果出现test_config表说明主从配置成功

5)在从库上查看表,,并查看数据:

use testdb;

show tables;

select * from test_config;

四、可能出现的问题:

1)第一种情况:Slave_IO_Running:NO

查询主从库状态,确保如下文件名一致

进入mysql终端,设置步骤:

① slave stop;

② CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000002', MASTER_LOG_POS=0;

③ slave start;

④ show slave status\

2)第二种情况:Slave_SQL_Running:NO

进入mysql终端,设置步骤

① slave stop;

② SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; START SLAVE;

③ slave start;

④ show slave status\

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值