MySql 主从(备)部署 | 冷备份

前言

MySQL 主从复制(Master-Slave Replication)是一种常见的数据库架构设计,用于提高数据可用性、实现读写分离以及支持备份策略。

冷备份是指在数据库关闭状态下进行的数据备份方式。这种方式简单直接,但需要导致服务中断。

在数据库管理中,确保数据的高可用性和灾难恢复能力是至关重要的。MySQL 通过主从复制(Master-Slave Replication)和冷备份(Cold Backup)为用户提供了一套完整的解决方案

准备

1,分别在两台电脑上安装mysql(尽量保障mysql版本一样)。

PS:可以在一台电脑上弄,需要注意端口之类的。

2,安装后查看数据库的目录,本次演示使用默认安装。

MySQL Server 程序文件的安装位置:

此目录主要用于存放数据文件、配置文件以及日志文件等

主从部署

Master(主机)

1,打开服务找到对应的mysql服务进行关闭:

2,打开my.ini文件。在图中位置增加以下内容:

增加内容的意思是,一下这几个数据库会同步到从机上。

3,在master数据库中创建一个账号,用于给slave使用,因为slave需要连接到master,然后下载binlog,那么就必须给它分配一个账号,而且账号权限只能用于同步binlog。

运行如下sql语句:

复制代码
CREATE USER 'slave'@'%' IDENTIFIED BY '123456';#创建新的账号,账号名称为slave,密码为123456
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%'; #赋予账号slave同步binlog的权限
FLUSH PRIVILEGES;#刷新一下

4,在主机的数据库中运行语句,记住返回的参数需要用。

复制代码
show master status  

Slave(从机)

1,同样停止服务并打开my.ini文件。修改增加以下内容:

注意这里的server-id不能重复

2,所有文件配置就ok了。修改之后重启mysql服务。

3,新增sql脚本,输入以下脚本,其中 master_log_file 和 master_log_pos 是主机的数据。stop slave;

复制代码
#master服务器的ip地址
CHANGE MASTER TO master_host='192.168.1.100',
#第5步中创建的账号
master_user='slave',
#第5步中创建的密码
master_password='123456',
#上一步中的File
master_log_file='ECS-56099351-bin.000002',
#上一步中的Position
master_log_pos= 2840,
get_master_public_key=1;
start slave;

4,查看下线程状态。如果两个都是yes证明就可以了。

5,我们试着给master主机的db数据库中写入一些数据,发现从机中也是有的。

冷备份

1,同样需要把mysql的服务停掉。

2,我们找到数据文件夹中,把下面两个文件压缩打包备份。

3,把打包后的文件,解压到需要恢复的数据库目录中解压

4,打开server服务,然后我们使用新备份的账号密码登陆看一下恢复情况。

结语

需要注意的是,虽然主从复制能够大大提高系统的可用性,但并不能完全代替备份策略。合理结合使用冷备份等备份方法,才能更好地保护数据安全。

参考文献:

实战讲解mysql8主从复制(windows版) - 哔哩哔哩

相关推荐
程序员爱钓鱼3 天前
Go 语言高效连接 SQL Server(MSSQL)数据库实战指南
后端·go·sql server
码农研究僧10 天前
SQL Server 视图的更新排查及清除缓存
缓存·sql server·视图刷新
夜光小兔纸2 个月前
SQL Server 建立每日自动log备份的维护计划
运维·数据库·sql server
Andrew_Ryan3 个月前
SQL Server XML 查询示例
sql server
zhlh_xt3 个月前
如何查询SQL Server数据库服务器的IP地址
服务器·数据库·sql server·查询数据库服务ip地址
小贝贝同学3 个月前
SQL Server数据表模糊查询(like用法)详解
sql server
ManageEngine卓豪4 个月前
SQL Servers审核提高数据库安全性
sql server·日志管理·sql server审核
冬日暖羊4 个月前
SQL Server创建用户只能访问指定数据库和视图
sql server
tangdou3690986555 个月前
Docker系列-超级详细教你Linux安装并使用docker compose,如何使用docker-compose安装sqlserver
docker·容器·sql server