当前位置: 首页 > news >正文

MYSQL数据库集群高可用和数据监控平台

项目环境

项目拓扑结构

软硬件环境清单

软硬件环境清单

软硬件环境清单

主机名IP硬件软件     
master1

192.168.12.130

VIP:192.168.12.200

cpu:1颗2核

内 存:2GB

HDD:20GB

网 络:NAT

VmWare17 OpenEuler22.03 SP4 MySql8.0.37 Keepalived2.2.4
master2

192.168.12.131

VIP:192.168.12.200

cpu:1颗2核

内 存:2GB

HDD:20GB

网 络:NAT

VmWare17 OpenEuler22.03 SP4 MySql8.0.37 Keepalived2.2.4
monitor192.168.12.132

cpu:1颗2核

内 存:2GB

HDD:20GB

网 络:NAT

VmWare17 OpenEuler22.03 SP4 MySql8.0.37 Keepalived2.2.4

项目实现步骤

OpenEuler系统安装

系统配置

环境配置

主机名:

关闭三台主机防火墙及SELinux:

reboot

三台主机下载所需软件并升级:

yum  install  vim  make  gcc  tree  net-tools tar  -y
yum  update

三台主机重新设置登录系统密码:

passwd root

三台主机时间同步:

【时间不同步有可能导致主从架构或主主架构出现异常】

vim  /etc/chrony.conf

server   ntp.aliyun.com   iburst
systemctl restart  chronyd
chronyc  sources  -v 

【可多执行几次】

master1

master2:

monitor:

timedatectl

生产环境二进制包安装MySql

[注意:2台MySql服务器安装过程相同,以下以master1主机为例 ]

下载安装包

解压缩:
tar  xvf  mysql-8.0.37-linux-glibc2.17-x86_64.tar.xz

查看是否解压成功:

cd  mysql-8.0.37-linux-glibc2.17-x86_64

使用前的准备
cd  ~ 
mv  mysql-8.0.37-linux-glibc2.17-x86_64  /usr/local/mysql
cd /
cd /usr/local/mysql 

创建用户组mysql:

groupadd mysql

创建名为 mysql的系统用户:

【将其添加到mysql用户组中,并设置其登录shell为/bin/false,以限制该用户的登录权限】

useradd -r -g mysql -s /bin/false mysql

创建用于存放MySQL数据文件目录:

mkdir data

设置mysql目录的账户及工作组,生产环境中不要使用root:

chown -R mysql:mysql /usr/local/mysql 

初始化软件
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

master1:

root@localhost:ycx%ci7loPrg

master2:

root@localhost:8nRCf5s<?QBF

使用后台方式以mysql用户身份启动 MySQL 服务器:

【mysqld_safe 是一个用于启动和监控 MySQL 服务器的脚本】

bin/mysqld_safe --user=mysql &

【注意:

此时上述命令执行完毕处于后台运行状态,需要另行启动一个终端

查看进程运行状态:

ps  -ef | grep  mysql

cd  /usr/local/mysql

 登录:

【可能报错】

bin/mysql -uroot -p

【报错,需要找到下面的文件进行软连接】

cd ~
ln -s /usr/lib64/libncurses.so.6.3 /usr/lib64/libncurses.so.5
ln -s /usr/lib64/libtinfo.so.6.3 /usr/lib64/libtinfo.so.5

登录:

cd  /usr/local/mysql
bin/mysql -uroot -p
ycx%ci7loPrg---【master1】
8nRCf5s<?QBF---【master2】

修改密码:

 alter  user 'root'@'localhost'  identified  with  mysql_native_password by '123456';

刷新:

flush privileges; 

查看账户信息:

select user, host, plugin from mysql.user;

退出MySQL:

exit

查看当前MySQL进程:

ps -ef | grep mysql

master1:

master2:

在当前终端关闭运行的mysql:

kill  -9  pid号  
设置mysql的配置文件

【 回到之前的终端,敲一个回车,显示进程以杀死】

新建:

vim /etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock[mysqld]
port = 3306
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
tmpdir = /tmp
socket = /tmp/mysql.sock
character-set-server = utf8mb4
collation-server = utf8mb4_general_ci
default-storage-engine=INNODB
log_error = error.log
配置启动脚本
cd  /usr/local/mysql/support-files
cp -a mysql.server /etc/init.d/mysql
vim  /etc/init.d/mysq
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

cd  ~ 

设置环境变量需添加如下语句:

vim  ~/.bash_profile
export PATH=$PATH:/usr/local/mysql/bin

source  ~/.bash_profile

重载系统配置:

systemctl daemon-reload

相关文章:

  • JAVA EE_网络原理_网络层
  • 机器视觉开发教程——C#如何封装海康工业相机SDK调用OpenCV/YOLO/VisionPro/Halcon算法
  • 《设计模式之禅》笔记
  • Win全兼容!五五 Excel Word 转 PDF 工具解决多场景转换难题
  • 【github分享】开发者学习路线图
  • 前端代理问题
  • 技术书籍推荐(002)
  • spark运行架构及核心组件介绍
  • 使用go开发安卓程序
  • 用户线程和守护线程
  • 如何配置光猫+路由器实现外网IP访问内部网络?
  • 【MySQL】页结构详解:页的大小、分类、头尾信息、数据行、查询、记录及数据页的完整结构
  • C# Newtonsoft.Json 使用指南
  • 最大化效率和性能:AKS 中节点池的强大功能
  • Kubernetes排错(十一):lsof命令实战场景
  • 弹性Reasoning!通过RL训练控制推理预算,提升模型的推理能力和效率!
  • eNsp的使用
  • 招行数字金融挑战赛数据赛道赛题一
  • Appium-OppoA92S-真机记坑
  • MySQL 索引设计宝典:原理、原则与实战案例深度解析
  • 中国女足将于5月17日至6月2日赴美国集训并参加邀请赛
  • 新闻1+1丨婚姻登记服务,如何跑出幸福加速度?
  • 济南市委副秘书长吕英伟已任历下区领导
  • 上海能源科技发展有限公司原董事长李海瑜一审获刑13年
  • 上海下周最高气温在30℃附近徘徊,夏天越来越近
  • 重庆三峡学院回应“85万元中标设备,网购价不到300元”:已着手解决