根据提供的文件信息,本文将详细解释Windows环境下MySQL主从备份及主从切换的过程与关键配置。主要内容包括: 1. **主从备份的步骤详解** 2. **主从切换的步骤详解** 3. **多实例环境下的MySQL配置示例** ### 一、主从备份的步骤详解 #### 1. 设置`my.ini`配置文件 - **端口号**:默认MySQL的端口号为3306,如果有多个实例,则需要设置不同的端口号。例如,这里将端口号修改为9306。 - **`server-id`**:这是一个唯一的标识符,用于区分不同的MySQL实例。主库的`server-id`通常设置为1,而从库则从2开始依次递增。 - **`log-bin`**:启用二进制日志记录,这对于实现主从复制至关重要。 - **`binlog-do-db`**:指定需要同步的数据库名,可以添加多个此项来指定多个数据库。 - **`binlog-ignore-db`**:指定不需要同步的数据库,可以不设置此项。 #### 2. 设置主库同步账户 在主库上创建一个专门用于同步的账户,并赋予其必要的权限。这一步骤对于实现主从复制非常重要。 ```sql GRANT REPLICATION SLAVE ON *.* TO 'root'@'192.168.0.32' IDENTIFIED BY 'root'; ``` 这里,`root`是用于同步的账户名,`192.168.0.32`是主库的IP地址,最后一个`root`是密码。 #### 3. 设置从库的启动参数 - **端口号**:与主库不同,例如这里设置为8306。 - **`server-id`**:不同于主库,例如这里设置为2。 - **`log-bin`**:同样需要启用二进制日志记录。 - **`binlog-do-db`**:指定需要同步的数据库名。 - **`server-uuid`**:确保两个数据库的`server-uuid`不同,以避免同步错误。 ### 二、主从切换的步骤详解 #### 1. 设置主库为只读,同步所有数据至从库 - 将主库设为只读模式,以确保所有未完成的事务都被处理完成。 - 在从库上执行`STOP SLAVE;`来停止同步过程。 - 使用`SHOW MASTER STATUS;`命令查看主库上的状态信息(如日志文件名和位置等)。 - 在从库上使用这些信息来重新启动同步过程。 #### 2. 从库同步完毕,设置从库参数为主库 - 确保从库已经完全同步了主库的数据。 - 修改从库的`server-id`为原来的主库的`server-id`。 - 调整`log-bin`、`binlog-do-db`等配置,使其与原来的主库一致。 #### 3. 设置原主库为从库 - 修改原主库的`server-id`为新的唯一值。 - 调整`log-bin`、`binlog-do-db`等配置,使其符合从库的要求。 - 创建一个新的同步账户,并在新的主库上授予相应的权限。 - 在新的从库上配置同步参数,并启动同步过程。 ### 三、多实例环境下的MySQL配置示例 #### 1. 启动第一个MySQL实例(主库) - **`my.ini`** 配置文件示例: ```ini [client] port=9306 [mysql] default-character-set=utf8 [mysqld] port=9306 server_id=1 log-bin=mysql-bin binlog-do-db=test ``` - 注册服务并启动: ```bash E:\upupw2\MySQL\bin>mysqld --install mysql2 --defaults-file="E:\upupw2\MySQL\my.ini" Servicesuccessfullyinstalled. E:\upupw2\MySQL\bin>sc start mysql2 ``` #### 2. 启动第二个MySQL实例(从库) - **`my.ini`** 配置文件示例: ```ini [client] port=8306 [mysql] default-character-set=utf8 [mysqld] port=8306 server_id=2 log-bin=mysql-bin binlog-do-db=test ``` - 注册服务并启动: ```bash E:\upupw2\MySQL\bin>mysqld --install mysql3 --defaults-file="E:\upupw2\MySQL\my.ini" Servicesuccessfullyinstalled. E:\upupw2\MySQL\bin>sc start mysql3 ``` 以上就是关于Windows环境下MySQL主从备份及主从切换的具体步骤与配置细节。通过这些步骤,可以有效地实现数据的备份与切换,提高系统的可用性和可靠性。





















windows下mysql数据库主从备份及主从切换设置
#####################################################################
主从备份的步骤:
1. 设置my.ini配置文件
2. 设置主库同步账户
3. 设置从库的启动参数
#####################################################################
主从切换的步骤:
1. 设置主库为只读,同步所有数据至从库
2. 从库同步完毕,设置从库参数为主库
3. 设置主库为从库
#####################################################################
一、本机上启动多个mysql数据库
1.设置mysql启动配置文件(主库配置)
默认端口号是3306,若有多个实例应该使用不同的端口号。在mysql的安装目录下找到my.ini文件,将端口号修改为其他(9306)
并设置mysqld的以下项
server-id = 1 #这是数据库ID,此ID是唯一的,主库默认为1,其他从库以此ID进行递增,ID值不能重复,否则会同步出错;
log-bin = mysql-bin #二进制日志文件,此项为必填项,否则不能同步数据;
binlog-do-db = test #需要同步的数据库,如果需要同步多个数据库,则继续添加此项
binlog-ignore-db = mysql #不需要同步的数据库,可不设置
###############################my.ini
[client]
port=9306
[mysql]
default-character-set=utf8
[mysqld]
port=9306
server_id=1
log-bin=mysql-bin
binlog-do-db=test
...
2. 将mysql注册为服务,启动
以upupw的mysql为例:
打开cmd命令行程序:
E:\upupw2\MySQL\bin>mysqld install mysql2 --defaults-file="E:\upupw2\MySQL\my.ini"
Service successfully installed.
E:\upupw2\MySQL\bin>sc start mysql2
SERVICE_NAME: mysql2
TYPE : 10 WIN32_OWN_PROCESS
STATE : 2 START_PENDING
(NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x1
WAIT_HINT : 0x1f40
PID : 4832
FLAGS :
E:\upupw2\MySQL\bin>
mysql数据已启动了。启动了第一个msyql数据库
剩余7页未读,继续阅读


- 粉丝: 3
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源


