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版) - 哔哩哔哩

相关推荐
ClouGence4 天前
SQL Server CDC 能放到 Always On 备库读吗?一文讲透原理与实践
数据库·sql server
Daydream.V1 个月前
SQL Server 超详细入门教程
sql·sql server
betazhou2 个月前
SQL server 2017镜像库主从同步架构部署
架构·sql server·高可用·主从同步·镜像库
betazhou2 个月前
SQL server数据库镜像同步技术
数据库·sql server·高可用·数据库镜像
码农刚子2 个月前
.NET 8 Web开发入门(四):注入燃料——Entity Framework Core 与 Code First 实战
数据库·orm·sql server
CSharp精选营2 个月前
.NET 8 Web开发入门(四):注入燃料——Entity Framework Core 与 Code First 实战
orm·sql server·数据库迁移·ef core·entity framework core·crud操作·code first
陳錄生2 个月前
Emacs 读sql server数据库(数据cp936)中文乱码问题。
python·emacs·sql server
zxy28472253012 个月前
今年第二次碰上客户服务器操作系统废了-记一次sql server数据库恢复的过程
sql server·数据库备份·恢复·数据库恢复·数据库文件
绩隐金3 个月前
SQL Server 性能优化实战(第一期):索引——查询加速的基石
sql server
小猿姐3 个月前
# KubeBlocks for MSSQL 高可用实现
数据库·架构·sql server