您的位置:首页 > 运维架构 > Apache

LVS+APACHE+PHP+MYSQL读写分离

2012-12-04 23:36 197 查看
route:

ifconfig eth0 192.168.18.1

ifconfig eth1 192.168.20.1

echo 1 > /proc/sys/net/ipv4/ip_forward

分发器:

ifconfig eth0 192.168.18.254

ifconfig eth0:0 192.168.18.250/32 broadcast 192.168.18.250 up

route add -host 192.168.18.250 dev eth0:0

ipvsadm -A -t 192.168.18.250:3306 -s rr

ipvsadm -a -t 192.168.18.250:3306 -r 192.168.18.100 -g

ipvsadm -a -t 192.168.18.250:3306 -r 192.168.18.200 -g

ipvsadm -a -t 192.168.18.250:3306 -r 192.168.18.220 -g

real server 1:

ifconfig lo:0 192.168.18.250/32 broadcast 192.168.18.250 up

route add -host 192.168.18.250 dev lo:0

route add default gw 192.168.18.1

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

/etc/init.d/httpd restart

real server 2:

ifconfig lo:0 192.168.18.250/32 broadcast 192.168.18.250 up

route add -host 192.168.18.250 dev lo:0

route add default gw 192.168.18.1

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

/etc/init.d/httpd restart

real server 3:

ifconfig lo:0 192.168.18.250/32 broadcast 192.168.18.250 up

route add -host 192.168.18.250 dev lo:0

route add default gw 192.168.18.1

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

/etc/init.d/httpd restart

Apache:

解压、安装mysql-w-r.tar.gz

修改指向数据库IP

Mysql-A

vim /etc/my.cnf

[mysqld]

server_id = 1

log-bin=binlog

log-bin-index=binlog.index

service mysqld restart

mysql> grant replication slave ON *.* TO 'ck'@'%' identified by '123';

flush privileges;

mysqldump -A -x > /tmp/full.sql

scp /tmp/full.sql root@192.168.18.200:/tmp/

scp /tmp/full.sql root@192.168.18.220:/tmp/

flush tables with read lock;

show master status;

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

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| binlog.000001 | 568 | | |

unlock tables;

Mysql-B1:

vim /etc/my.cnf

[mysqld]

server_id = 2

relay_log = /var/lib/mysql/mysql-relay-bin

relay_log_index=/var/lib/mysql/mysql-relay-bin.index

cd /var/lib/mysql

rm -fr *

service mysqld restart

mysql < /tmp/full.sql

mysql> change master to master_host='192.168.18.100', master_port=3306, master_user='ck', master_password='123', master_log_file='binlog.000001',master_log_pos=568;

start slave;

show slave status \G

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Mysql-B2:

vim /etc/my.cnf

[mysqld]

server_id = 3

relay_log = /var/lib/mysql/mysql-relay-bin

relay_log_index=/var/lib/mysql/mysql-relay-bin.index

cd /var/lib/mysql

rm -fr *

service mysqld restart

mysql < /tmp/full.sql

mysql> change master to master_host='192.168.18.100', master_port=3306, master_user='ck', master_password='123', master_log_file='binlog.000001',master_log_pos=568;

start slave;

show slave status \G

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

客户端测试

测试未知数。。。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: