Mysql主从复制

mysql主从复制@TOC

第一步、防火墙放行
查看firewall防火墙是否放行3306端口
firewall-cmd --list-all
如果没有放行,则firewall防火墙添加3306端口放行
firewall-cmd --permanent --zone=public --add-port=3306/tcp
关闭selinux
vi /etc/selinux/conf
SELINUX=disabled

第二步、
2.1修改master和slave配置文件
vi /etc/my.cnf #Master
server_id=1
log_bin=binlog
log_bin_index=binlog.index
relay_log=mysql_relaylog
relay_log_index=mysql_relaylog.index

vi /etc/my.cnf	#Slave
server_id=2
log_bin=binlog
log_bin_index=binlog.index
relay_log=mysql_relaylog
relay_log_index=mysql_relaylog.index

2.2查看mysql初始密码
cat /var/log/mysql.log | grep password

2.3如果mysql密码输入错误
vi /etc/my.cnf
添加 skip-grant-tables
登陆mysql刷新权限
flush privileges;

重启系统
开启mysql数据库(两台机器上都要执行)
systemctl start mysqld.service

第三步、Master和slave都需要修改

   如果密码输入正确直接执行以下SQL命令
修改root用户的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NXyd-ott@3030'
给root用户授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'WITH GRANT OPTION;
修改root可以通过其他地址登陆
update user set host='%' where user='root';

如果有2.3中的情况存在,需要执行以下操作,如果不存在,则不需要执行
vi /etc/my.cnf
删除 skip-grant-tables
systemctl restart mysqld.service;

第四步、查看master和slave数据库
mysql> show databases;
±-------------------+
| Database |
±-------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
±-------------------+
4 rows in set (0.00 sec)

第五步、在Master数据库中添加Slave数据库同步用户并授权
create user ‘oms’@‘192.168.100.%’ identified by ‘NXyd-ott@3030’;
grant replication slave on . to ‘oms’@‘192.168.100.%’;

第六步、设置Slave同步信息

stop slave;

CHANGE MASTER TO
MASTER_HOST=‘192.168.100.129’,
MASTER_USER=‘oms’,
MASTER_PASSWORD=‘NXyd-ott@3030’,
MASTER_LOG_FILE=‘binlog.000001’,
MASTER_LOG_POS=154;

start slave;
show slave status\G;
找到以下两条状态显示,如果全为YES,则表示主备设置成功
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

Master-Slave到此已经完成
如果需要Master-Master做双机互为主备

第七步、在Slave数据库中添加Master数据库同步用户并授权
create user ‘oms’@‘192.168.100.%’ identified by ‘NXyd-ott@3030’;
grant replication slave on . to ‘oms’@‘192.168.100.%’;

第八步、设置Master同步信息

stop slave;

CHANGE MASTER TO
MASTER_HOST=‘192.168.100.129’,
MASTER_USER=‘oms’,
MASTER_PASSWORD=‘NXyd-ott@3030’,
MASTER_LOG_FILE=‘binlog.000002’,
MASTER_LOG_POS=154;

start slave;
show slave status\G;
找到以下两条状态显示,如果全为YES,则表示主备设置成功
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

到此为止Master-Master双机互为主备已经全部设置成功。

MHA

生成SSH密钥对
ssh-keygen
将公钥复制到每个需要群集的服务器中(复制完成后,相互之间可以通过SSH命令登陆而不需要密码)
for i in 129 130; do ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.100.$1;done

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值