主从服务器搭建.docx
需积分: 0 161 浏览量
更新于2021-12-22
1
收藏 507KB DOCX 举报
主从服务器的搭建是数据库高可用性和负载均衡的重要实践,主要目的是实现数据的冗余备份和读写分离,提高系统的稳定性和性能。以下是对主从服务器搭建过程的详细解释:
我们需要准备两台服务器,一台作为主服务器,另一台作为从服务器。在这个例子中,主服务器的IP是192.168.12.36,从服务器的IP是192.168.12.38。
1. **主服务器配置**:
- 关闭防火墙:`iptables -F`,确保数据传输不会被阻止。
- 安装MySQL数据库。
- 修改主服务器的MySQL配置文件`/etc/my.cnf`:
- 启用二进制日志:在`[mysqld]`段落下添加`log-bin=mysql-bin`,用于记录所有改变数据库的SQL语句。
- 设置`server-id`为1,用于区分不同的MySQL实例。
- 重启MySQL服务。
- 创建一个用于复制的MySQL用户,如`slaver`,并分配权限:`GRANT REPLICATION SLAVE ON *.* to 'slaver'@'%' identified by '123456'`,允许此用户从任何地址连接。
- 获取主服务器的状态信息:`show master status`,记录`master_log_file`和`master_log_pos`,这两个值将在从服务器上使用。
2. **从服务器配置**:
- 同样关闭防火墙。
- 安装MySQL数据库。
- 修改从服务器的MySQL配置文件`/etc/my.cnf`,开启`server-id`,设置为2。
- 重启MySQL服务。
- 在从服务器上,通过MySQL命令行设置主服务器信息:
- `CHANGE MASTER TO master_host='192.168.12.36', master_user='slaver', master_password='123456', master_log_file='mysql-bin.000003', master_log_pos=107;`
- 启动复制:`START SLAVE;`
- 检查复制状态:`SHOW SLAVE STATUS\G`,如果`Slave_IO_Running`和`Slave_SQL_Running`都显示为`Yes`,则表明主从复制已经成功建立。
3. **读写分离的应用**:
- 创建两个PHP文件,`zhu.php`用于在主服务器上写入数据,`cong.php`用于从服务器上读取数据。
- `zhu.php`连接主服务器数据库并插入数据。
- `cong.php`连接主服务器数据库并查询数据。
- 注意,由于安全设置,如果尝试在本地(localhost)直接连接Linux下的MySQL,可能会遇到权限问题。解决方法是在主服务器的MySQL中赋予`root`用户远程访问权限。
通过以上步骤,主从服务器的搭建以及读写分离的实现就完成了。在实际应用中,可以根据业务需求进行多台从服务器的扩展,进一步提升系统的读取能力。同时,为了保证数据的一致性,还需要定期对主从服务器进行监控和维护,确保复制的正常运行。

阑珊处的秋月
- 粉丝: 29
最新资源
- 基于AI大模型与云原生技术的全栈开发实战课程合集_包含2025西瓜AI大模型RAG项目实战_Kubernetes云原生全栈_自动驾驶SLAM_物联网智能充电桩_大数据架构_AIGC.zip
- Python100-master (5).zip
- 北京航空航天大学2024年秋季学期面向对象设计与构造先导课程实践项目_基于Java语言的冒险游戏设计与实现_面向对象编程思想实践与教学演示_包含类设计继承多态接口实现设计模式.zip
- 基于高翔博士自动驾驶与机器人中的SLAM技术理论实现的_多传感器融合_三维点云建图_激光雷达视觉惯性里程计_深度学习辅助定位_实时路径规划_自主导航避障_多机协同建图_动态环境.zip
- 北京航空航天大学软件学院2018年夏季学期敏捷开发7天作品_基于SpringBoot的会议中心管理系统后端开发_包含用户管理模块_会议预约模块_场地管理模块_设备管理模块_权限控制.zip
- 基于Electron-Vue框架开发的跨平台桌面宠物测试应用_支持Windows7及以上系统_包含热重载开发环境_集成node-ffi-napi本地模块调用_需要VS201520.zip
- 基于ATMEGA328P-PU单片机与74HC595扩展的多模式智能灯光控制系统_流水灯控制_红外遥控_手机APP远程控制_旋钮电位器调节_ESP8266物联网模块_PWM调光_M.zip
- 基于Vue3和Vite构建的现代化音乐播放器前端项目_音乐播放器_在线音乐平台_音频流媒体_播放列表管理_用户界面设计_响应式布局_跨平台兼容_包含歌曲搜索_歌词显示_播放控制_音.zip
- 同一个解决方案下多个项目:C++生成动态库dll项目和C#调用C++的dll项目
- 使用Keras加载.H5模型文件实现图片预测
- MindSpore 开源框架工程化应用专题赛第二题:遥感图像耕地识别(Baseline)
- cookcookcoo_IHMS_11984_1754321665801.zip
- dangQ123_testForPet_11984_1754321741254.zip
- Dioxane123_Mind-Daemon_47884_1754321658353.zip
- gaoyan1998_SmartHome_47884_1754321712190.zip
- fanji-jared_FJCloudLink_11984_1754321883008.zip