mysql配置一主一从,实现读写分离
1主数据库配置
1.1配置my.ini
打开my.ini文件在mysqld配置下面添加
#id
server-id=1
#二进制日志文件
log-bin="D:/Program Files/MySQL/MySQL Server 5.5/data/mysql-bin"
主从同步主要通过这个二进制日志文件来实现
1.2添加从数据库账号
执行这个sql语句
grant replication slave on *.* to 'root'@'192.168.31.%' identified by 'root';
flush privileges;
,第一个root是账号,@后面是给这个网段授权,后面root是密码
1.3 查看数据库状态
show master status;
记录File和Position的值
Binlog_Ignore_DB是指主从同步时要忽略的数据库
Binlog_Do_DB是指要主从同步的数据库
到此主数据库就配置完成了
2从数据库配置
2.1修改从数据库文件,我的从数据库在linux,所以修改my.cnf
也是在mysqld配置下面添加
server-id=2
log-bin=mysql-bin
replicate-do-db=test
2.2指定主数据库
执行这个sql语句
CHANGE MASTER TO MASTER_HOST='192.168.31.110',
master_PORT=3306,
MASTER_USER='root',
MASTER_PASSWORD='root',
MASTER_LOG_FILE='mysql-bin.000001',
master_log_pos=333;
MASTER_HOST=主机ip
master_PORT=主机端口
MASTER_USER=账号
MASTER_PASSWORD=密码
MASTER_LOG_FILE=上面记录的File文件名
master_log_pos=上面记录的Position的值
2.3 开启主从同步
start slave;
2.4 检验
show slave status \G
主要查看这两个,如果都是yes就代表成功了,整个过程十分简单,欢迎大家评论