Keepalived+MySQL主从搭建

Keepalived+MySQL主从搭建

目录

Keepalived+MySQL主从搭建

实验环境

MySQL安装

搭建mysql主从

安装keepalived

测试VIP切换情况

实验环境

虚拟机两台操作系统版本:centos7.3

数据库版本:5.7.37

node1(主节点):192.168.92.141

node2(从节点):192.168.92.142

VIP:192.168.92.140

 

MySQL安装

软件包上传

分别在node1、node2使用scp工具上传mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz

注意:分别在node1 和node2 上执行

创建数据库用户和组

[root@node1 ~]# groupadd mysql

[root@node1 ~]# useradd mysql -g mysql

解压压缩包

[root@node1 ~]# tar xvfz mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz  -C /usr/local/

重命名

[root@node1 ~]# mv /usr/local/mysql-5.7.37-linux-glibc2.12-x86_64 /usr/local/mysql

创建数据目录

[root@node1 ~]# mkdir -p /data/mysql/

创建日志目录

[root@node1 ~]# mkdir -p /data/log/

修改目录权限

[root@node1 ~]# chown mysql.mysql /data/

初始化MySQL数据库,记录数据库密码

[root@node1 ~]# cd /usr/local/mysql
[root@node1 mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
2022-10-09T06:43:27.426299Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2022-10-09T06:43:33.552521Z 0 [Warning] InnoDB: New log files created, LSN=45790
2022-10-09T06:43:34.450688Z 0 [Warning] InnoDB: Creating foreign key   constraint system tables.
2022-10-09T06:43:34.624646Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: b25d3ec2-479d-11ed-a0c4-000c29c00593.
2022-10-09T06:43:34.649311Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2022-10-09T06:43:35.449087Z 0 [Warning] A deprecated TLS version TLSv1 is enabled. Please use TLSv1.2 or higher.
2022-10-09T06:43:35.449107Z 0 [Warning] A deprecated TLS version TLSv1.1 is enabled. Please use TLSv1.2 or higher.
2022-10-09T06:43:35.450086Z 0 [Warning] CA certificate ca.pem is self signed.
2022-10-09T06:43:36.274669Z 1 [Note] A temporary password is generated for root@localhost: L)0A5kZtfat!

修改MySQL配置文件

[root@node1 mysql]# vim /etc/my.cnf
[client]
port = 3306
[mysqld]
port = 3306
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql/
socket=/tmp/mysql.sock
log-bin=/data/log/mysql-bin
log-error=/data/log/err.log
slow_query_log=on
slow_query_log_file =/data/log/slow.log
character-set-server = utf8mb4
init_connect='SET NAMES utf8mb4'
default_storage_engine = innodb
default_authentication_plugin=mysql_native_password
server-id=1   #注意server-id要不一致
default_authentication_plugin=mysql_native_password

修改环境变量

[root@node1 ~]# vim .bash_profile
添加 export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
[root@node1 ~]# source .bash_profile

更改启动文件

