最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

mysql keepalive实施实例

来源:动视网 责编:小OO 时间:2025-09-29 10:51:28
文档

mysql keepalive实施实例

------2010.6.13----------MySQL-VIP:192.168.1.238MySQL-master1:192.168.1.141MySQL-master2:192.168.1.142OS版本:CentOS5.4MySQL版本:5.0.77Keepalived版本:1.1.20一、MySQLmaster-master配置1.修改/etc/my.cnf----master1--------log-bin=mysql-binserver-id=1binlog-do-db=hou
推荐度:
导读------2010.6.13----------MySQL-VIP:192.168.1.238MySQL-master1:192.168.1.141MySQL-master2:192.168.1.142OS版本:CentOS5.4MySQL版本:5.0.77Keepalived版本:1.1.20一、MySQLmaster-master配置1.修改/etc/my.cnf----master1--------log-bin=mysql-binserver-id=1binlog-do-db=hou
------2010.6.13----------

MySQL-VIP:192.168.1.238

MySQL-master1:192.168.1.141

MySQL-master2:192.168.1.142 

 

OS版本:CentOS 5.4  

MySQL版本:5.0.77  

Keepalived版本:1.1.20 

一、MySQL master-master配置

1.修改/etc/my.cnf

----master1--------

log-bin=mysql-bin

server-id = 1

binlog-do-db=houhou

binlog-ignore-db=mysql

replicate-do-db=houhou

replicate-ignore-db=mysql

log-slave-updates

slave-skip-errors=all

sync_binlog=1

auto_increment_increment=2

auto_increment_offset=1

------master2----------

log-bin=mysql-bin

server-id = 2

binlog-do-db=houhou

binlog-ignore-db=mysql

replicate-do-db=houhou

replicate-ignore-db=mysql

lo

g-slave-updates

slave-skip-errors=all

sync_binlog=1

auto_increment_increment=2

auto_increment_offset=2

2、将192.168.1.141设为192.168.1.142的主服务器

在192.168.1.141上新建授权用户

grant replication slave on *.* to 'replication'@'%' identified by 'replication'; 

MySQL> show master status;

+------------------+----------+--------------+------------------+  

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |  

+------------------+----------+--------------+------------------+  

| MySQL-bin.000003 |      374 |              |                  |   

+-----------------

-+----------+--------------+------------------+  

在192.168.1.142上将192.168.1.141设为自己的主服务器

MySQL> change master to master_host='192.168.1.141',master_user='replication',master_password='replication',master_log_file='MySQL-bin.000003',master_log_pos=374; 

MySQL> start slave;

MySQL> show slave status\\G

  看到:

          Slave_IO_Running: Yes  

          Slave_SQL_Running: Yes  

表示配置成功。

3、将192.168.1.142设为192.168.1.141的主服务器

 在192.168.1.142上授权用户

MySQL> grant replication slave on *.* to 'replication'@'%' identified by '

replication';

MySQL> show master status;

+------------------+----------+--------------+------------------+  

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |  

+------------------+----------+--------------+------------------+  

| MySQL-bin.000003 |      374 |              |                  |   

+------------------+----------+--------------+------------------+    

在192.168.1.141上,将192.168.1.142设为自己的主服务器

MySQL> change master to master_host='192.168.1.142',master_user='replication',master_password='replication',master_log_file=

'MySQL-bin.000003',master_log_pos=374; 

MySQL> start slave;

MySQL> show slave status\\G

 看到:

          Slave_IO_Running: Yes  

          Slave_SQL_Running: Yes  

表示配置成功。

4、MySQL同步测试

二、keepalived安装及配置

1、192.168.1.141服务器上keepalived安装及配置

下载keepalived  

wget http://www.keepalived.org/software/keepalived-1.1.20.tar.gz

安装keepalived

#tar zxvf keepalived-1.1.20.tar.gz  

#cd keepalived-1.1.20  

#./configure --prefix=/usr/local/keepalived --with-kernel-dir=/usr/src/kernels/2.6.18-1.el5-xen-x86_

#make && make install 

配置keepalived

我们自己在新建一个配置文件,默认情况下keepalived启动时会去

/etc/keepalived目录下找配置文件

#mkdir /etc/keepalived  

#vi /etc/keepalived/keepalived.conf  

! Configuration File for keepalived

global_defs {

router_id MySQL-ha

}

vrrp_script check_run {

script "/root/keepalived_check_mysql.sh"

interval 5

}

vrrp_sync_group VG1 {

group {

VI_1

}

}

vrrp_instance VI_1 {

state MASTER

interface eth0

virtual_router_id 77

priority 100

advert_int 1

nopreempt

authentication {

auth_type PASS

auth_pass zhengfei 

}

track_script {

check_run

}

virtual_ipaddress {

192.168.1.238

}

}

编写检测服务down后所要执行的脚本

vi keepalived_check_mysql.sh 

#!/bin/bash

MYSQL=/usr/bin/mysql

M

YSQL_HOST=localhost

MYSQL_USER=root

MYSQL_PASSWORD=zhengfei

CHECK_TIME=3

#mysql is working MYSQL_OK is 1 , mysql down MYSQL_OK is 0

MYSQL_OK=1

function check_mysql_helth (){

$MYSQL -h $MYSQL_HOST -u $MYSQL_USER -p${MYSQL_PASSWORD} -e "show status;" >/dev/null 2>&1

if [ $? = 0 ] ;then

MYSQL_OK=1

else

MYSQL_OK=0

fi

return $MYSQL_OK

}

while [ $CHECK_TIME -ne 0 ]

do

let "CHECK_TIME -= 1"

check_mysql_helth

if [ $MYSQL_OK = 1 ] ; then

CHECK_TIME=0

exit 0

fi

if [ $MYSQL_OK -eq 0 ] && [ $CHECK_TIME -eq 0 ]

then

/usr/local/keepalived/etc/rc.d/init.d/keepalived s

top

exit 1

fi

sleep 1

done

启动keepalived

#/usr/local/keepalived/sbin/keepalived -D  

#ps -aux | grep keepalived 

2、192.168.1.142上keepalived安装及配置

安装keepalived

#tar zxvf keepalived-1.1.20.tar.gz  

#cd keepalived-1.1.20  

#./configure --prefix=/usr/local/keepalived --with-kernel-dir=/usr/src/kernels/2.6.18-1.el5-i686  

#make && make install 

配置keepalived

这台配置和上面基本一样,但有两个地方不同:优先级为90、无抢占设置

#mkdir /etc/keepalived  

#vi /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {

router_id MySQL-ha

}

vrrp_script check_run {

script "/root/keepalived_check_m

ysql.sh"

interval 5

}

vrrp_sync_group VG1 {

group {

VI_1

}

}

vrrp_instance VI_1 {

state BACKUP

interface eth0

virtual_router_id 77

priority 80

advert_int 1

authentication {

auth_type PASS

auth_pass zhengfei

}

track_script {

check_run

}

virtual_ipaddress {

192.168.1.238

}

}

在上面部署相同的/root/keepalived_check_mysql.sh脚本

启动keepalived  

#/usr/local/keepalived/sbin/keepalived –D  

#ps -aux | grep keepalived

配置完毕

文档

mysql keepalive实施实例

------2010.6.13----------MySQL-VIP:192.168.1.238MySQL-master1:192.168.1.141MySQL-master2:192.168.1.142OS版本:CentOS5.4MySQL版本:5.0.77Keepalived版本:1.1.20一、MySQLmaster-master配置1.修改/etc/my.cnf----master1--------log-bin=mysql-binserver-id=1binlog-do-db=hou
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top