首先要有多台服务器
再者 一台主服务器写二进制文件
从服务器读取日志,更新自己的服务器。
然后主从服务器搞定,
好了,开始实操。
1,实验环境搭建, ubuntu +mysql 5.7 , centos + mysql 5.6
2,主服务器建立2进制日志,每产生语句或磁盘变化,写进日志,
从服务器建立 relaylog , 主服务器授权复制账号,从服务器利用复制账号来监听主服务器的日志
主: centos 192.168.231.131
从: ubuntu 192.168.231.136
# 主库配置
log_bin=szh-bin
server-id=131
sync-binlog=1
binlog_do_db=plearnu
binlog-format=mixed
root@ubuntu:/etc/mysql/mysql.conf.d# vi mysqld.cnf
# 从库配置
server-id = 136
#log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
#binlog_do_db = include_database_name
#binlog_ignore_db = include_database_name
binlog_do_db =plearnu
binlog_ignore_db=mysql,test
log_bin = /var/log/mysql/mysql-slave-bin.log
为啥要写server_id
应为很多时候从服务器可能又有从服务器,也就是说一台mysql 服务器可能是主数据库,同时也是其他的从服务器。
所以要设置 server_id ,一般技术人员都喜欢那ip后三位写 id值
server_id=131
设置二进制日志, log-bin