VirtualBox+centos 配置mysql主从


参考http://www.mike.org.cn/articles/mysql-master-slave-sync-conf-detail/

利用VirtualBox虚拟两台服务器,配置mysql主从。

环境:
centos 5.5
mysql5.5
A主机ip:192.168.2.175
B主机ip:192.168.2.176

centos iptalbes 防火墙 开启3306端口,否则连接不上
#vi /etc/sysconfig/iptables

如果没有下面一行,则添加上去
-A RH-Firewall-1-INPUT -p tcp -m state -m tcp --dport 3306 --state NEW -j ACCEPT

重启防火墙
#/etc/sysconfig/iptables restart     

#iptables -L

ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:mysql

有上面这行,代表已经成功开启了mysql外部链接

主从配置过程

主服务器

创建同步用户

在主服务器上为从服务器建立一个连接帐户,该帐户必须授予REPLICAITON SLAVE权限。

服务器A:

mysql>CREATE USER 'replication'@'%' IDENTIFIED BY '000000';
mysql>GRANT REPLICATION SLAVE ON * . * TO 'replication'@'%' IDENTIFIED BY '000000' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
mysql>flush privileges;
修改mysql配置文件(默认路径/etc/my.cnf)
[mysqld]  
server-id = 1  
log-bin=mysql-bin
binlog-do-db = test
binlog-ignore-db=mysql

重启mysql服务
# mysql restart
 
Restarting MySQL...
Stoping MySQL...
Starting MySQL...


查看主服务器状态
mysql> show master status\G
*************************** 1. row ***************************
            File: mysql-bin.000003
        Position: 2056
    Binlog_Do_DB: test
Binlog_Ignore_DB: mysql
1 row in set (0.00 sec)

从服务器
修改mysql配置文件(/etc/my.cnf)

server-id = 2

重启mysql服务
# mysql restart
 
Restarting MySQL...
Stoping MySQL...
Starting MySQL...


用change master语句指定同步位置
mysql>change master to master_host='192.168.2.175', master_user='replication', master_password='000000', master_log_file='mysql-bin.000003', master_log_pos=2056;
注:master_log_file,master_log_pos由上面主服务器查出的状态值中确定。master_log_file对应File,master_log_pos对应Position。
mysql 5.x以上版本已经不支持在配置文件中指定主服务器相关选项。


启动从服务器线程
mysql>start slave;

查看从服务器状态  

mysql>show slave status\G
 
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

查看以上两项的值,均为Yes则表示状态正常。



测试主从同步
先在主库中插入一条新的数据
mysql> use test;
Database changed
mysql> desc test;
+---------+--------------+------+-----+---------+----------------+
| Field   | Type         | Null | Key | Default | Extra          |
+---------+--------------+------+-----+---------+----------------+
| id      | smallint(6)  | NO   | PRI | NULL    | auto_increment |
| title   | varchar(255) | NO   |     | NULL    |                |
| content | text         | NO   |     | NULL    |                |
+---------+--------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
 
mysql> insert into test (title)value('hello world');
Query OK, 1 row affected, 1 warning (0.00 sec)

在从库中查询,看到之前主库新增的数据就成功了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值