服务器环境:
wKioL1NrXYri1iztAAEdbd2C-Vc420.jpg
安装
vim /etc/apt/sources.list.d/mariadb.list # 添加以下两句
deb http://mirror.yongbok.net/mariadb/repo/5.5/ubuntu precise main
deb-src http://mirror.yongbok.net/mariadb/repo/5.5/ubuntu precise main
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db
apt-get update
apt-get install mariadb-server-5.5
/etc/mysql/my.cnf
多实例配置文件:3306,3307,3308
[mysqld_multi]
mysqld = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
user = root # 指定用于启动、停止mysql实例的用户
log = /var/log/mysql/mysqld_multi.log
[client]
port = 3306
socket = /var/run/mysql/mysql.sock
default-character-set = utf8
[mysqld3306]
port = 3306
socket = /var/run/mysql/mysql.sock
pid-file = /var/run/mysql/mysql.pid
datadir = /var/lib/mysql/3306
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
default-storage-engine = MyISAM
character-set-server = utf8
skip-name-resolve
collation-server = utf8_general_ci
log-error = /var/log/mysql/mysqld-error.log
log-slow-admin-statements
long-query-time = 3
slow-query-log
slow-query-log-file = /var/log/mysql/mysqld-slow.log
innodb_buffer_pool_size=1G
innodb_additional_mem_pool_size=20M
max_connections = 1000
tmpdir = /tmp/
server-id = 2
log-slave-updates
log-bin = mysql-bin
binlog_format = mixed
relay_log = mysql-relay-bin
replicate-do-db = wordpress
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
replicate-ignore-db = test
[mysqldump]
quick
max_allowed_packet = 16M
[mysqld3307]
port = 3307
socket = /var/run/mysql/mysql-3307.sock
pid-file = /var/run/mysql/mysql-3307.pid
datadir = /var/lib/mysql/3307
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
default-storage-engine = MyISAM
character-set-server = utf8
skip-name-resolve
collation-server = utf8_general_ci
log-error = /var/log/mysql/mysqld-error-3307.log
log-slow-admin-statements
long-query-time = 3
slow-query-log
slow-query-log-file = /var/log/mysql/mysqld-slow-3307.log
innodb_buffer_pool_size=1G
innodb_additional_mem_pool_size=20M
max_connections = 1000
tmpdir = /tmp/
server-id = 2
log-slave-updates
log-bin = mysql-bin
binlog_format = mixed
relay_log = mysql-relay-bin
replicate-do-db = futurestar
replicate-do-db = verywx
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
replicate-ignore-db = test
[mysqldump]
quick
max_allowed_packet = 16M
[mysqld3308]
port = 3308
socket = /var/run/mysql/mysql-3308.sock
pid-file = /var/run/mysql/mysql-3308.pid
datadir = /var/lib/mysql/3308
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
default-storage-engine = MyISAM
character-set-server = utf8
skip-name-resolve
collation-server = utf8_general_ci
log-error = /var/log/mysql/mysqld-error-3308.log
log-slow-admin-statements
long-query-time = 3
slow-query-log
slow-query-log-file = /var/log/mysql/mysqld-slow-3308.log
innodb_buffer_pool_size=1G
innodb_additional_mem_pool_size=20M
max_connections = 1000
tmpdir = /tmp/
server-id = 2
log-slave-updates
log-bin = mysql-bin
binlog_format = mixed
relay_log = mysql-relay-bin
replicate-do-db = futurestar
replicate-do-db = verywx
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
replicate-ignore-db = test
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
socket = /var/run/mysql/mysql.sock
auto-rehash
default-character-set = utf8
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
初始化数据库文件:
mysql_install_db --datadir=/var/lib/mysql/3306 --user=mysql
mysql_install_db --datadir=/var/lib/mysql/3307 --user=mysql
mysql_install_db --datadir=/var/lib/mysql/3308 --user=mysql
启动数据库:
mysqld_multi start 3306
mysqld_multi start 3307
mysqld_multi start 3308
查看启动情况:
netstat -tunlp | grep -E '(3306|3307|3308)'
wKioL1NrV5ig87b0AAB_xC-JOUY727.jpg
wKiom1NrWimwvRhwAANSvXGqZGk724.jpg
wKioL1NrWf7gC7IxAAFEWAJact0591.jpg
安装Haporxy
apt-get install haproxy
然后vim etc/default/haproxy
修改 ENABLED=0 -> ENABLED=1 保存。
修改haproxy配置文件:
vim /etc/haproxy/haproxy.cfg
# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
log 127.0.0.1 local0
log 127.0.0.1 local1 notice
#log loghost local0 info
maxconn 4096
#chroot /usr/share/haproxy
user haproxy
group haproxy
daemon
#debug
#quiet
defaults
log global
mode http
#option httplog
option dontlognull
retries 3
option redispatch
maxconn 2000
contimeout 5000
clitimeout 50000
srvtimeout 50000
listen mysql 0.0.0.0:6666
mode tcp
option mysql-check user root
balance roundrobin
server mysql_1 127.0.0.1:3306 weight 1 check inter 1s rise 2 fall 5
server mysql_2 127.0.0.1:3307 weight 1 check inter 1s rise 2 fall 5
server mysql_3 127.0.0.1:3308 weight 1 check inter 1s rise 2 fall 5
listen stats
mode http
bind 0.0.0.0:8888
stats enable
stats uri /dbs
stats realm Global\ statistics
stats auth admin:admin
errorfile 400 /etc/haproxy/errors/400.http
errorfile 403 /etc/haproxy/errors/403.http
errorfile 408 /etc/haproxy/errors/408.http
errorfile 500 /etc/haproxy/errors/500.http
errorfile 502 /etc/haproxy/errors/502.http
errorfile 503 /etc/haproxy/errors/503.http
errorfile 504 /etc/haproxy/errors/504.http
执行命令:
/etc/init.d/haproxy start
测试结果:
wKioL1NrXIbTgo1GAAJI5Gv0EDI394.jpg
wKiom1NrXLGQzJiDAAHAOUvDXvs301.jpg
wKioL1NrXIaDhmMQAAF6jyMU-AQ809.jpg
查看haproxy监控页面:
wKiom1NrXQuAe5xBAAcFX6jljjw614.jpg
配置成功。
©著作权归作者所有:来自51CTO博客作者birdinroom的原创作品,如需转载,请注明出处,否则将追究法律责任
haproxy mariadb mysq群集
共同学习,写下你的评论
评论加载中...
作者其他优质文章