mysql和redis主从配置

mysql主服配置:

开启二进制日志,这是必须的

log-bin=mysql-bin //开启MYSQL二进制日志
server-id=1 //服务器ID不能重复
binlog-do-db=db1 //需要做主从备份的数据库名字,多个库只能定义多个属性,不能定义在一个属性里
binlog-do-db=db2
binlog-do-db=db3

添加一个供从服同步数据的账号

GRANT REPLICATION SLAVE ON *.* TO '帐号'@'从服务器IP' IDENTIFIED BY '密码';

重启主服

重启后,设为只读

FLUSH TABLES WITH READ LOCK;

查看并记录二进制文件和位置

show master status;

解除只读状态

UNLOCK TABLES;

开始配置从服务器

server-id=2 //服务器ID不能重复
master-port=3306 //主库的端口
replicate-do-db=db1 //需要做复制的数据库名,同样,多库要设置多个属性
replicate-ignore-table=db1.pre_common_session //自动跳过的表,session表没必要做复制
slave-skip-errors = 1032,1062,126,1114,1146,1048,1396 //自动跳过的错误代码,以防复制出错被中断

手动将主服上数据同步到从服

重启从服

mysql命令行执行

change master to master_host='主服ip', master_user='主服上同步账号', master_password='同步账号密码', master_log_file='主服二进制文件名', master_log_pos=position的值;

 

启动从服
start slave;

查看从服状态

show slave status;
 Slave_IO_Running | Slave_SQL_Running,这两个yes状态就是正常了,否则的话,查看具体error信息

编辑从服配置

master-host=192.168.1.2 //主库A的IP
master-user=rep //刚才在主库创建的帐号
master-password=123 //密码

redis主从设置

主服务器不需要做什么调整,直接在从服务器配置文件里,加上

slaveof 192.168.0.2  6379

从属于 主机ip 端口

发表评论