centos7 mysql5.6主从_CentOS7+MySQL5.6配置主从

一、安装环境

操作系统:CentOS-7-x86_64-Minimal-1810.iso

安装来源:mysql57-community-release-el7-10.noarch.rpm

数据库版本:mysql57-community-release-el7-10.noarch

数据库地址:

192.168.176.218(主)

192.168.176.219(从)

首先保证3306端口的可用,或者关闭防火墙,两台服务器可以互相ping通过

准备工作:

两台数据库先进行手动数据同步,已完成请略过。

主库导出SQL脚本

mysqldump -uroot -pmysql --all-databases --lock-all-tables > ~/master_db.sql

# 说明

-u :用户名

-p :示密码

--all-databases :导出所有数据库

--lock-all-tables :执行操作时锁住所有表,防止操作时有数据修改

~/master_db.sql :导出的备份数据(sql文件)位置,可自己指定

从库执行SQL脚本进行还原

mysql –uroot –pmysql < master_db.sql

二、Master的配置

1、修改MySQL配置文件

[root@localhost ~]# vim /etc/my.cnf

2、编辑后如下:

[mysqld]

#开启二进制日志

log-bin=mysql-bin

#标识唯一id(必须),一般使用ip最后位

server-id=2

#不同步的数据库,可设置多个(可以不设置)

binlog-ignore-db=information_schema

binlog-ignore-db=cluster

binlog-ignore-db=mysql

#指定需要同步的数据库(和slave是相互匹配的),可以设置多个(可以不设置)

binlog-do-db=test

3、 添加日志存储方式和规则(选填)

#设置存储模式不设置默认

binlog_format=MIXED

#日志清理时间

expire_logs_days=7

#日志大小

max_binlog_size=100m

#缓存大小

binlog_cache_size=4m

#最大缓存大小

max_binlog_cache_size=521m

4、重启MySQL

systemctl restart mysqld.service

或者:

service mysqld restart

5、登录MySQL主库,设置允许从库获得主库日志

#给从库放权限

#创建用户

mysql>GRANT FILE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave123';

#修改用户权限

mysql>GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave123';

#刷新权限

mysql>FLUSH PRIVILEGES;

6、查看主库信息

mysql> show master status;

+------------------+----------+--------------+----------------------------------+-------------------+

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+------------------+----------+--------------+----------------------------------+-------------------+

| mysql-bin.000001 | 1296 | ufind_db | information_schema,cluster,mysql | |

+------------------+----------+--------------+----------------------------------+-------------------+

1 row in set (0.00 sec)

mysql>

注:如果执行这个步骤始终为Empty set(0.00 sec),那说明前面的my.cnf没配置对

三、Slave的配置

1、修改从库配置,编辑后如下:

server-id=3

#开启二进制日志(可以不配置)

log-bin=mysql-bin

binlog-ignore-db=information_schema

binlog-ignore-db=cluster

#与主库配置一直

binlog-ignore-db=mysql

replicate-do-db=test

replicate-ignore-db=mysql

log-slave-updates

slave-skip-errors=all

slave-net-timeout=60

2、登录MySQL从库,设置连接主库配置,并且开启同步

#同步连接配置

mysql> change master to master_host='192.168.176.218', master_user='slave', master_password='slave123',master_log_file='mysql-bin.000001', master_log_pos=1296;

#开启同步

mysql> start slave

#关闭同步

#mysql> stop slave

3、查看从库同步状态信息

mysql> show slave status \G;

#确认以下信息,两个都为YES则表示设置同步成功

Slave_IO_Running: Yes  //显示yes为成功

Slave_SQL_Running: Yes  //显示yes为成功,如果为no,一般为没有启动master

四、测试同步

测试同步可以通过新增\修改数据库、表、视图等确认

也可以通过对表数据的操作的变化来确认

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值