您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

MySQL高可用架构之MySQL-MMM配置详解

2025/12/8 21:53:32发布35次查看
实验系统:centos 6.6_x86_64 实验前提:防火墙和selinux都关闭 实验说明:本实验共有5台主机,ip分配如拓扑 实验软件:mariadb-
实验系统:centos 6.6_x86_64
实验前提:防火墙和selinux都关闭
实验说明:本实验共有5台主机,ip分配如拓扑
实验软件:mariadb-10.0.20mysql-mmm-2.2.1mysql-mmm-monitor-2.2.1mysql-mmm-agent-2.2.1
下载地址:
或者:
------------------------------------------分割线------------------------------------------
ftp地址:ftp://ftp1.linuxidc.com
用户名:ftp1.linuxidc.com
密码:
在 2015年linuxidc.com\8月\mysql高可用架构之mysql-mmm配置详解
下载方法见
------------------------------------------分割线------------------------------------------
实验拓扑:
使用mysql-mmm实现mysql集群部署 
mysql mmm架构看不到vip地址 
mysql的mmm高可用架构测试
mysql-mmm实现mysql高可用
mysql-mmm切换演示
mysql proxy、mysql-mmm实现读写分离高可用性
将mysql-mmm master从replication_fail状态恢复
centos下利用mysql-mmm实现mysql高可用
一、准备工作
1.根据下表,将各主机名进行修改:
2.修改hosts文件,添加如下内容:
vim /etc/hosts
------------------------------------------->
192.168.19.21  mon
192.168.19.66  db1
192.168.19.74  db2
192.168.19.76  db3
192.168.19.79  db4
3.规划虚拟ip,列表如下:
二、安装mariadb并配置
1.在db1-4上安装:
tar xf mariadb-10.0.20-linux-x86_64.tar.gz  -c /usr/local/
cd /usr/local/
ln -sv mariadb-10.0.20-linux-x86_64 mysql
useradd -r mysql
mkdir -pv /mydata/data
chown -r mysql.mysql /mydata/data/
cd mysql/
chown -r root.mysql .
scripts/mysql_install_db --user=mysql --datadir=/mydata/data/
cp support-files/my-large.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig mysqld on
2.编辑配置文件: db1:
vim /etc/my.cnf
--------------------------------------------->
[mysqld]
server-id = 1
datadir = /mydata/data
log-bin = /mydata/data/mysql1-bin
binlog_format = row
relay_log = /mydata/data/relay-log
auto-increment-increment = 2
auto-increment-offset = 1
sync_binlog = 1
sync_master_info = 1
sync_relay_log = 1
sync_relay_log_info = 1
max_binlog_size  = 100m
log_slave_updates  = 1
service mysqld start
db2:
vim /etc/my.cnf
--------------------------------------------->
[mysqld]
server-id = 2
datadir = /mydata/data
log-bin = /mydata/data/mysql2-bin
binlog_format = row
relay_log = /mydata/data/relay-log
auto-increment-increment = 2
auto-increment-offset = 2
sync_binlog = 1
sync_master_info = 1
sync_relay_log = 1
sync_relay_log_info = 1
max_binlog_size  = 100m
log_slave_updates  = 1
service mysqld start
db3:
vim /etc/my.cnf
--------------------------------------------->
[mysqld]
server-id = 3
datadir = /mydata/data
log-bin = /mydata/data/mysql3-bin
binlog_format = row
relay_log = /mydata/data/relay-log
sync_binlog = 1
sync_master_info = 1
sync_relay_log = 1
sync_relay_log_info = 1
max_binlog_size  = 100m
log_slave_updates  = 1
service mysqld start
db4:
vim /etc/my.cnf
--------------------------------------------->
[mysqld]
server-id = 4
datadir = /mydata/data
log-bin = /mydata/data/mysql4-bin
binlog_format = row
relay_log = /mydata/data/relay-log
sync_binlog = 1
sync_master_info = 1
sync_relay_log = 1
sync_relay_log_info = 1
max_binlog_size  = 100m
log_slave_updates  = 1
service mysqld start
这里需要创建三个用户,如下表:
/usr/local/mysql/bin/mysql
------------------------------------------------->
grant replication client on *.* to 'mmm_monitor'@'192.168.19.%' identified by '123456';
grant super,replication client,process on *.* to 'mmm_agent'@'192.168.19.%' identified by '123456';
grant replication slave on *.* to 'replication'@'192.168.19.%' identified by '123456'
4.查看二进制日志位置:
flush tables with read lock;          //施加锁
show master status;
+-------------------+----------+--------------+------------------+
| file              | position | binlog_do_db | binlog_ignore_db |
+-------------------+----------+--------------+------------------+
| mysql1-bin.000004 |      936 |              |                  |
+-------------------+----------+--------------+------------------+
5.不要关闭这个mysql进程连接,避免锁失效,我们另起一个ssh连接db1服务器,进行数据库备份:
/usr/local/mysql/bin/mysqldump --all-databases > /tmp/database-backup.sql
6.回到刚才mysql进程,进行解锁:
unlock tables;
7.将database-backup.sql文件复制到其他db节点:
scp /tmp/database-backup.sql db2:/tmp/
scp /tmp/database-backup.sql db3:/tmp/
scp /tmp/database-backup.sql db4:/tmp/
8.db2-4主机导入sql文件,并刷新权限:
/usr/local/mysql/bin/mysql /usr/local/mysql/bin/mysql
------------------------------------------------->
flush privileges;
三、设置复制
1.在db2-4上操作,将db1设置为db2-4的主:
change master to master_host='192.168.19.66',master_user='replication',master_password='123456',master_log_file='mysql1-bin.000004',master_log_pos=936;
start slave;
2.查看状态:
show slave status\g
3.查看db2的master日志位置:
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product