最新文章专题视频专题问答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
当前位置: 首页 - 科技 - 知识百科 - 正文

CentOS搭建MysqlMMM高可用架构_MySQL

来源:动视网 责编:小采 时间:2020-11-09 19:59:19
文档

CentOS搭建MysqlMMM高可用架构_MySQL

CentOS搭建MysqlMMM高可用架构_MySQL:CentOS 环境CentOSMysql 5.1前提安装了EPEL,具体安装步骤请参照http://blog.csdn.net/robinsonmhj/article/details/36184863机器列表机器IP机器名192.168.0.135db1192.168.0.136monitor192.168.0.137db2虚拟I
推荐度:
导读CentOS搭建MysqlMMM高可用架构_MySQL:CentOS 环境CentOSMysql 5.1前提安装了EPEL,具体安装步骤请参照http://blog.csdn.net/robinsonmhj/article/details/36184863机器列表机器IP机器名192.168.0.135db1192.168.0.136monitor192.168.0.137db2虚拟I


CentOS

环境

CentOS

Mysql 5.1


前提

安装了EPEL,具体安装步骤请参照

http://blog.csdn.net/robinsonmhj/article/details/36184863



机器列表

机器IP机器名
192.168.0.135db1
192.168.0.136monitor
192.168.0.137db2


虚拟IP作用
192.168.0.138writter
192.168.0.139reader
192.168.0.140reader


安装步骤


1. 在db1 和 db2 上安装mysql

yum install mysql-server


2. 修改配置文件

db1 的配置文件

[mysqld]datadir = /data/mysqlsocket=/data/mysql/mysql.sockuser=mysqlserver-id=1table_cache = 512sort_buffer_size = 2Mread_buffer_size = 2Mread_rnd_buffer_size = 8Mmyisam_sort_buffer_size = Mthread_cache_size = 8query_cache_size = Mthread_concurrency = 8log-bin=mysql-binbinlog_format = mixedmax_connections=2048character_set_server=utf8wait_timeout=1800interactive_timeout=1800skip-show-databaseskip-name-resolvetmp_table_size = 512Mmax_heap_table_size = 512Mbinlog-ignore-db = mysqlreplicate-ignore-db = mysqlbinlog-ignore-db = information_schemareplicate-ignore-db = information_schemabinlog-ignore-db = performance_schemareplicate-ignore-db = performance_schemabinlog-ignore-db = testreplicate-ignore-db = testinnodb_data_home_dir=/data/mysql/innodbinnodb_data_file_path=ibdata1:2000M;ibdata2:10M:autoextendinnodb_log_group_home_dir=/data/mysql/innodb/loginnodb_file_per_table=1innodb_buffer_pool_size = 1000Minnodb_additional_mem_pool_size = 20Minnodb_log_file_size = 100Minnodb_log_buffer_size = 8Minnodb_flush_log_at_trx_commit = 2innodb_lock_wait_timeout = 50default-storage-engine = MyISAM#default-storage-engine = INNODB[mysqld_safe]log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid[mysqldump]quickmax_allowed_packet = 16Msocket=/data/mysql/mysql.sock[mysql]no-auto-rehashsocket=/data/mysql/mysql.sock


db2 的配置文件


[mysqld]datadir = /data/mysqlsocket=/data/mysql/mysql.sockuser=mysqlserver-id=2table_cache = 512sort_buffer_size = 2Mread_buffer_size = 2Mread_rnd_buffer_size = 8Mmyisam_sort_buffer_size = Mthread_cache_size = 8query_cache_size = Mthread_concurrency = 8log-bin=mysql-binbinlog_format = mixedmax_connections=2048character_set_server=utf8wait_timeout=1800interactive_timeout=1800skip-show-databaseskip-name-resolvetmp_table_size = 512Mmax_heap_table_size = 512Mbinlog-ignore-db = mysqlreplicate-ignore-db = mysqlbinlog-ignore-db = information_schemareplicate-ignore-db = information_schemabinlog-ignore-db = performance_schemareplicate-ignore-db = performance_schemabinlog-ignore-db = testreplicate-ignore-db = testinnodb_data_home_dir=/data/mysql/innodbinnodb_data_file_path=ibdata1:2000M;ibdata2:10M:autoextendinnodb_log_group_home_dir=/data/mysql/innodb/loginnodb_file_per_table=1innodb_buffer_pool_size = 1000Minnodb_additional_mem_pool_size = 20Minnodb_log_file_size = 100Minnodb_log_buffer_size = 8Minnodb_flush_log_at_trx_commit = 2innodb_lock_wait_timeout = 50default-storage-engine = MyISAM#default-storage-engine = INNODB[mysqld_safe]log-error=/var/log/mysqld.logpid-file=/var/run/mysqld/mysqld.pid[mysqldump]quickmax_allowed_packet = 16Msocket=/data/mysql/mysql.sock[mysql]no-auto-rehashsocket=/data/mysql/mysql.sock


