mysql主从复制

今天我们要搭建一个mysql的主从复制,我这边的环境是用的centos7;

  1. 首先我们现在一台机器上安装好mysql,具体步骤:
    去下载rpm文件,然后上传到你的虚拟机上,我这里已经下载好了,地址:https://dev.mysql.com/downloads/repo/yum/

在这里插入图片描述

  1. 然后使用命令yum localinstall … 你的RPM包名 来拉去安装包
  2. 然后使用命令cat /etc/yum.repos.d/mysql-community.repo 来选择你要安装的版本

3.1 可以修改你要下载mysql的版本
3.2 下载的版本是 enabled=1的

  1. 然后使用命令 yum install mysql-community-server 进行安装,注意这个过程可能会很慢,我大概用了6个小时,因为我这边网络速度很慢大概只有30k/s;
  2. 下载完成后使用命令service mysqld start启动
  3. 查看默认密码

7.1 cat /etc/my.cnf -->log-error=/var/log/mysqld.log
7.2 cat /var/log/mysqld.log 查找password这行 最后的就是密码

  1. 修改密码

登录mysql 修改密码验证(可选,学习阶段为了方便,不然要设置一个很复杂的密码)
​> show variables like ‘%password%’; 查看密码规则设置
7.1 set global validate_password.policy=0;这里注意,我是使用的8.0版本之前的版本应改为set global validate_password_policy=0;
7.2 set global validate_password.length=1; 这里同样要注意8.0版本前的要使用validate_password_length
7.3 alter user ‘root’@‘localhost’ identified by ‘123456’;修改密码

上面所有步骤没问题,我们要复制(克隆)一台机器,这样我们两台机器就不需要重复安装mysql了;我这里的两台机器:

在这里插入图片描述


下面我们开始对两台机器进行主从复制配置:

  1. 我这里先配置mysql-1这台机器,我们把这台机器当作主节点,这里我们先新建一个用户,并给其赋通用权限:

create user ‘ant’ identified by ‘123456’;
grant all on . to ‘ant’@’%’;

  1. 修改配置文件,vi /etc/my.cnf 加入如下配置:

server-id=1 这个id可以随便配置,只要不与其它机器重复就可以
log-bin=/var/lib/mysql/mysql-bin 这个是设置mysql的binlog日志目录(文件的同步是根据binlog来进行的,这块知识不在补充)

到这里我们的主机已经搭建好了; 我们连接上mysql,使用命令 show master status;来查看下:

在这里插入图片描述

  1. 下面我们来搭建从机
    同样的我们要修改配置文件 vi /etc/my.cnf, 加入如下配置:

#主从配置
server-id=2
relay-log=/var/lib/mysql/relay-bin
relay-log-index=/var/lib/mysql/relay-bin.index

  1. 然后我们登录到从机的mysql:mysql -uroot -p 然后输入密码:

在这里插入图片描述

  1. 然后我们使用命令

change master to master_host=‘192.168.1.18’,master_port=3306,master_user=‘ant’,master_password=‘123456’,master_log_file=‘mysql-bin.000001’,master_log_pos=155;
注意:master_log_file=‘mysql-bin.000001’,master_log_pos=0;这两个值有时需要根据master的信息写
查看命令:show master status

这样就已经关联上了,但是关联上并不代表开始复制了;我们现在使用命令:show slave status\G 来查看:
在这里插入图片描述
我们可以发现它的状态是NO;这是两个线程,其中Slave_IO_Running是读主机日志的线程,Slave_SQL_Running是执行sql线程;

  1. 那么现在我们启动一下,可以使用命令 start slave;

在这里插入图片描述
这时候就可以了;这里注意一下,如果IO还是NO,要注意克隆的机器中uuid冲突,需要修改/var/lib/mysql/auto.cnf 的uuid;

我们在从机上查看下我们的用户表,

在这里插入图片描述
这里我们可以看到,我们在主机上创建的用户ant,这一已经有了;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值