第一步:新建两台linux主机(我这里是使用虚拟机,linux版本是CentOS-6.3-x86_64-bin-DVD1.iso,注意:我下载的是dvd1,如果其他版本默认安装可能会自动还原)
第二步:每台机器都安装一台mysql并配置。前面已经介绍过,这里就不介绍了。
第三步:(主从复制)
1)vim /etc/my.cnf
在[mysqld]后面添加以下两行:(server-id不同机器上面的mysql不能一样)
server-id=1
log-bin=mysql-bin
2) 接下来确认slave和master的上的server_id是否正确。可以分别在slave和master上运行 SHOW VARIABLES LIKE 'server_id'; 来查看server_id是否和你配置的一样。
3) 分别重新启动master,slaver的二台mysql服务
4) 登陆 输入
5) Mysql> SHOW VARIABLES LIKE 'server_id';
6) 来查看server_id是否和你配置的一样。
7) master输入
8) Mysql> show master status;
+------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 | 106 | | |
+------------------+----------+--------------+------------------+
9) 记录下 FILE 及 Position 的值,在后面进行从服务器操作的时候需要用到。
10) 配置从服务器(mysql>)(master_log_file和master_log_pos是上面show master 里面出现,其中master_log_pos的位置从哪里开始两个数据库同步就是从哪个位置开始)
change master to
master_host='192.168.139.130',
master_user='root',
master_password='root',
master_log_file='mysql-bin.000001',
master_log_pos=106;
11) 正确执行后启动Slave同步进程
12) 启动slave
mysql> start slave;
13) 查看slave状态
mysql> show slave statusG
14) 其中Slave_IO_Running 与 Slave_SQL_Running 的值都必须为YES,才表明状态正常。
这时候一台mysql
第四步:在另一台linux机中的mysql也同样配置(重复上述操作),但需要更改master_host='192.168.139.131'(根据自己机器的ip来定),master_user='root',master_password='root'(用户名和密码)。
这样mysql主从复制就完成了,在任何一台数据中执行建数据库、建表、增删改查都会同步。