mysql主从配置学习笔记
2013-10-10 16:31
260 查看
测试环境:windowx xp
主服务器
版本:5.1.33-community-log
地址:127.0.0.1,localhost
端口:3306
从服务器:
版本:5.5.34-log
地址:127.0.0.1,localhost
端口:3307
(1)主服务器上创建一个用于主从同步的用户repl:
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'127.0.0.1' IDENTIFIED BY '123456';
(2)修改主服务器的mysql配置文件,修改之后重启mysql:
主服务器配置文件my.ini:
[mysqld]
server-id = 1
log-bin = mysql-bin
log_bin_index = mysql-bin.index
binlog-do-db = discuz
binlog-ignore-db = information_schema
binlog-ignore-db = mysql
(3)查询主服务器的二进制日志名和偏移量
主服务器上执行命令:SHOW MASTER STATUS;
记录下File: mysql-bin.000001
Position:106
(4)停止主服务的更新操作,复制data目录下的discuz到从服务的data目录。
1. 锁表:FLUSH TABLES WITH READ LOCK;
2. 数据复制到从服务器data目录下。
3. 解锁:UNLOCK TABLES;
(5)修改从服务器的配置文件my.ini,修改之后重启mysql服务。
从服务器配置文件my.ini:
server-id = 2
log-bin = mysql-bin
log_bin_index = mysql-bin.index
relay_log = mysql-relay-bin
relay_log_index = mysql-relay-bin.index
read_only = 1
skip_slave_start = 1
log_slave_updates = 1
replicate-do-db = discuz
replicate-ignore-db = information_schema
replicate-ignore-db = mysql
(6)从服务器的版本不支持配置文件中设置master_host ,需要在从服务器执行以下命令:
SLAVE STOP;
CHANGE MASTER TO
MASTER_HOST = '127.0.0.1',
MASTER_USER = 'repl',
MASTER_PASSWORD = '123456',
MASTER_PORT = 3306,
MASTER_LOG_FILE = 'mysql-bin.000001',
MASTER_LOG_POS = 106,
MASTER_CONNECT_RETRY = 3;
SLAVE START;
SHOW SLAVE STATUS;
可以看到Slave_IO_State:Connecting to master
再次执行命令:SHOW SLAVE STATUS;
可以看到Slave_IO_State:Waiting for master to send event
这样就好了,在主服务器上做一些更新数据,修改表操作,可以看到从服务器也更新了。
如果有错误:last_io_error有错误信息。
主服务器
版本:5.1.33-community-log
地址:127.0.0.1,localhost
端口:3306
从服务器:
版本:5.5.34-log
地址:127.0.0.1,localhost
端口:3307
(1)主服务器上创建一个用于主从同步的用户repl:
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'127.0.0.1' IDENTIFIED BY '123456';
(2)修改主服务器的mysql配置文件,修改之后重启mysql:
主服务器配置文件my.ini:
[mysqld]
server-id = 1
log-bin = mysql-bin
log_bin_index = mysql-bin.index
binlog-do-db = discuz
binlog-ignore-db = information_schema
binlog-ignore-db = mysql
(3)查询主服务器的二进制日志名和偏移量
主服务器上执行命令:SHOW MASTER STATUS;
记录下File: mysql-bin.000001
Position:106
(4)停止主服务的更新操作,复制data目录下的discuz到从服务的data目录。
1. 锁表:FLUSH TABLES WITH READ LOCK;
2. 数据复制到从服务器data目录下。
3. 解锁:UNLOCK TABLES;
(5)修改从服务器的配置文件my.ini,修改之后重启mysql服务。
从服务器配置文件my.ini:
server-id = 2
log-bin = mysql-bin
log_bin_index = mysql-bin.index
relay_log = mysql-relay-bin
relay_log_index = mysql-relay-bin.index
read_only = 1
skip_slave_start = 1
log_slave_updates = 1
replicate-do-db = discuz
replicate-ignore-db = information_schema
replicate-ignore-db = mysql
(6)从服务器的版本不支持配置文件中设置master_host ,需要在从服务器执行以下命令:
SLAVE STOP;
CHANGE MASTER TO
MASTER_HOST = '127.0.0.1',
MASTER_USER = 'repl',
MASTER_PASSWORD = '123456',
MASTER_PORT = 3306,
MASTER_LOG_FILE = 'mysql-bin.000001',
MASTER_LOG_POS = 106,
MASTER_CONNECT_RETRY = 3;
SLAVE START;
SHOW SLAVE STATUS;
可以看到Slave_IO_State:Connecting to master
再次执行命令:SHOW SLAVE STATUS;
可以看到Slave_IO_State:Waiting for master to send event
这样就好了,在主服务器上做一些更新数据,修改表操作,可以看到从服务器也更新了。
如果有错误:last_io_error有错误信息。
相关文章推荐
- java写的MySQL数据库备份和恢复代码:
- 【Mysql学习笔记】浅析mysql的binlog
- MySQL安装问题
- mysql中的set和enum类型的用法和区别
- a20装mysql有问题
- mysql学习(十)多表查询
- mysql 查看索引
- MySql集合查询
- MySql集合查询
- MYSQL创建utf-8格式的数据库
- mysql 的 latin1 支持中文
- mysql性能优化-慢查询分析、优化索引和配置
- mysql 学习笔记
- mysql重命名表
- 用触发器让sqlserver和mysql同步
- (转载)MySQL使用裸设备存…
- MapReduce与MySQL交互
- Mysql数据库中的EXISTS和NOT EXISTS
- MySQL修改root密码的各种方法整理
- MySQL新建用户,授权,删除用户,修改密码