您的位置:首页 > 数据库 > MySQL

mysql 5.7 主从配置实例

2017-07-15 21:56 197 查看

第一部分:创建测试数据库

1.1 创建shop数据库

create database shop;

1.2 使用数据库

use shop;

1.3 创建数据库

create table goods(

id int auto_increment,

name varchar(200),

primary key (id)

)engine=MyISAM charset=utf8;

1.4 插入数据

insert into goods values(NULL,’jingshan’);

或者:

insert into goods values (0,’jingshan2’);

第二部分:配置主从

实现思路:

第一步:主服务器把操作语句保存到bin-log中

第二步:从服务器启动线程向主服务器mysql发起请求,把主服务器中的bin-log的操作复制到自己的 relay-log中。

第三步:执行这些语句。

2.1 查找配置文件

find / -name my.cnf

2.2 修改配置文件,单独修改:

主服务器:

修改位置:

nano /etc/mysql/mysql.conf.d/mysqld.cnf

修改配置项:

# 取消IP绑定

#bind-address = 127.0.0.1

# 设置服务器ID 及 二进制日志

server-id = 137

log_bin = /var/log/mysql/mysql-bin.log

重启服务器:

service mysql restart

从服务器:

修改位置:

nano /etc/mysql/mysql.conf.d/mysqld.cnf

修改配置项:

# 取消IP绑定

#bind-address = 127.0.0.1

# 设置服务器ID,从服务可以不记录二进制

server-id = 138 #推荐大于主的ID,一般推荐使用IP末位

#log_bin = /var/log/mysql/mysql-bin.log

重启服务器:

service mysql restart

2.3 在主服务器添加用户

添加用户模版:

CREATE USER ‘mysqlUser’@’ip’ IDENTIFIED BY ‘mysqlPassword’;

GRANT REPLICATION SLAVE ON . TO ‘mysqlUser’@’ip’;

添加用户实例:

create user ‘myslave’@’%’ identified by ‘123456’;

grant replication slave on . to ‘myslave’@’%’;

解读:

创建用户名为 myslave 密码为 123456 的不限制IP连接的用户,并且赋与 从服务器的权限。

2.4 导出主服务器数据:可以用来先同步数据

mysqldump –all-databases –master-data -uroot -p123456 > /root/1.db

2.5 查看 master 状态

show master status;

2.6 启动从服务的master指向主服务器

2.6.1 连接主服务器

mysql> change master to

-> master_host = ‘192.168.50.137’,

-> master_user = ‘myslave’,

-> master_password = ‘123456’,

-> master_log_file = ‘mysql-bin.000001’,

-> master_log_pos = 1004;

关键点:是上面的 master_log_file = mysql-bin.000001 第二个 master_log_pos = 1004, 这两个参数,是在主服务器中,通过 show master status;查看即可。

2.6.2 启动从服务器

start slave;

2.6.3 查看状态

show slave status \G;

第三部分:验证数据。

启动完成。验证数据即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql