存档

2009年5月 的存档

Mysql主从服务器配置

2009年5月29日 robertbao 1 条评论

虽然Mysql与大型商用数据库服务器,如Oracle、DB2等相比,在功能、性能和稳定性等方面差距不小,但Mysql对于中小型的数据库应用远远能够满足需要,绝对不失为一款优秀的数据库软件。下面我介绍一个Mysql中稍微高阶的特性,在Windows下进行Mysql服务器主从配置的过程,所使用的Mysql版本为5.0.12。

1、准备工作

从Mysql官方网站下载Mysql解压包mysql-noinstall-5.0.12-win32.zip,注意是解压包,不是安装包。

解压为两个目录:

mysql-5.0.12-master和mysql-5.0.12-slaver

2、主服务器配置

2.1、修改mysql-5.0.12-master/my.ini,其中

[client]
port = 3306
[mysqld]
server-id = 1
port = 3306
binlog-do-db =test
binlog-ignore-db=robertbao
log-bin=mysql-bin

2.2、运行mysql-5.0.12-master/bin/mysqld.exe

2.3、进入命令行,创建同步用户

grant replication slave,reload,super on *.*
to robertbao@'localhost'
identified by '123456';

2.4、查看主服务器状态

show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 | 106 | test | robertbao |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

3、从服务器配置

3.1、修改mysql-5.0.12-slaver/my.ini,其中

[client]
port = 3308
[mysqld]
server-id = 2
master-host = localhost
master-user = robertbao
master-password = 123456
master-port = 3306
port = 3308

3.2、运行mysql-5.0.12-slaver/bin/mysqld.exe

3.3、进入命令行,参照主服务器状态数据,执行操作

slave stop;
change master to master_log_file='mysql-bin.000001',master_log_pos=106;
slave start;

4、结果

在主服务器命令行中

use test;
create table mysite;

然后在从服务器命令行中

use test;
show tables;

能看到

+----------------+
| Tables_in_test |
+----------------+
| mysite |
+----------------+
1 row in set (0.00 sec)

说明主从服务器数据已经同步成功,在主服务器中建的表在从服务器中也有了。

分类: WORK 标签: ,