Keepalive+mysql(主主)高可用测试
(2012-04-06 12:25:23)
标签:
keepalivemysqlhait |
分类: Database |
主:192.168.128.10
从:192.168.128.11
VIP:192.168.128.20
1,
主服务器:
[root@localhost ~]# yum install mysql-server mysql
[root@localhost ~]# /etc/init.d/mysqld start
mysql> grant replication slave,file on *.* to 'mysql1'@'192.168.128.11' identified by '123456';
mysql> grant
all privileges on *.* to 'root'@'%' identified by
'111111';
[root@localhost ~]# /etc/init.d/mysqld stop
[root@localhost ~]# vi /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
old_passwords=1
###以下红色部分为新添加
log-bin=mysql-bin
server-id=1
binlog-do-db=test
binlog-ignore-db=mysql
replicate-do-db=test
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
sync_binlog=1
auto_increment_increment=2
auto_increment_offset=1
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[root@localhost ~]# /etc/init.d/mysqld start
[root@localhost ~]# mysql
mysql> show master status;
+------------------+----------+--------------+------------------+
| File
+------------------+----------+--------------+------------------+
| mysql-bin.000001
|
+------------------+----------+--------------+------------------+
从服务器:
[root@localhost ~]# yum install mysql-server mysql
[root@localhost ~]# /etc/init.d/mysqld start
mysql> grant replication slave,file on *.* to 'mysql2'@'192.168.128.10' identified by '123456';
mysql> grant
all privileges on *.* to 'root'@'%' identified by
'111111';
[root@localhost ~]# /etc/init.d/mysqld stop
[root@localhost ~]# vi /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
old_passwords=1
###以下红色部分为新添加
log-bin=mysql-bin
server-id=2
binlog-do-db=test
binlog-ignore-db=mysql
replicate-do-db=test
replicate-ignore-db=mysql
log-slave-updates
slave-skip-errors=all
sync_binlog=1
auto_increment_increment=2
auto_increment_offset=2
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[root@localhost ~]# /etc/init.d/mysqld start
[root@localhost ~]# mysql
mysql> show master status;
+------------------+----------+--------------+------------------+
| File
+------------------+----------+--------------+------------------+
| mysql-bin.000001
|
+------------------+----------+--------------+------------------+
主服务器:
[root@localhost ~]# /etc/init.d/mysqld start
mysql> flush tables with read lock\G
mysql> show master status\G
mysql> change master to
->master_host='192.168.128.11',
->master_user='mysql2',
->master_password='123456',
->master_log_file='mysql-bin.000001'
### master_log_file需要在另一台上执行show master status查看
->master_log_pos=98;
mysql> start slave;
mysql> show slave status\G
以下两项为yes则成功
从服务器:
[root@localhost ~]# /etc/init.d/mysqld start
mysql> flush tables with read lock\G
mysql> show master status\G
mysql> change master to
->master_host='192.168.128.10',
->master_user='mysql1',
->master_password='123456',
->master_log_file='mysql-bin.000001',
### master_log_file需要在另一台上执行show master status查看
->master_log_pos=98;
mysql> start slave;
mysql> show slave status\G
以下两项为yes则成功
2,
1)
2)
3)
4)
3,keepalived安装(主从安装相同)
[root@localhost ~]# uname -r
2.6.18-238.el5
[root@localhost ~]# ln -s /usr/src/kernels/2.6.18-238.el5-i686/ /usr/src/linux
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# tar zxf keepalived-1.2.1.tar.gz
[root@localhost src]# cd keepalived-1.2.1
[root@localhost keepalived-1.2.1]# vi keepalived/libipvs-2.6/ip_vs.h
[root@localhost keepalived-1.2.1]# ./configure
[root@localhost keepalived-1.2.1]# make
[root@localhost keepalived-1.2.1]# make install
2,拷贝程序文件
[root@localhost keepalived-1.2.1]# cp /usr/local/etc/rc.d/init.d/keepalived /etc/init.d/
[root@localhost keepalived-1.2.1]# cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
[root@localhost keepalived-1.2.1]# mkdir /etc/keepalived
[root@localhost keepalived-1.2.1]# cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived
[root@localhost keepalived-1.2.1]# cp /usr/local/sbin/keepalived /usr/sbin/
3,修改keepalived.conf配置文件
[root@localhost keepalived-1.2.1]# cd /etc/keepalived/
[root@localhost keepalived]# vi keepalived.conf
global_defs {
vrrp_sync_group VGM {
}
vrrp_script chk_mysql {
}
vrrp_instance VI_HA {
}
[root@localhost ~]#
/etc/init.d/keepalived start
[root@localhost ~]# tail -f
/var/log/messages
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
4,keepalived测试
重启主服务器keepalived,VIP再次由主服务器接管;
重启主服务器mysql,VIP再次由主服务器接管;

加载中…