Linux数据库高可用实现

准备

本章需要两个linux系统,两个linux系统中安装数据库,两个linux的ip地址必须不一样,如果是一样的话,改ip地址

本章使用的数据库可视化软件是:SQLyogEnt

修改ip地址
安装数据库

数据库优化说明

场景 :

数据库中的记录应该保证尽可能的安全,如果数据丢失则会造成不可挽回的损失,所以我们希望出现这种情况!!!

说明 :

根据用户的需求 定期的将数据库文件进行备份/转储 从而保证数据的安全.

冷备份说明 :

冷备份可以实现以上的需求但是,冷备份有缺点,操作起来比较麻烦

缺点 --

该操作需要人工手动的操作
冷备份由于不是实时的,所以可能导致数据丢失
如果备份的数据库的文件较大,则备份的时间很久,容易出错
说明: 数据的冷备份是公司恢复数据最后有效的手段.

Linux数据库高可用实现_第1张图片

热备份说明 :

热备份给我们带来了很多的方便,备份步骤有些麻烦但是,备份后以后不用手动备份了,

备份步骤 :

当用户进行了数据的修改时,会将修改的数据写入二进制日志文件
从库通过IO线程 读取主库中的记录.将数据写入到中继日志中
Sql线程读取数据信息.通过sql语句写入到从库中

数据库备份的功能,是数据库原生自带的服务.所以不需要第三方的干预…

注意事项: 数据库中的二进制日志文件 默认的条件下是关闭的.如需备份,需要手动的开启.

实现数据库热备份操作

1)-- 开启主库二进制日志

主库: 192.168.126.129
从库: 192.168.126.130
二进制文件的目录
vim /etc/my.cnf

主库的操作

进去my.cnf文件后 接下来写入图片中的两个配置

Linux数据库高可用实现_第2张图片

2)-- 重启数据库检查二进制文件信息

命令 : systemctl restart mariadb

Linux数据库高可用实现_第3张图片
完成后重启数据库然后进入数据库的工作目录然后查询配置的是否正确

如果有图片中的mysql-bin前缀的文件,那就成功了

3) -- 数据的备份

说明:在数据库的主库中,将jtdb.sql(数据库)文件进行转储.之后利用sql工具在从库中进行导入.

就是主库的数据库和从库的数据库一致,所以主库的数据库复制到从库中

主库

Linux数据库高可用实现_第4张图片

从库

Linux数据库高可用实现_第5张图片

4)-- 开启从库二进制文件

二进制文件的目录
vim /etc/my.cnf

从库的操作

进去my.cnf文件后 接下来写入图片中的两个配置
Linux数据库高可用实现_第6张图片

重启mysql数据库 检查是否有二进制文件信息

Linux数据库高可用实现_第7张图片
配置完成后 重启数据库 在数据库的工作目录中查看,是否成功 如果有 mysql-bin前缀两个文件那就成功了

实现数据库主从挂载

1)-- 检查主库状态

主库的状态

Linux数据库高可用实现_第8张图片
查看主库中是否有 映射的二进制文件,

如果需要重新生成二进制文件信息,则手动删除文件即可

Linux数据库高可用实现_第9张图片

1-- 删除mysql-bin前缀的所有文件
2-- 重启数据库
3-- 自动重新生成文件

2)-- 检查主库状态

在可视化软件中 查看状态

主库中执行

SHOW MASTER STATUS;

Linux数据库高可用实现_第10张图片

3) -- 实现数据库主从搭建

从库中执行

/*130 数据库从库 IP地址/端口号/用户名/密码/
二进制文件名称/二进制文件的位置*/
CHANGE MASTER TO MASTER_HOST="192.168.126.129",
MASTER_PORT=3306,
MASTER_USER="root",
MASTER_PASSWORD="root",
MASTER_LOG_FILE="mysql-bin.000001",
MASTER_LOG_POS=245;

/*2.启动数据库主从服务*/
START SLAVE;

/*3.检查主从的状态*/
SHOW SLAVE STATUS;

/*4.搭建错误 1).关闭主从服务   */
/*4.1  关闭主从服务*/
STOP SLAVE;
/*4.2  检查报错信息 last_sql_error last_io_error 根据日志查询状态*/
/*4.3 重新搭建主从服务  */

这些命令在 可视化软件中执行 按步骤来执行

3) -- 搭建校验

查看命令

SHOW SLAVE STATUS;

Linux数据库高可用实现_第11张图片
如果有了这两种 那就热备份成功了

你可能感兴趣的:(Linux数据库高可用实现)