[root@node1 ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
[root@node1 ~]# vim /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/data/mysql

使用mysql用户启动数据库

[root@node1 log]# su - mysql
上一次登录:日 10月  9 15:24:26 CST 2022pts/0 上
[mysql@node1 ~]$ /etc/init.d/mysqld start
Starting MySQL. SUCCESS!

登录数据库修改初始root密码

[root@node1 log]# mysql -uroot -p
Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.37-log
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> alter user 'root'@'localhost' identified by '12345';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

搭建mysql主从

修改node2的mysql配置文件

[root@node2 log]# vim /etc/my.cnf

添加relay_log=/data/log/mysql-relay

重启数据库

[mysql@node2 ~]$  /etc/init.d/mysqld stop
[mysql@node2 ~]$  /etc/init.d/mysqld start

在主库node1上创建用于同步的用户并赋权,密码为:repl

mysql> grant replication slave,replication client on *.*  to 'repl'@'%' identified by 'repl';
Query OK, 0 rows affected, 1 warning (0.01 sec)

查看node1的binlog和pos位置

mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

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

| mysql-bin.000001 |      853 |              |                  |                   |

+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

在node2上执行同步配置

mysql> change master to master_host='192.168.92.141',
    -> master_user='repl',
    -> master_port=3306,
    -> master_password='repl',
    -> master_log_file='mysql-bin.000001',
    -> master_log_pos=853;
Query OK, 0 rows affected, 2 warnings (0.01 sec)

mysql> start slave;
Query OK, 0 rows affected (0.00 sec)

查看从库状态,均为YES同步成功

mysql> show slave status\G

*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.92.141
                  Master_User: repl
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000001
          Read_Master_Log_Pos: 1157
               Relay_Log_File: mysql-relay.000002
                Relay_Log_Pos: 624
        Relay_Master_Log_File: mysql-bin.000001
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes
              Replicate_Do_DB:
          Replicate_Ignore_DB:
           Replicate_Do_Table:
       Replicate_Ignore_Table:
      Replicate_Wild_Do_Table:
  Replicate_Wild_Ignore_Table:
                   Last_Errno: 0
                   Last_Error:
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 1157
              Relay_Log_Space: 827
              Until_Condition: None
               Until_Log_File:
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File:
           Master_SSL_CA_Path:
              Master_SSL_Cert:
            Master_SSL_Cipher:
               Master_SSL_Key:
        Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 0
                Last_IO_Error:
               Last_SQL_Errno: 0
               Last_SQL_Error:
  Replicate_Ignore_Server_Ids:
             Master_Server_Id: 1
                  Master_UUID: b25d3ec2-479d-11ed-a0c4-000c29c00593
             Master_Info_File: /data/mysql/master.info
                    SQL_Delay: 0
          SQL_Remaining_Delay: NULL
      Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
           Master_Retry_Count: 86400
                  Master_Bind:
      Last_IO_Error_Timestamp:
     Last_SQL_Error_Timestamp:
               Master_SSL_Crl:
           Master_SSL_Crlpath:
           Retrieved_Gtid_Set:
            Executed_Gtid_Set:
                Auto_Position: 0
         Replicate_Rewrite_DB:
                 Channel_Name:
           Master_TLS_Version:
1 row in set (0.01 sec)

安装keepalived

注意:在node1和 node2上分别执行

下载keepalived

[root@node1 log]# yum install keepalived

编写keepalived的配置文件

[root@node1 log]# vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {
        HA_MYSQL
}

vrrp_script check_run_mysql
{
    script "/root/keepalived_shutdown.sh"   #检查mysql状态脚本
    interval 2    #每两秒检测一下
}

vrrp_instance VI_1 {
    state BACKUP   #都设置为BACKUP,设置非抢占模式,防止主库故障重起之后数据不同步,就进行VIP飘移
    interface ens32  #设置网卡
    virtual_router_id 51
    priority 100   # 优先级,node2要比100低
    advert_int 1
    nopreempt   #不主动抢占资源,非抢占模式
    authentication {
        auth_type PASS
        auth_pass 1111
    }

track_script {
    check_run_mysql    ##执行mysql监控服务脚本
}

    virtual_ipaddress {
        192.168.92.140    #VIP
    }
}

virtual_server 192.168.92.140 3306 {
    delay_loop 2   #每2秒检查一次
#    lb_algo rr
#    lb_kind NAT  LVS模式,如果不关闭,服务器不能通过VIP连接MySQL
    nat_mask 255.255.255.0
    persistence_timeout 50
    protocol TCP
    real_server 192.168.92.141 3306 {   #IP为当前主机IP,3306为数据库端口
        weight 3
        notify_down /root/keepalived_shutdown.sh  #当mysql服务宕了时,执行杀死keepalieved脚本
          TCP_CHECK{
            connect_timeout 3  #连接超时时间
            nb_get_retry 3  #重连次数
            delay_before_retry 3  #重连间隔时间
            connect_port 3306  #检查的端口
        }
    }
}

编写/root/keepalived_shutdown.sh脚本

[root@node2 log]# vim  /root/keepalived_shutdown.sh

#!/bin/sh

check=$(/usr/local/mysql/bin/mysql -uroot -p12345 -e 'select 1' |sed -n '2p')

function error_query(){

        systemctl stop  keepalived

        echo "192.168.92.142  mysql  down, keepalived 切换"

}

 echo "$check"

 if [ "$check" != "1" ]

then

        error_query

fi

启动keepalived并设置开机自启

[root@node1 log]# systemctl start keepalived.service
[root@node1 log]# systemctl enable keepalived.service

查看VIP,当前VIP在主节点node1上

[root@node1 log]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:c0:05:93 brd ff:ff:ff:ff:ff:ff
    inet 192.168.92.141/24 brd 192.168.92.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet 192.168.92.140/32 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::7fc9:696b:7c6b:794d/64 scope link
       valid_lft forever preferred_lft forever

测试VIP切换情况

