设置MySQL主从同步
1. 配置主服务器
1.1 编辑my.cnf文件,配置主服务器ID。
[mysqld] log-bin=mysql-bin server-id=1
relay-log = relay-bin
relay-log-index = relay-bin.index
1.2 重启主服务器。
2. 配置从服务器
2.1 编辑my.cnf文件,配置从服务器ID。
[mysqld] server-id=2
2.2 重启从服务器。
3. 创建同步帐号
3.1 创建复制用户。用户名和密码将会明文存储在同步信息文件master.info中。
mysql> CREATE USER 'repl'@'%.mydomain.com' IDENTIFIED BY 'slavepass';
3.2 授权复制用户
mysql> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%.mydomain.com';
4. 获取binlog同步点信息
4.1 暂停主服务器的写入。在对主服务器加锁后,当前会话不能退出,否则会自动释放锁。
mysql> FLUSH TABLES WITH READ LOCK;
4.2 获取binlog文件名和偏移量。
mysql > SHOW MASTER STATUS;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 | 73 | test | manual,mysql |
+------------------+----------+--------------+------------------+
5. 创建主服务器快照
5.1 快照需要排除的文件列表。
- mysql库相关的文件
- master.info信息文件
- 主服务器产生的binlog文件
- 其他中转日志文件
5.2 确保获取了同步点信息。
5.3 关闭主服务器。
shell> mysqladmin shutdown
5.4 同步主服务器数据
shell> rsync -av mysql/ work@lab08:/home/work/local/mysql/ --exclude=var/mysql-bin.* --exclude=var/slow.log
5.5 启动主服务器。
6. 在从服务器设置同步信息
6.1 命令行设置
CHANGE MASTER TO
MASTER_HOST='master_host_name',
master_host_name
-> MASTER_PORT=1127,
MASTER_USER='replication_user_name',
replication_user_name
MASTER_PASSWORD='replication_password',
replication_password
MASTER_LOG_FILE='recorded_log_file_name',
recorded_log_file_name
MASTER_LOG_POS=recorded_log_position;
recorded_log_position
6.2 启动slave同步
mysql> SLAVE START\G;
6.3 查看slave同步状态
mysql> SHOW SLAVE STAUTS\G;
如果观察到以下都为Yes,表明开始正常同步了。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
7 设置从库只读
有两种方式设置从库只读,修改配置或设置全局变量。
7.1 修改my.cnf文件
#从库是否只读,0表示可读写,1表示只读
read-only=1
7.2 动态设置参数
set global read_only=true;
参考手册
http://dev.mysql.com/doc/refman/5.0/en/replication-howto.html
posted on 2013-08-01 15:52 SYSTEM ADMINISTRATION 阅读(363) 评论(0) 编辑 收藏 举报
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· 开发的设计和重构,为开发效率服务
· 从零开始开发一个 MCP Server!
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
2009-08-01 路由器与集线器、交换机的根本区别
2009-08-01 交换机 路由器和集线器的区别
2009-08-01 交换机、集线器、路由器的功能介绍
2009-08-01 集线器(HUB)、交换机(Switch)、路由器(Router)
2009-08-01 服务器如何识别路由器下的多台机器?
2009-08-01 交换机和路由器
2009-08-01 TCP/IP协议