master 服务器
vi /etc/my.cnf
1.【必须】主服务器唯一ID
server-id =1
2.【必须】启用二进制日志
log-bin=自己本地的路径/mysqlbin
3.【可选】启动错误日志
log-err=自己本地的路径/mysqlerr
4.【可选】根目录
basedir="自己本地路径"
5.【可选】临时目录
tmpdir="自己的本地路劲"
6.【可选】数据目录
datadir="自己本地路径/Data/"
7.read-only=0
主机,读写都可以
8.【可选】设置不要复制的数据库
binlog-lgnore-db=mysql
9.【可选】设置需要复制的数据
binlog-do-db=需要复制的主数据库名字
log-bin = mysql-bin
#设置服务id,主从不能一致
server-id = 1
#设置需要同步的数据库
binlog-do-db=store_db
binlog-do-db=product_db_l
binlog-do-db=product_db_2
#屏蔽系统库同步
binlog-ignore-db=mysql
binlog-ignore-db=i nformation_schema
binlog-ignore-db=performance_schema
# 授权
GRANT REPLICATION SLAVE ON*.* TO 'crt'@'从机器数据库IP'IDENTIFIED BY '123456';
*.* 所有库下的所有表
crt 从库 user_name
123456 从库 password
# 刷新
flush privileges;
# 查询master的状态
show master status;
# 记录下File和Position的值
# 执行完此步骤后不再执行主服务器MySQL,防止主服务器状态值变化
- file: binlog 文件名称
- Position:读取偏移量
slave 服务器
vi /etc/my.cnf
server-id=2 #设置server-id,必须唯一
mysql> CHANGE MASTER TO
-> MASTER_HOST='182.92.172.80', //主库地址
-> MASTER_USER='rep1', //master 授权帐号
-> MASTER_PASSWORD='slavepass',//用户密码
-> MASTER_LOG_FILE='mysql-bin.000003',//数据同步文件名
-> MASTER_LOG_POS=73;//数据同步位置
mysql>start slave;
mysql> show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 182.92.172.80
Master_User: rep1
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000013
Read_Master_Log_Pos: 11662
Relay_Log_File: mysqld-relay-bin.000022
Relay_Log_Pos: 11765
Relay_Master_Log_File: mysql-bin.000013
Slave_IO_Running: Yes //yes 说明配置成功
Slave_SQL_Running: Yes //yes 说明配置成功
Replicate_Do_DB:
Replicate_Ignore_DB:
...