数据库的MySQL5.7.24版本的GTID单主单从复制的相关步骤

本文详细介绍了如何在CentOS7环境下配置MySQL5.7的主从复制,包括环境搭建、主机名修改、域名解析、SSH公钥推送、SELinux和防火墙关闭、时间同步、软件安装及启动、初始密码获取、简单密码限制解除、配置文件调整、远程账户授权、服务重启等步骤。

环境:centos7u5
master 192.168.146.110
slave 192.168.146.129

所有机器都作以下操做:

修改主机名称
    分别为:master和slave

域名解析
    [root@master ~]# cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
   192.168.146.110 master
    192.168.146.129 slave

推ssh公钥  
	ssh-copy-id IP  
关闭selinux和防火墙
    [root@master ~]# setenforce 0 && systemctl stop firewalld
确保时间一致     确保主机之间的连通性------>使用ntp时间同步服务器
ntpdate -b 时间同步的服务器

下载并安装Mysql5.7(所有机器都做),找包的话可以在官网上找到
包名:mysql57-community-release-el7-9.noarch.rpm

启动mysql:(所有机器都做)
systemctl start mysqld

注意:

    mysql5.7启动之后自带密码,不能直接登陆
    获取mysql5.7初始启动密码:
    grep passw /var/log/mysqld.log 
     	2018-05-15T07:12:00.852544Z 1 [Note] A temporary password is generated for root@localhost: N-+e*ZL:_3gh
测试密码是否可用:   
mysql -uroot -p'N-+e*ZL:_3gh'     

去掉简单密码限制功能:
vim /etc/my.cnf //追加如下选项
[mysqld]
validate_password=off 可以使用简单的密码进行操作
重启服务
修改成简单密码:现在密码为123


master:

修改配置文件:
    #vim /etc/my.cnf    
    [mysqld]
    validate_password=off

    log-bin
    server-id=1
    gtid_mode=ON
    enforce_gtid_consistency=1    
    
授权远程账户:
mysql> grant replication slave,super,reload on *.* to slave@'%' identified by '123';
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;

slave:

修改配置文件
    # vim /etc/my.cnf
        [mysqld]
        validate_password=off

        log-bin
        server-id=2
        gtid_mode=ON
        enforce_gtid_consistency=1    

重启master和slave上的mysqld:
    [root@master mysql]# systemctl restart mysqld
    [root@slave mysql]# systemctl restart mysqld
    
继续配置slave:
    # mysql -u root -p123  
    mysql > change master to
                   master_host='master',
                   master_user='slave',
                   master_password='123',
                   master_auto_position=1;
    mysql > start slave;                       //启动slave角色
    mysql > show slave status\G         //查看状态

测试:在主库上进行创建库和表,可以在从库上得到相应的数据

出现的报错:
在这里插入图片描述出现这个问题,在我的机器上的解决方案是,我在部署这个环境的时候,偷懒操作大致的造作也已经比较熟悉,我就在没起数据库的状态下,在/etc/my.cnf的配置文件里进行相应的修改,后面查询各种排错的方式发现都不行,后面只能重新将环境清空然后重新来过,找到这一个解决方案
方案如下
安装完成数据库后,启动,修改完数据库的初始密码后,在进行配置文件的修改就可以了。这个报错也就迎刃而解了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值