MySQL主从架构搭建

两台机器 

创建用户:
create user  '用户'@'主机' identified by '123'
授权:
grant  权限 on 级别(全局、库级别、表级别、列级别)  to  '用户'@'主机'  identified by '密码';

revoke 

flush privileges

mysql -u用户 -p密码 -h主机  -P端口 

  例:

mysql> create user 'ds'@'192.168.189.129' identified by '123';

mysql> grant all on *.* to 'ds'@'192.168.189.129' identified by '123';
   
mysql> flush privileges;

  主机MySQL操作

在主(Master主机上的操作)

1.关闭防火墙
service iptables stop
setenforce 0

2.安装MySQL客户端和服务端
yum -y install mysql mysql-server

3.启动MySQL服务
service mysqld start
chkconfig mysqld on

4.更改配置文件,开启二进制日志
vim /etc/my.cnf
	在mysqld下增加内容:
		server-id=1
		log-bin=mysql-bin
跳过错误 : slave_skip_errors=1146 #此步骤在主从配置屡遭失败是可以使用 保存退出后重启MySQL service mysqld restart 5.登录到本地mysql上,给从(slave)主机授权 同步日志的权限 grant replication slave on *.* to 'tom'@'192.168.189.%' identified by '123'; flush privileges; 6.查看二进制日志和位置 mysql> show master status; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000001 | 331 | | | +------------------+----------+--------------+------------------+ 1 row in set (0.00 sec) 主(master)配置完毕

  从机器配置操作从(slave)主机的操作

1.关闭防火墙
service iptables stop
setenforce 0

2.安装MySQL客户端和服务端
yum -y install mysql mysql-server

3.启动MySQL服务
service mysqld start
chkconfig mysqld on

4.更改配置文件,开启中继日志
vim /etc/my.cnf
	在mysqld下增加内容:
	server-id=2
	relay-log=mysql-relay
保存退出后重启MySQL
service mysqld restart

登录本地mysql上,执行同步master二进制日志操作
mysql> stop slave;	\停止slave同步

mysql> change master to
    -> master_host='192.168.189.120',  \master主机的ip地址
    -> master_user='tom',	\登录master主机的账号
    -> master_port=3306,    \端口看情况写,本次实验MySQL,端口3306
    -> master_password='123',	\登录的密码
    -> master_log_file='mysql-bin.000001',  \二进制日志文件
    -> master_log_pos=331;	\二进制日志文件的位置
mysql> start slave;	\开启slave同步
查询slave状态 mysql> show slave status G; 注意以下两个线程的状态都为Yes,说明配置成功 

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

  

  

测试
在主上创建一个数据库,在从查看能够成功同步既是成功!

原文地址:https://www.cnblogs.com/security-guard/p/12067274.html