Debian系统下MySQL主从复制教程与设置

需积分: 17 5 下载量 165 浏览量 更新于2024-09-18 收藏 5KB TXT 举报
"本篇文章主要介绍了在Debian 5.0.7 32位系统环境下,如何配置MySQL 5.0.51a-24+lenny5-log版本的主从同步复制功能。首先,确保系统上已经安装了MySQL服务器和客户端,如果没有,可以通过`apt-get install mysql-server mysql-client`命令来安装。 步骤一:权限分配与数据库创建 1. 授权slave(从库)访问权限:在主库MySQL中,使用`grant replication slave on *.* to 'repuser'@'192.168.113.8' identified by '111111';`语句,赋予repuser用户从库的复制权限,并刷新权限表:`flush privileges;` 2. 创建一个新的数据库`testdb`:`create database testdb;` 3. 进入新数据库:`use testdb;` 4. 创建表`testuser`:`create table testuser (id int(4), name varchar(20));` 5. 插入测试数据:`insert into testuser values (1, 'test1');` 6. 再次刷新权限:`flush privileges;` 7. 验证数据已写入:`select * from testuser;` 步骤二:主库开启二进制日志和设置读锁 为了实现主从同步,主库需要开启二进制日志(binlog)。在主库上运行`show master status;`来查看当前的binlog信息,记录`File`和`Position`,这将用于从库的复制指针定位。然后,在主库上执行`flushtableswithreadlock;`来为从库提供读取锁定,防止数据被其他事务修改。 接下来,从库会通过`CHANGE MASTER TO`语句来连接主库并复制数据,通常涉及以下参数: - `MASTER_HOST`:主库的IP地址,这里是192.168.113.9 - `MASTER_USER`:用于同步的用户名,这里是`repuser` - `MASTER_PASSWORD`:用户的密码,这里是'111111' - `MASTER_LOG_FILE`:主库的二进制日志文件名和位置 - `MASTER_LOG_POS`:主库的二进制日志位置 具体的从库配置命令可能如下: ```sql mysql> CHANGE MASTER TO MASTER_HOST='192.168.113.9', MASTER_USER='repuser', MASTER_PASSWORD='111111', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=98; ``` 最后,启动从库的复制进程:`start slave;` 总结,本文详细讲解了在Debian系统下配置MySQL主从同步复制的过程,包括权限设置、数据库操作、主库的日志管理以及从库的连接设置。通过这些步骤,可以确保从库的数据能够实时更新为主库的镜像,从而实现数据冗余和高可用性。"