在slave1上通过VIP连接数据库,查看当前连接数据库为server_id为1是node1主机

[root@slave1 ~]# mysql -uroot -p12345 -h192.168.92.140
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.37-log MySQL Community Server (GPL)
Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

db01 [(none)]>show variables like 'server_id';
+---------------+-------+

| Variable_name | Value |

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

| server_id     | 1     |

+---------------+-------+
1 row in set (0.09 sec)

在node1 停止mysql

[root@node1 ~]# pkill mysql

在slave1上查看当前数据库的server_id为2,从库提供服务

db01 [(none)]>show variables like 'server_id';
ERROR 2013 (HY000): Lost connection to MySQL server during query
No connection. Trying to reconnect...
Connection id:    28
Current database: *** NONE ***
+---------------+-------+

| Variable_name | Value |

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

| server_id     | 2     |

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

1 row in set (0.11 sec)

在node2上执行ip a 查看VIP已飘移

[root@node2 ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:35:01:7a brd ff:ff:ff:ff:ff:ff
    inet 192.168.92.142/24 brd 192.168.92.255 scope global ens37
       valid_lft forever preferred_lft forever
    inet 192.168.92.140/32 scope global ens37
       valid_lft forever preferred_lft forever
    inet6 fe80::ba09:6c26:28e4:1289/64 scope link
       valid_lft forever preferred_lft forever
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第1节 课程概述 [免费观看] 00:12:22分钟 | 第2节 课程背景 [免费观看] 00:09:12分钟 | 第3节 纵观大型网站架构发展,总结持久化部分需要应对的问题 [免费观看] 00:27:12分钟 | 第4节 操作系统安装以及配置 00:31:22分钟 | 第5节 在CentOS上通过yum安装mysql5.7 00:15:32分钟 | 第6节 mysql初次见面-mysql5.7的用户以及安全策略 00:05:34分钟 | 第7节 mysql初次见面续-mysql基本操作 00:37:36分钟 | 第8节 认识主从复制 00:15:01分钟 | 第9节 主从复制的准备工作01-mysql用户以及权限 00:12:11分钟 | 第10节 主从复制的准备工作02-binlog日志详解 00:33:23分钟 | 第11节 主从实战01-准备环境 00:26:06分钟 | 第12节 主从实战02-主节点配置 00:06:19分钟 | 第13节 主从实战03-从节点配置 00:10:45分钟 | 第14节 java操作主从01 00:24:26分钟 | 第15节 java操作主从02 00:13:48分钟 | 第16节 主主复制 00:32:23分钟 | 第17节 负载均衡概述以及环境准备 00:20:42分钟 | 第18节 搭建负载均衡-01 00:22:54分钟 | 第19节 搭建负载均衡-02 00:06:06分钟 | 第20节 启动haproxy的监控功能 00:14:52分钟 | 第21节 高可用以及环境准备 00:40:14分钟 | 第22节 搭建keepalived 00:19:42分钟 | 第23节 Keepalived配置简介 00:11:01分钟 | 第24节 Keepalived配置邮件 00:42:27分钟 | 第25节 Keepalived其他配置 00:12:13分钟 | 第26节 分库分表概述 00:12:18分钟 | 第27节 逻辑分表01-水平分表 00:32:43分钟 | 第28节 逻辑分表02-水平分表续及垂直分表 00:13:36分钟 | 第29节 表分区 00:42:19分钟 | 第30节 数据库中间件01-认识mycat 00:22:32分钟 | 第31节 数据库中间件02-mycat安装 00:18:18分钟 | 第32节 数据库中间件03-mycat的helloworld 00:31:11分钟 | 第33节 数据库中间件04-mycat的初识 00:13:57分钟 | 第34节 数据库中间件05-mycat的数据切分 00:13:50分钟 | 第35节 数据库中间件06-mycat的读写分离-01 00:11:16分钟 | 第36节 数据库中间件06-mycat的读写分离-02 00:24:06分钟 | 第37节 数据库中间件06-mycat的读写分离03-读写分离补充 00:03:37分钟 | 第38节 数据库中间件07-mycat的高可用-01 00:10:01分钟 | 第39节 数据库中间件08-mycat的高可用-02 00:06:13分钟 | 第40节 数据库中间件09-mycat集群 00:08:08分钟 | 第41节 mysql查询缓存 00:08:17分钟 | 第42节 数据库切分概述 00:37:09分钟 | 第43节 java环境配置 00:13:42分钟 | 第44节 水平切分原理及单表切分后的操作 00:47:46分钟 | 第45节 水平切分原理及单表切分后的操作-2 00:19:32分钟 | 第46节 水平切分多表关联操作 00:38:14分钟 | 第47节 垂直切分原理及操作 00:17:23分钟 | 第48节 全局序列号 00:21:35分钟 | 第49节 数据库切分策略-分片枚举 00:35:49分钟 | 第50节 数据库切分策略-hash 00:41:16分钟 | 第51节 数据库切分策略-范围约定 00:17:20分钟 | 第52节 数据库切分策略-取模 00:13:54分钟 | 第53节 数据库切分策略-按日期分片 00:17:43分钟 | 第54节 全局表 00:04:27分钟 | 第55节 认识MyCat 00:13:55分钟 | 第56节 部署MyCat 00:20:20分钟 | 第57节 使用MyCat完成简单的数据库分片 00:28:58分钟 | 第58节 MyCat分片策略 00:13:08分钟 | 第59节 MyCat全局表配置 00:05:18分钟 | 第60节 MyCatER表配置 00:20:27分钟 | 第61节 另外一种切分方式-使用客户端组件的方式实现数据库分 00:06:20分钟 |
mysql管理之道:性能调优、高可用与监控》由资深mysql专家撰写,以最新的mysql版本为基础,以构建高性能mysql服务器为核心,从故障诊断、表设计、sql优化、性能参数调优、mydumper逻辑、xtrabackup热备份与恢复、mysql高可用集群搭建与管理、mysql服务器性能和服务监控等方面多角度深入讲解了如何去管理与维护mysql服务器。 书中内容以实战为导向,所有内容均来自于笔者多年实践经验的总结和对新知识的拓展,同时也针对运维人员、dba等相关工作者会遇到的有代表性的疑难问题给出了实用的情景模拟,并给出了解决方案。不论你目前有没有遇到过此类问题,相信对你以后处理相关问题都会有所借鉴。本书适合所有希望构建和管理高性能、高可用性的mysql数据库系统的开发者和dba阅读。 目录 · · · · · · 前言 第一部分 mysql5.5 新特性篇 第1章 mysql5.5介绍 2 1.1 性能上的显著改变 2 1.1.1 mysql5.5默认存储引擎的调整 2 1.1.2 充分利用cpu多核的处理能力 7 1.1.3 提高刷新脏页数量和合并插入数量,改善磁盘i/o处理能力 8 1.1.4 增加自适应刷新脏页功能 9 1.1.5 让innodb_buffer_pool缓冲池中的热数据存活更久 9 1.1.6 innodb的数据恢复时间加快 11 1.1.7 innodb同时支持多个bufferpool实例 15 1.1.8 可关闭自适应哈希索引 17 1.1.9 在innodb中可选择使用内存分配程序 18 1.1.10 提高默认innodb线程并发数 21 1.1.11 预读算法的变化 22 1.1.12 首次在linux上实现了异步i/o 23 1.1.13 恢复组提交 24 1.1.14 innodb使用多个回滚段提升性能 26 1.1.15 改善清除程序进度 26 .1.1.16 添加删除缓冲和清除缓冲 27 1.1.17 控制自旋锁spin lock轮训间隔 28 1.1.18 快速创建、删除、更改索引 29 1.1.19 innodb支持创建压缩数据页 30 1.1.20 可动态关闭innodb更新元数据的统计功能 37 1.2 安全性、稳定性的显著改变 38 1.2.1 复制功能加强 38 1.2.2 中继日志relay-log可自我修复 39 1.2.3 开启innodb严格检查模式 39 1.3 动态更改系统配置参数 39 1.3.1 支持动态更改独立表空间 39 1.3.2 支持动态更改innodb锁超时时间 40 1.4 innodb新参数汇总 40 1.5 同步复制新参数汇总 48 1.6 sql语句写法的改变 53 1.6.1 delete表连接语法改变 53 1.6.2 mysql5.5存储过程支持limit变量 54 1.7 mysql5.1升级为mysql5.5 55 1.7.1 采用mysql_upgrade升级授权表方式升级 55 1.7.2 直接安装mysql5.5,采用数据导出/导入方式升级 59 1.8 性能测试:mysql5.5与mysql5.1 60 第2章 半同步复制 62 2.1 半同步复制简介 62 2.2 半同步复制安装配置 63 2.3 参数说明 63 2.4 功能测试 64 2.4.1 如何验证半同步复制是否正常工作 64 2.4.2 半同步复制与异步复制的切换 65 2.5 性能测试 68 2.6 小结 70 第二部分 故障诊断与性能优化篇 第3章 故障诊断 72 3.1 影响mysql性能的因素 72 3.2 系统性能评估标准 73 3.2.1 影响linux服务器性能的因素 73 3.2.2 系统性能评估指标 74 3.2.3 开源监控和评估工具介绍 76 3.3 故障与处理 79 3.3.1 连接数过多导致程序连接报错的原因 79 3.3.2 记录子查询引起的宕机 84 3.3.3 诊断事务量突高的原因 87 3.3.4 谨慎设置binlog_format=mixed 90 3.3.5 未设置swap分区导致内存耗尽,主机死机 94 3.3.6 mysql故障切换之事件调度器注意事项 95 3.3.7 人工误删除innodb ibdata数据文件,如何恢复 97 3.3.8 update忘加where条件误操作恢复(模拟oracle闪回功能) 99 3.3.9 delete忘加where条件误操作恢复(模拟oracle闪回功能) 108 第4章 同步复制报错故障处理 112 4.1 最常见的3种故障 112 4.1.1 在master上删除一条记录时出现的故障 112 4.1.2 主键重复 114 4.1.3 在master上更新一条记录,而slave上却找不到 115 4.2 特殊情况:slave的中继日志relay-log损坏 116 4.3 人为失误 118 4.4 避免在master上执行大事务 119 4.5 slave_exec_mode参数可自动处理同步复制错误 120 4.6 如何验证主从数据一致 121 4.7 binlog_ignore_db引起的同步复制故障 123 4.8 mysql5.5.19/20同步一个bug 124 4.9 恢复slave从机上的某几张表的简要方法  126 4.10 如何干净地清除slave同步信息 127 第5章 性能调优 129 5.1 表设计 129 5.2 字段类型的选取 133 5.2.1 数值类型 134 5.2.2 字符类型 139 5.2.3 时间类型 141 5.2.4 小技巧:快速修改表结构 148 5.2.5 pt-online-schema-change在线更改表结构 152 5.2.6 mysql5.6在线ddl更改表测试 158 5.3 采用合适的锁机制 161 5.3.1 表锁的演示 161 5.3.2 行锁的演示 164 5.3.3 innodb引擎与myisam引擎的性能对比 166 5.4 选择合适的事务隔离级别 168 5.4.1 事务的概念 168 5.4.2 事务的实现 169 5.4.3 事务隔离级别介绍 171 5.5 sql优化与合理利用索引 177 5.5.1 如何定位执行很慢的sql语句 177 5.5.2 sql优化案例分析 178 5.5.3 合理使用索引 188 5.6 my.cnf配置文件调优 198 5.6.1 per_thread_buffers优化 198 5.6.2 global_buffers优化 200 5.6.3 query cache在不同环境下的使用 201 5.6.4 tuning-primer.sh性能调试工具的使用 205 5.6.5 72 gb内存的my.cnf配置文件 208 5.6.6 谨慎使用分区表功能 211 5.7 mysql5.6同步复制新特性详解 213 第6章 备份与恢复 223 6.1 冷备份 224 6.2 逻辑备份 224 6.2.1 mysqldump增加了一个重要参数 225 6.2.2 取代mysqldump的新工具mydumper 226 6.2.3 逻辑备份全量、增量备份脚本 229 6.3 热备份与恢复 230 第三部分 高可用集群管理篇 第7章 目前流行的4种高可用架构 236 7.1 采用mysql自带的replication架构 237 7.1.1 keepalived+mysql replication架构的搭建演示 237 7.1.2 mmm+mysql replication架构的搭建演示 241 7.2 heartbeat+drbd+mysql架构的搭建演示 249 7.3 红帽rhcs共享存储架构的搭建演示 254 7.3.1 安装过程 257 7.3.2 红帽rhcs集群的维护 265 7.4 mysql高可用集群ha解决方案的测试评估 267 第8章 批量管理服务器 270 8.1 开源工具pssh的使用方法 270 8.2 自己编写的ssh服务器批量管理工具 273 第四部分 监控篇 第9章 性能监控 278 第10章 服务监控 283 10.1 nagios搭建与维护 283 10.2 mysql数据库的监控脚本 288 第五部分 项目案例 第11章 项目案例讲解 292 11.1 数据碎片整理方案 292 11.2 用户信息表水平拆表方案 296 11.3 阿里巴巴中间件cobar水平拆表方案 299

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值