3. 在db1和db2 上分别建立复制,监控用户

 GRANT REPLICATION CLIENT ON *.* TO 'mmm_monitor'@'192.168.0.136' IDENTIFIED BY 'monitor'; GRANT SUPER, REPLICATION CLIENT, PROCESS ON *.* TO 'mmm_agent'@'192.168.0.%' IDENTIFIED BY 'agent'; GRANT REPLICATION SLAVE ON *.* TO 'replication'@'192.168.0.%' IDENTIFIED BY 'replication'; 


4. 把db1和db2互相设置成master和slave

4.1 在db1上执行,mysql命令

CHANGE MASTER TO master_host='192.168.0.137', master_port=3306, master_user='replication',master_password='replication', master_log_file='mysql-bin.000006', master_log_pos=106;注意:
master_log_file和master_log_pos的值通过如下命令察看在db2上执行如下mysql命令 show master status


4.2 在db2上执行,mysql命令
CHANGE MASTER TO master_host='192.168.0.135', master_port=3306, master_user='replication',master_password='replication', master_log_file='mysql-bin.000006', master_log_pos=106;注意:
master_log_file和master_log_pos的值通过如下命令察看在db1上执行如下mysql命令 show master status



5. 在db1和db2上安装mysql-mmm-agent

yum install mysql-mmm-agent*



6. 在monitor上安装mysql-mmm-monitor

yum install mysql-mmm-monitor*


7. 修改配置文件

在db1,db2和monitor上修改

/etc/mysql-mmm/mmm_common.conf,修改内容如下

active_master_role writer cluster_interface eth0 pid_path /var/run/mysql-mmm/mmm_agentd.pid bin_path /usr/libexec/mysql-mmm/ replication_user replication replication_password replication agent_user mmm_agent agent_password agent ip 192.168.0.135 mode master peer db2 ip 192.168.0.137 mode master peer db1 hosts db1,db2 ips 192.168.0.138 mode exclusive hosts db1,db2 ips 192.168.0.139,192.168.0.140 mode balanced
修改配置文件

/etc/mysql-mmm/mmm_agent.conf

db1上的内容如下

include mmm_common.conf# The 'this' variable refers to this server. Proper operation requires # that 'this' server (db1 by default), as well as all other servers, have the # proper IP addresses set in mmm_common.conf.this db1
db2上的内容如下

include mmm_common.conf# The 'this' variable refers to this server. Proper operation requires # that 'this' server (db1 by default), as well as all other servers, have the # proper IP addresses set in mmm_common.conf.this db2

修改配置monitor文件

/etc/mysql-mmm/mmm_mon.conf,内容如下

include mmm_common.conf ip 192.168.0.136 pid_path /var/run/mysql-mmm/mmm_mond.pid bin_path /usr/libexec/mysql-mmm status_path /var/lib/mysql-mmm/mmm_mond.status ping_ips 192.168.0.135,192.168.0.137 auto_set_online 60 # The kill_host_bin does not exist by default, though the monitor will # throw a warning about it missing. See the section 5.10 "Kill Host # Functionality" in the PDF documentation. # # kill_host_bin /usr/libexec/mysql-mmm/monitor/kill_host # monitor_user mmm_monitor monitor_password monitordebug 0

8.在db1,db2上启动agent

 # cd /etc/init.d/ # chkconfig mysql-mmm-agent on # service mysql-mmm-agent start 

9. 在monitor上启动monitor

 # cd /etc/init.d/ # chkconfig mysql-mmm-monitor on # service mysql-mmm-monitor start 

10. 在monitor上察看

mmm_control -show status

10.2 把一台机器上线

mmm_control set_online db1


10.3 试验

把db1上的mysql停掉 service mysqld stop

察看状态mmm_control -show status,db1上的写ip应该飘到db2上


参考

http://blog.csdn.net/mydeman/article/details/6845567

http://hi.baidu.com/viewehsoitfmyzr/item/5024bec2ef02ccd1945280

文档

CentOS搭建MysqlMMM高可用架构_MySQL

CentOS搭建MysqlMMM高可用架构_MySQL:CentOS 环境CentOSMysql 5.1前提安装了EPEL,具体安装步骤请参照http://blog.csdn.net/robinsonmhj/article/details/36184863机器列表机器IP机器名192.168.0.135db1192.168.0.136monitor192.168.0.137db2虚拟I
推荐度:
标签: 安装 配置 搭建
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top