MySQL5.6.21主从搭建实战指南

资源类型:80-0.net 2025-06-05 03:52

mysql5.6.21 搭建主从简介:



MySQL 5.6.21 主从数据库搭建指南 在数据库管理系统中,主从复制是一种常见的配置方式,旨在提高数据的可用性和冗余性

    通过搭建主从数据库,可以实现读写分离、负载均衡和灾难恢复等多种功能

    本文将详细介绍如何使用MySQL 5.6.21版本搭建主从数据库

     一、准备工作 在开始搭建主从数据库之前,需要做好以下准备工作: 1.安装MySQL 5.6.21:确保主服务器和从服务器上都已经安装了MySQL 5.6.21版本

     2.配置网络环境:确保主服务器和从服务器之间能够互相通信,可以通过IP地址进行访问

     3.备份数据:在进行主从配置之前,建议对主服务器上的数据进行备份,以防配置过程中出现意外情况导致数据丢失

     二、配置主服务器 1.修改MySQL配置文件 首先,需要修改主服务器上的MySQL配置文件(my.ini或my.cnf),添加或修改以下参数: 【mysqld】 server-id = 1 设置服务器ID,主服务器ID必须唯一 log-bin = mysql-bin 启用二进制日志,并设置日志文件名前缀 binlog-do-db =your_database 指定需要同步的数据库,可以指定多个数据库 配置完成后,重启MySQL服务以使配置生效

     2.创建并授权同步账号 在主服务器上,需要创建一个用于从服务器连接和同步的账号,并授予相应的权限

    可以通过以下SQL语句进行创建和授权: CREATE USER repl@从服务器IP IDENTIFIED BY repl_password; GRANT REPLICATION SLAVE ON. TO repl@从服务器IP; FLUSH PRIVILEGES; 注意:将上述SQL语句中的`从服务器IP`替换为实际的从服务器IP地址,`repl_password`替换为自定义的密码

     3.查看主服务器状态 在配置完主服务器后,需要查看主服务器的状态,并记录下相关的参数,以便在从服务器上进行配置

    可以使用以下SQL语句查看主服务器状态: SHOW MASTER STATUS; 执行该语句后,将返回以下信息: +------------------+----------+--------------+------------------+-------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +------------------+----------+--------------+------------------+-------------------+ | mysql-bin.000001 | 107 | your_database| | | +------------------+----------+--------------+------------------+-------------------+ 需要记录下`File`和`Position`的值,这两个参数在从服务器配置时需要用到

     三、配置从服务器 1.修改MySQL配置文件 在从服务器上,同样需要修改MySQL配置文件(my.ini或my.cnf),添加或修改以下参数: 【mysqld】 server-id = 2 设置服务器ID,从服务器ID必须唯一,且与主服务器不同 relay-log = relay-bin 设置中继日志文件名前缀(可选) replicate-do-db =your_database 指定需要同步的数据库,必须与主服务器上的数据库一致 配置完成后,重启MySQL服务以使配置生效

     2.配置从服务器连接主服务器 在从服务器上,需要使用`CHANGE MASTER TO`语句配置从服务器连接主服务器的相关信息

    可以使用以下SQL语句进行配置: CHANGE MASTER TO MASTER_HOST=主服务器IP, MASTER_PORT=3306, MASTER_USER=repl, MASTER_PASSWORD=repl_password, MASTER_LOG_FILE=mysql-bin.000001, MASTER_LOG_POS=107; 注意:将上述SQL语句中的`主服务器IP`替换为实际的主服务器IP地址,`repl`和`repl_password`分别替换为在主服务器上创建的同步账号和密码,`MASTER_LOG_FILE`和`MASTER_LOG_POS`分别替换为主服务器状态中的`File`和`Position`值

     3.启动从服务器同步进程 在从服务器上,使用以下SQL语句启动从服务器同步进程: START SLAVE; 可以使用以下SQL语句查看从服务器同步状态: SHOW SLAVE STATUSG; 执行该语句后,将返回详细的从服务器同步状态信息

    需要关注以下两个参数的值: - `Slave_IO_Running`:表示I/O线程的运行状态,应该为`Yes`

     - `Slave_SQL_Running`:表示SQL线程的运行状态,也应该为`Yes`

     如果这两个参数的值都为`Yes`,则表示从服务器同步进程已经成功启动,并且正在正常运行

     四、验证主从复制 在配置完主从数据库后,需要进行验证以确保主从复制功能正常

    可以通过以下步骤进行验证: 1.在主服务器上创建测试数据 在主服务器上,创建一个新的数据库或表,并插入一些测试数据

    例如: CREATE DATABASEtest_db; USE test_db; CREATE TABLEtest_table (id INT PRIMARY KEY, nameVARCHAR(50)); INSERT INTOtest_table (id,name)VALUES (1, Test1),(2, Test2); 2.在从服务器上检查数据同步 在从服务器上,检查是否已经同步了主服务器上的测试数据

    可以登录到从服务器上的MySQL数据库,并查询相应的数据库和表: SHOW DATABASES; 检查是否已经同步了test_db数据库 USE test_db; - SELECT FROM test_table; # 检查是否已经同步了test_table表中的数据 如果从服务器上的查询结果与主服务器上的查询结果一致,则表示主从复制功能正常

     五、常见问题及解决方案 在搭建主从数据库的过程中,可能会遇到一些常见问题

    以下是一些常见问题及其解决方案: 1.主从服务器UUID相同 如果在配置从服务器时遇到`Slave_IO_Running`为`No`的情况,并且错误信息显示“Fatal error: The slave I/O thread stops because master and slave have equal MySQL server UUIDs; these UUIDs must be different for replication to work.”,则表示主从服务器的UUID相同

     解决方案:修改从服务器的UUID

    可以在从服务器的MySQL数据目录中(通常是`/var/lib/mysql/`),找到名为`auto.cnf`的文件,该文件包含了服务器的UUID

    可以手动修改该文件中的UUID值,然后重启MySQL服务

     2.网络问题 如果主从服务器之间无法通信,可能会导致`Slave_IO_Running`为`No`的情况

     解决方案:检查主从服务器之间的网络连接,确保它们能够互相访问

    可以使用`ping`命令测试网络连接是否正常

     3.权限问题 如果在配置从服务器时遇到权限问题,可能会导致`Slave_IO_Running`或`Slave_SQL_Running`为`No`的情况

     解决方案:检查在主服务器上创建的同步账号是否具有足够的权限

    可以使用`SHOW GRANTS FOR repl@从服务器IP;`语句查看该账号的权限

     4.二进制日志问题 如果主服务器的二进制日志被删除或损坏,可能会导致从服务器无法同步数据

     解决方案:确保主服务器的二进制日志没有被删除或损坏

    可以通过`SHOW BINARY LOGS;`

阅读全文
上一篇:MySQL事务隔离级别详解

最新收录:

首页 | mysql5.6.21 搭建主从:MySQL5.6.21主从搭建实战指南