Mysql配置主从复制

来源:互联网 发布:淘宝0点抢购秒杀怎么抢 编辑:程序博客网 时间:2024/06/05 07:51
废话不多说,直接说步骤。准备两个mysql数据库,一个作为master,一个做slave,

一、master数据库配置:

1、修改配置文件

修改my.cnf配置文件,在[mysqld]的位置下面添加两行配置。第一行用于开启二进制日志文件,主从之间就是从库获取主库的二进制日志文件保持数据一致。第二行是一个server-id,用来作为数据库的唯一标示,建议使用IP地址的最后一位。
[mysqld]log-bin=mysql-binserver-id=1
mysql> show master status;
File Position mysql-bin.000001 836

1 row in set (0.02 sec)

这两个值等会配置从库时会用到。

2、新建一个用于同步的用户。

#新建用户mysql>create user 'yzp'@'%' identified by 'yzp123';#授权mysql>grant repliaciton slave on *.* to 'yzp'@'%' identified by 'yzp123';

二、Slave数据库配置

同样的也是修改my.cnf配置文件,在[mysqld]下面的位置加入两行。
[mysqld]log-bin=mysql-binserver-id=2
#配置从库mysql>change master to master_host='192.168.100.1',master_user='yzp',master_password='yzp123',master_log_file='mysql-bin.000001',master_log_pos=836;# 这里的master_host就是主机IP地址# master_user是刚才在master上授权的用户# master_log_file就是刚才master上查到的File,即二进制日志# master_log_pos就是刚才查到的位置,表示从日志的哪个位置开始同步#查看下slave状态mysql>show slave status;

三、测试

master新建一个库,新建一张表,插入一条数据

# 创建测试数据库,mysql>CREATE DATABASE `test_replication` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; #创建表,插数据mysql>use test_replication;mysql>create table test_01(id int(10),name varchar(20),primary key(id));mysql>insert into test_01(1,'tom');

到Slave数据库中去查询

mysql> show databases;+--------------------+| Database           |+--------------------+| information_schema || mysql              || performance_schema || sys                || test_replication   |+--------------------+5 rows in set (0.03 sec)#刚才新建的数据库已经查到了mysql> use test_replication;Database changedmysql> select * from test_01;+----+------+| id | name |+----+------+|  1 | tom  ||  2 | cat  |+----+------+2 rows in set (0.07 sec)
原创粉丝点击