MySQL 主从配置
2016-06-20 11:47
639 查看
mysql主从复制指两个服务器之间数据库的同步,当主服务器的数据进行了变更,从服务器也会自动更新,其过程是通过bin-log日志实现的,本质是binlog日志的传输。
mysql主从分两个角色
1、主服务器 master
2、从服务器 slave
主服务器 MySQL 配置#/etc/my.cnf [mysqld] log-bin=mysql-bin //[必须]启用二进制日志 server-id=1 //[必须]服务器唯一ID,默认是1,一般取IP最后一段 binlog-do-db=target_db_name //[可选] 设置需要同步的数据,如果不设置将同步所有数据库 binlog_ignore_db=mysql //[可选] 忽略mysql数据,因为mysql数据库是mysql的一些帐户存放,这个没有必要同步
从服务器 MySQL 配置
[mysqld] log-bin=mysql-bin //[必须]启用二进制日志 server-id=2 //[必须]服务器唯一ID,默认是1,一般取IP最后一段
登录主服务器为从服务器授权
GRANT REPLICATION SLAVE ON *.* to 'sync'@'%' identified by 'sync'; //不建议使用root
查看主服务器的状态
show master status; mysql> show master status; +------------------+----------+------------------------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+------------------------------+------------------+ | mysql-bin.000075 | 101236 | target_db_name,target_db_name| mysql,mysql | +------------------+----------+------------------------------+------------------+
登录从服务器配置
mysql> CHANGE MASTER TO -> MASTER_HOST = 'master_ip', -> MASTER_USER ='sync', -> MASTER_PASSWORD='sync_pwd', -> MASTER_PORT=3306, -> MASTER_LOG_FILE='mysql-bin.000075', -> MASTER_LOG_POS=101236;
开启从服务器的复制功能
START SLAVE
开查看从服务器的状态
show slave status # 查询后存在如下键值 Slave_IO_Running = Yes Slave_SQL_Running = Yes
修改从服务器同步配置信息
CHANGE MASTER TO MASTER_HOST='another_master_ip'; CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.000012'MASTER_LOG_POS=32106;
SLAVE STOP // 停止同步 SLAVE START // 恢复同步
相关文章推荐
- mysql 分析查找执行效率慢的SQL语句
- mysql常用语句
- mysql 格式化日期 DATE_FORMAT,FROM_UNIXTIME,UNIX_TIME等
- MySql存储过程学习知识小结
- MySQL 时间戳转换成秒
- Nodejs mysql 数据库增、删、改、查 操作
- 如何将 JSON, Text, XML, CSV 数据文件导入 MySQL
- 合理配置MySQL缓存 提高缓存命中率
- Unix 安装MySQL
- mysql 主从踩的一个小坑
- mysql允许远程调用、数据库创建语句指定字符
- mysql-5.7.13-winx64 解压版 安装部署
- mysql Last_IO_Errno: 1593 报错
- mysql查询某字段重复的记录
- 在mysql中,DATE_FORMAT(date, format) 函数根据format字符串格式化date值。
- MySQL错误问题
- MySQL 拼接成一个字符串
- 扛得住双11的Mysql---硬件因素
- MySQL清空表数据
- mysql的max_allowed_packet过小问题修改