数据库的负载均衡,高可用实验

news/2024/7/10 0:19:40 标签: 数据库, 负载均衡, 运维, mysql, 常见配置

一 高可用负载均衡集群数据库实验

1.实验拓扑图

2.实验准备(同一LAN区段)(ntp DNS)

客户端:IP:192.168.1.5  下载:MariaDB

负载均衡器:IP:192.168.1.1 下载:keepalived ipvsadm

            IP:192.168.1.2 下载:keepalived ipvsadm

服务器:IP:192.168.1.3 下载MariaDB-Galera-server

        IP:192.168.1.4 下载MariaDB-Galera-server

3.配置服务器

A web1:在/mnt/下新建一个mysql的目录,在将rpms与repodata拖到此目录下

web2:#scp -r 192.168.1.3:/mnt/mysql /mnt/

B web1:配置yum源

  #vim /etc/yum.repos.d/y.repo

[y]

name = y

baseurl =file:///mnt/mysql

enabled=1

gpgcheck=0

web2:#scp 192.168.1.3:/etc/yum.repo.d/y.repo /etc/yum.repos.d/

C下载MariaDB-Galera-server(web1/2)

#yum --enablerepo=y -y install MariaDB-Galera-server

D编辑配置文件

Web1:#vim /etc/my.cnf.d/server.cnf

E启动集群

Web1:#/etc/rc.d/init.d/mysql bootstrap

F配置 mysql 的基本设置

Web1:#mysql_secure_installation

G配置web2(内容同一致,改IP地址就行)

#scp 192.168.1.3:/etc/my.cnf.d/server.cnf /etc/my.cnf.d/

#vim /etc/my.cnf.d/server.cnf

F启动服务(web1/2)

#systemctl start mysql

G验证集群是否搭建成功

在web1上登陆数据库新建一个test的数据库

#mysql -uroot -p123

>create database test;

在web2上登入

#mysql -uroot -p123

>select databases;  看到test则建立成功

4.配置LVS

A下载软件(LVS主/备)

#yum -y install keepalived ipvsadm

B编辑配置文件(LVS主)

#vim /etc/keepalived/keepalived.conf

#vim lvs.sh

C LVS备

#scp 192.168.1.1:/etc/keepalived/keepalived.conf /etc/keepalived/

#scp 192.168.1.1:/root/lvs.sh ./

#vim /etc/keepalived/keepalived.conf

D在web1/2上

#vim web.sh

#scp 192.168.1.3:/root/web.sh ./

Web1/2:#bash web.sh

Web1/2:#ifconfig

D启动服务,运行脚本

LVS主/备:#systemctl restart keepalived

           #bash lvs.sh

5客户端

#yum groups install mariadb mariadb-client -y

6验证高可用负载均衡集群数据库

A在服务端登陆数据库

#mysql -uroot -p123

B新建一个用户,给与此用户对所有客户端拥有访问test数据库的权限

>grant all privileges on test.* to yi identified by 123;

查看yi用户权限

> select user,host,password from user;

C在客户端用yi用户登陆

#mysql -uyi -p123 -h 192.168.1.88

D在web1服务器端查看

>show processlist;

在web2服务器查看

>show processlist;

在客户端退出数据库后再登陆则会发现两个服务器查询结果会互换;让其中一台LVS负载均衡器宕机,再用客户端登陆,发现任然能登陆数据库


http://www.niftyadmin.cn/n/5480759.html

相关文章

uniapp:uview-plus的一些记录

customStyle 并不是所有的组件都有customStyle属性来设置自定义属性,有的还是需要通过::v-deep来修改内置样式 form表单 labelStyle 需要的是一个对象 :labelStyle"{color: #333333,fontSize: 32rpx,fontWeight: 500}"dateTimePicker选择器设置默认值…

Jenkins 命令无法后台运行,使用BUILD_ID=dontKillMe解决

例子: jenkins如果在shell里使用nohup发现还是不能后台运行,直接挂掉。 那么可以在jenkins命令里加上BUILD_IDdontKillMe解决 nohup python main.py >server.out 2>&1 &它的作用是在后台运行名为main.py的Python脚本,并将标准…

Netty 入门应用之Http服务WebSocket

Netty实现Http服务 主要的变化是在初始化器中引入了新的编解码器 一些创建的类作用和Netty HelloWorld的小demo一样我这里就不再次重复了 1、Http服务端代码 public class HttpServer {public static void main(String[] args) {// 创建Reactor// 用来管理channel 监听事件 …

A9 STM32_HAL库函数 之 DAC通用驱动所有函数的介绍及使用

A9 STM32_HAL库函数 之 DAC通用驱动所有函数的介绍及使用 1 通用定时器(TIM)预览1.1 HAL_DAC_Init1.2 HAL_DAC_DeInit1.3 HAL_DAC_MspInit1.4 HAL_DAC_MspDeInit1.5 HAL_DAC_Start1.6 HAL_DAC_Stop1.7 HAL_DAC_Start_DMA1.8 HAL_DAC_Stop_DMA1.9 HAL_DAC…

spring boot 集成 flyway依赖 做数据库迁移,让部署没烦恼

flyway 是一个敏捷工具&#xff0c;用于数据库的移植。采用 Java 开发&#xff0c;支持所有兼容 JDBC 的数据库。 主要用于在你的应用版本不断升级的同时&#xff0c;升级你的数据库结构和里面的数据。 还是直接上代码 第一步&#xff1a; <!-- Flyway 数据库迁移 依赖 他…

vue3中axios添加请求和响应的拦截器

本章主要是以记录为主。 在src创建一个utils文件夹&#xff0c;并在utils中创建一个request.js文件。 // 引入axios import axios from "axios"; // import qs from "qs"; // 创建axios实例 const instance axios.create(); // 请求拦截器 instance.int…

Jmeter的json提取器(包括提取一个参数的所有值,提取多个参数

jmeter的json提取器&#xff08;包括提取多个参数&#xff0c;提取一个参数的所有值&#xff09;https://www.cnblogs.com/jxial/p/15175314.html 在工作中经常遇到这种情况&#xff0c;就是下一个接口需要引用上一个接口返回的值&#xff0c;普遍的方法就是运用后置提取器 常…

Centos服务器安装MySQL

Centos服务器安装MySQL 利用闲置服务器安装MySQL&#xff0c;用于项目练手 Linux版本&#xff1a;Centos7.9 MySQL版本&#xff1a;8.0.36 一、下载MySQL 从Oracle官网下载最新版本的MySQL wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.36-1.el7.x86_64.rp…