【数据库四】MySQL备份与恢复

MySQL备份与恢复

  • 1.数据库备份的分类
    • 1.1 数据备份的重要性
    • 1.2 数据库备份的分类
    • 1.3 常见的备份方法
  • 2.MySQL完全备份与恢复
    • 2.1 MySQL完全备份
    • 2.2 数据库完全备份分类
    • 2.3 MySQL物理冷备份及恢复
    • 2.4 数据迁移DST
    • 2.5 mysqldump进行逻辑备份
      • 2.5.1 mysqldump备份数据库
      • 2.5.2 mysqldump备份数据表
    • 2.6 数据库备份总结
  • 3. 恢复数据库
    • 3.1 使用source命令恢复数据库
    • 3.2 使用mysql命令恢复数据库
      • 3.2.1 重定向方式恢复数据库
      • 3.2.2 管道符方式恢复数据库
    • 3.3 恢复表操作
    • 3.4 完全恢复数据库总结
  • 4.MySQL增量备份与恢复
    • 4.1 二进制日志文件
    • 4.2 实例:完全备份+增量备份恢复数据库
    • 4.3 断点恢复
      • 4.3.1 基于位置恢复
      • 4.3.2 基于时间点恢复
    • 4.4 增量备份总结

1.数据库备份的分类

1.1 数据备份的重要性

在这里插入图片描述

1.2 数据库备份的分类

数据库备份

物理备份:直接对数据库的数据文件或者日志文件进行备份.
逻辑备份:对数据库的库或表对象进行备份.

在这里插入图片描述
在这里插入图片描述

备份策略

完全备份:每次备份都备份完整的数据库.

  • 是对整个数据库、数据库结构和文件结构的备份。
  • 保存的是备份完成时刻的数据库
  • 差异备份与增量备份的基础

差异备份:只备份上一次完全备份后的更新数据.
增量备份:每次备份只备份上一次完全备份或增量备份后的最新数据.
完全备份
在这里插入图片描述
增量备份

在这里插入图片描述
差异备份
在这里插入图片描述

1.3 常见的备份方法

物理冷备

  • 备份时数据库处于关闭状态,直接打包数据库文件

  • 备份速度快,恢复时也是最简单的

专用备份工具mysqldump或mysqlhotcopy

  • mysqldump常用的逻辑备份工具

  • mysqlhotcopy仅拥有备份MylSAM和ARCHIVE表

启用二进制日志进行增量备份

  • 进行增量备份,需要刷新二进制日志

第三方工具备份

  • 免费的MySQL热备份软件Percona XtraBackup

2.MySQL完全备份与恢复

2.1 MySQL完全备份

在这里插入图片描述

优点

备份与恢复操作简单方便

缺点

  • 数据存在大量的重复
  • 占用大量的备份空间
  • 备份与恢复时间长

2.2 数据库完全备份分类

物理冷备份与恢复

  • 关闭MySQL数据库
  • 使用tar命令直接打包数据库文件夹
  • 直接替换现有MySQL目录即可

补充:

tar zcvf  归档文件  原数据文件/目录     gzip
tar  jcvf  归档文件  原数据文件/目录  bzip2
tar  Jcvf  归档文件  原数据文件/目录  xz

mysqldump备份与恢复

  • MySQL自带的备份工具,可方便实现对MySQL的备份
  • 可以将指定的库、表导出为SQL脚本
  • 使用命令mysql导入备份的数据

2.3 MySQL物理冷备份及恢复

物理冷备份

先关闭数据库,然后打包备份相关数据库文件;

systemctl stop mysqld
mkdir /opt/backup    #将数据库备份文件保存到/opt/backup目录下
cd /usr/local/mysql
tar zcf /opt/backup/mysql_data-$(date +%F).tar.gz data/
cd /opt/backup/
tar tf mysql_data-2023-06-19.tar.gz     #查看tar压缩包里的数据文件
tar xf mysql_data-2023-06-19.tar.gz    #解压缩tar压缩包里的数据文件

在这里插入图片描述
恢复数据库

说明: 上面备份的数据库文件数据mysql_data-2023-06-19.tar.gz,作为远端异地已经备份好的数据库文件(IP:192.168.80.60),然后加载到另一台需要恢复的数据库主机(IP:192.168.80.70)。

###远端已备份数据文件主机(IP:192.168.80.60)
cd  /opt/backup
scp mysql_data-2023-06-19.tar.gz 192.168.80.70:/opt

###需要恢复数据库文件主机(IP:192.168.80.70)
systemctl stop mysqld
cd /opt
tar xf mysql_data-2023-06-19.tar.gz 
mv /usr/local/mysql/data /usr/local/mysql/data.bak    #将原有的数据库文件移走
mv /opt/data/ /usr/local/mysql/
systemctl restart mysqld   #重新启动数据库服务
mysql -uroot -p111    #此数据库密码为之前备份数据库的密码

2.4 数据迁移DST

DTS (Data Transmission Service,数据传输服务),用于在关系型数据库、NoSQL数据库、数据仓库之间迁移数据。可以使用DTS将数据迁移至阿里云,也可以在阿里云和本地数据系统之间做数据迁移

DTS的优势

相比传统的数据传输工具,DTS的优势:

(1) 传输过程中保证高稳定性
(2) 支持多种数据传输方式,包括:数据迁移、数据集成、数据同步、数据订阅
(3) 支持各种数据源直接的数据迁移。(如MySQL,redis等)
(4) 支持多种数据库引擎作为源和目标
(5) 支持断点续传:避免了硬件和网络故障导致的中断
(6) 支持定时任务

数据迁移总结:

体量小: 物理冷备 打包备份+恢复
体量中等: DTS
体量超大: 数据魔方

2.5 mysqldump进行逻辑备份

2.5.1 mysqldump备份数据库

在这里插入图片描述

备份指定数据库文件:
mysqldump -u用户名 -p密码 --databases 数据库名 > 指定路径的绝对路径/数据库名.sql

在这里插入图片描述

###将数据库gzy的数据文件备份到/opt/backup目录下,并重命名为gzy.sql
mysqldump -uroot -p111 --databases gzy > /opt/backup/gzy.sql  
vim /opt/backup//gzy.sql 

###同时备份gzy和mysql两个数据库文件
mysqldump -uroot -p111 --databases gzy mysql > /opt/backup/mysql_gzy.sql

在这里插入图片描述

备份所有数据库文件:
mysqldump -u用户名 -p密码 --all-databases > 指定路径的绝对路径/all.sql

在这里插入图片描述

###备份所有数据库中的数据库文件数据
mysqldump -uroot -p111 --all-databases > /opt/backup/all-databases.sql

###过滤出备份文件中,不以“--”和"/*"开头,并且以“CREATE DATABASE”开头的数据行
cat all-databases.sql | grep -v "^--" | grep -v "^/\*" | grep "^CREATE DATABASE"

在这里插入图片描述

2.5.2 mysqldump备份数据表

在这里插入图片描述

备份指定数据库中的表数据文件:
mysqldump -u用户名 -p密码 数据库名 表名 > 指定路径的绝对路径/数据库名_表名.sql

###备份gzy数据库中clr表数据内容
mysqldump -uroot -p111 gzy clr > /opt/backup/gzy_clr.sql
vim /opt/backup/gzy_clr.sql

在这里插入图片描述

备份指定数据库中的所有表数据文件:
mysqldump -u用户名 -p密码 数据库名 > 指定路径的绝对路径/数据库名_all.sql

###备份gzy数据库中的所有表数据内容,会包含gzy数据库中的所有表信息,但不包括创建数据库的操作
mysqldump -uroot -p111 gzy> /opt/backup/gzy_all.sql
vim /opt/backup/gzy_all.sql

2.6 数据库备份总结

完全备份

物理冷备: 先关闭mysqld服务,使用tar命令打包备份数据库的数据目录/文件 /usr/local/mysql/data/

mysqldump、xtrabackup等工具来逻辑备份

###备份单库或多库
mysqldump -uXXX -pXXX --databases 库1 [库2] ... >  XXX.sql  
###备份所有的库   
mysqldump -uXXX -pXXX --all-databases > XXX.sql   
###备份库中的一个或多个表数据(不包含创建库的操作)             
mysqldump -uXXX -pXXX 库名 表12 ... > XXX.sql   
###备份库中的所有表数据(不包含创建库的操作)            
mysqldump -uXXX -pXXX 库名 > XXX.sql                           

3. 恢复数据库

在这里插入图片描述

3.1 使用source命令恢复数据库

使用source命令恢复数据库的备份文件;

###查看gzy数据库中的clr表的数据文件信息(免交互登录数据库的方式)
mysql -uroot -p111 -e "select * from gzy.clr;"   
###删除指定数据库gzy
mysql -uroot -p111 -e "drop database gzy;"

###登录数据库
mysql -uroot -p111
###使用source命令恢复指定数据库文件
source /opt/backup/gzy.sql;

在这里插入图片描述

注意: 在使用数据库备份文件恢复具体数据库时,可以直接使用source命令直接恢复数据库;但是在使用指定指定数据库中的数据表备份文件恢复数据时,需要先创建数据库,然后切换到新创建的数据库中,使用source命令恢复数据文件。

mysql -uroot -p111 -e "drop database gzy;"

###登录数据库
mysql -uroot -p111 
###先创建数据库kgc,然后切换到新创建的数据库kgc中
create database kgc;
use kgc;
###恢复数据库中的数据表文件数据
source /opt/backup/gzy_clr.sql;
select * from clr;

在这里插入图片描述

3.2 使用mysql命令恢复数据库

在这里插入图片描述

3.2.1 重定向方式恢复数据库

使用mysql重定向的方式恢复指定数据库文件;

mysql -uroot -p111 -e "drop database gzy;"
###使用mysql重定向的方式恢复指定数据库文件
mysql -uroot -p111 < /opt/backup/gzy.sql
mysql -uroot -p111 -e "show databases;"

在这里插入图片描述

3.2.2 管道符方式恢复数据库

使用mysql+管道符的方式恢复指定数据库文件;

mysql -uroot -p111 -e "drop database gzy;"
cat /opt/backup/gzy.sql | mysql -uroot -p111
mysql -uroot -p111 -e "show databases;"

免交互方式,使用指定数据库中的数据表文件恢复;

mysql -uroot -p111 -e "drop database gzy;"
mysql -uroot -p111 -e "show databases;"
mysql -uroot -p111 < /opt/backup/gzy_clr.sql
###将已备份好的数据文件恢复到指定数据库kgc中
mysql -uroot -p111 kgc < /opt/backup/gzy_clr.sql
mysql -uroot -p111 -e "select * from kgc.clr;"

在这里插入图片描述

3.3 恢复表操作

在这里插入图片描述
举例:shell脚本定时自动执行脚本备份操作

###每周二的凌晨十二点半,定时自动执行脚本备份所有的数据库文件数据
30  0  * * 2 xxx/mysqldump-uxx -pxxx --all-databases > /opt/backup/XXX.sql

3.4 完全恢复数据库总结

完全恢复

先登录到mysql,再执行 source XXX.sql(注:如果XXX.sql是表数据文件那么需要先自行创建库并use切换库

mysql -uXXX -pXXX [库名] < XXX.sql
cat XXX.sql | mysql -uXXX -pXXX [库名]

4.MySQL增量备份与恢复

4.1 二进制日志文件

在这里插入图片描述
在这里插入图片描述

mysql -uroot -p111 
###模糊查询通用日志的相关信息
show variables like 'general%';
###模糊查询二进制日志的相关信息
show variables like 'log_bin%';
###模糊查询慢查询日志的相关信息
show variables like '%slow%';

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

vim /etc/my.cnf
------------在“server-id”行下面添加mysql数据库的日志信息---------
server-id = 1
---------------------------------------------------------------
#错误日志
log-error=/usr/local/mysql/data/mysql_error.log
#通用查询日志
general_log=ON
general_log_file=/usr/local/mysql/data/mysql_general.log
#二进制日志
log-bin=mysql-bin
#慢查询日志
slow_query_log=ON
slow_query_log_file=/usr/local/mysql/data/mysql_slow_query.log
long_query_time=2

systemctl restart mysqld
mysql -uroot -p111

在这里插入图片描述

在这里插入图片描述

刷新生成二进制日志文件的两种方式:

(1)重启数据库服务:systemctl restart mysqld;

(2)flush-logs命令刷新:mysqladmin -uroot -p111 flush-logs;

注意: 新刷新出来的数据日志文件,实际是个空文件,因此应该备份保存的是新刷新出来的前一个序列号的日志文件

在这里插入图片描述
在这里插入图片描述

二进制日志(binlog)有3种不同的记录格式:

  • STATEMENT(基于SQL语句):默认格式是STATEMENT。该方式记录语句快,占用内存空间少。但高并发情况下会导致记录日志顺序紊乱,造成恢复数据时发生偏差。
  • ROW(基于行)基于数据内容行进行记录,不仅记录执行的命令语句,还会记录命令影响的相关数据行。
  • MIXED(混合模式)高并发情况下ROW方式进行记录,一般情况下采用STATEMENT方式进行记录。
vim /etc/my.cnf
#错误日志
log-error=/usr/local/mysql/data/mysql_error.log
#通用查询日志
general_log=ON
general_log_file=/usr/local/mysql/data/mysql_general.log
#二进制日志
log-bin=mysql-bin
#可选,指定二进制日志(binlog)的记录格式为ROW
binlog_format = ROW
#慢查询日志
slow_query_log=ON
slow_query_log_file=/usr/local/mysql/data/mysql_slow_query.log
long_query_time=2

systemctl restart mysqld

在这里插入图片描述

###转换格式,查看指定序列号的二进制数据日志文件
mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000003
--no-defaults:不使用默认格式进行查看
--base64-output=decode-rows:使用base64密码格式进行转换,-rows:按行进行输出
-v:显示详细输出过程

在这里插入图片描述

###修改更新数据库文件,可以在新生成的二进制日志数据文件中查看到更新的数据内容
mysql -uroot -p111
use gzy;
update clr set name='xiaoxiao' where id=2;

systemctl restart mysqld
mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000005

在这里插入图片描述

4.2 实例:完全备份+增量备份恢复数据库

mkdir /opt/bak
cd /opt/bak/
###full文件用于保存完全备份的数据文件,add用于保存增量备份的数据文件
mkdir full add

mysql -uroot -p111
###创建benet数据库
create database benet;
use benet;
create table t1 (id int,name varchar(20),age int,hobby varchar(50));
insert into t1 values (1,'小狗',22,'吃鱼');
insert into t1 values (2,'小猪',29,'吃牛');
insert into t1 values (3,'小猫',20,'画虎');

###采用完全备份的方式备份benet数据库中的所有内容
mysqldump -uroot -p111 --databases benet > /opt/bak/full/benet-$(date +%F).sql

###刷新权限,采用增量方式备份benet数据库中的所有内容
mysqladmin -uroot -p111 flush-logs
cd /usr/local/mysql/data
mv /usr/local/mysql/data/mysql-bin.000001 /opt/bak/add/mysql-bin-$(date +%F).sql

###新的一天增加新的数据内容,并进行增量备份新增加的数据内容
insert into t1 values (4,'小熊',22,'爬山');
insert into t1 values (5,'小马',25,'跑步');

###增量备份新生成的数据文件
mysqladmin -uroot -p111 flush-logs
mv /usr/local/mysql/data/mysql-bin.000002 /opt/bak/add/mysql-bin-$(date -d "1 day" +%F).sql

###新的一天增加新的数据内容,并进行增量备份新增加的数据内容
insert into t1 values (6,'小驴',22,'走路');
insert into t1 values (7,'小鸡',23,'唱歌');

###增量备份新生成的数据文件
mysqladmin -uroot -p111 flush-logs
mv /usr/local/mysql/data/mysql-bin.000003 /opt/bak/add/mysql-bin-$(date -d "2 day" +%F).sql

###删除提前已经备份好的数据库benet
drop database benet;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

完全备份+增量备份的具体恢复步骤:

###先采用完全备份的方式恢复benet数据库的文件内容
cd /opt/bak/full
cat benet-2023-06-19.sql | mysql -uroot -p111
mysql -uroot -p111 -e "show databases;"
mysql -uroot -p111 -e "select * from benet.t1;"

###恢复第二天增量备份到的数据内容
cd /opt/bak/add
mysqlbinlog --no-defaults mysql-bin-2023-06-20.sql | mysql -uroot -p111
mysql -uroot -p111 -e "select * from benet.t1;"

###恢复第三天增量备份到的数据内容
mysqlbinlog --no-defaults mysql-bin-2023-06-21.sql | mysql -uroot -p111
mysql -uroot -p111 -e "select * from benet.t1;"

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.3 断点恢复

mysql -uroot -p111
use benet;
select * from t1;
delete from t1 where id=6 or id=7;

###转换二进制日志文件格式,将已备份文件重定向写入到.txt文件中
mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin-2023-06-21.sql > mysql-bin-2023-06-21.txt

在这里插入图片描述

4.3.1 基于位置恢复

–start-position:从某个位置开始恢复备份文件,直到备份文件结尾结束

delete from t1 where id=6 or id=7;
###--start-position从某个位置开始往后恢复备份文件,直到结尾备份结束
mysqlbinlog --no-defaults --start-position='572' mysql-bin-2023-06-21.sql | mysql -uroot -p111

在这里插入图片描述

在这里插入图片描述

–stop-position:从开头开始恢复备份文件,直到某个指定位置备份恢复结束

delete from t1 where id=6 or id=7;
###--stop-position从开头开始恢复备份文件,直到某个指定位置结束
mysqlbinlog --no-defaults --stop-position='572' mysql-bin-2023-06-21.sql | mysql -uroot -p111

在这里插入图片描述
在这里插入图片描述

4.3.2 基于时间点恢复

–stop-datetime:从开头开始恢复备份文件,直到某个指定时间节点备份结束

delete from t1 where id=6 or id=7;
###--stop-datetime从开头开始恢复备份文件,直到某个指定时间节点备份结束
mysqlbinlog --no-defaults --stop-datetime='2023-06-19 21:37:08' mysql-bin-2023-06-21.sql | mysql -uroot -p111

在这里插入图片描述
在这里插入图片描述

–start-datetime:从指定时间节点开始恢复备份文件,直到结尾备份结束

delete from t1 where id=6 or id=7;
###--start-datetime从指定时间节点开始恢复备份文件,直到结尾备份结束
mysqlbinlog --no-defaults --start-datetime='2023-06-19 21:37:08' mysql-bin-2023-06-21.sql | mysql -uroot -p111

在这里插入图片描述
在这里插入图片描述

4.4 增量备份总结

查看二进制日志文件

mysqlbinlog --no-defaults --base64-output=decode-rows -v  二进制日志文件

刷新二进制日志

mysqladmin -uXXX -pXXX flush-logs

使用二进制日志实现增量恢复

mysqlbinlog --no-defaults 二进制日志文件 | mysql -uXXX -pXXX

断点恢复

mysqlbinlog --no-defaults  --start-position="位置点"  --stop-position="位置点"  二进制日志文件 | mysql -uXXX -pXXX

mysqlbinlog --no-defaults  --start-datetime="YYYY-mm-dd HH:MM:SS"  --stop-datetime="YYYY-mm-dd HH:MM:SS"  二进制日志文件 | mysql -uXXX -pXXX
  • 如果需要恢复到某条SQL语句之前的所有数据,就stop在这个语句的位置点或时间点
  • 如果需要恢复某条SQL语句之后的所有数据,就从这个语句的位置点或时间点start

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/33797.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Nvidia官方视频编解码性能

NVIDIA VIDEO CODEC SDK | NVIDIA Developer 1080P解码性能&#xff1a; 720P解码性能&#xff1a; 详细的参见官方的链接地址&#xff0c;对于GPU的解码fps能力&#xff0c;可以作为评估参照&#xff01;

视频与AI,与进程交互(二) pytorch 极简训练自己的数据集并识别

目标学习任务 检测出已经分割出的图像的分类 2 使用pytorch pytorch 非常简单就可以做到训练和加载 2.1 准备数据 如上图所示&#xff0c;用来训练的文件放在了train中&#xff0c;验证的文件放在val中&#xff0c;train.txt 和 val.txt 分别放文件名称和分类类别&#xff…

【JavaSE】初步认识

目录 【1】Java语言概述 【1.1】Java是什么 【1.2】Java语言重要性 【1.3】Java语言发展简史 【1.4】Java语言特性 【1.5】 Java开发环境安装 【2】初识Java的main方法 【2.1】main方法示例 【2.2】运行Java程序 【3】注释 【3.1】基本规则 【3.2】注释规范 【4】…

C语言--消失的数字

文章目录 1.法一&#xff1a;映射法2.法二&#xff1a;异或法3.法三&#xff1a;差值法4.法四&#xff1a;排序查找 1.法一&#xff1a;映射法 时间复杂度&#xff1a;O&#xff08;N&#xff09; 空间复杂度&#xff1a;O&#xff08;N&#xff09; #include<stdio.h>…

Tree树形控件做权限时,保持选项联动的同时,解决数据无法回显的问题

项目需求&#xff1a; 要求树形控件要有父子联动&#xff0c;也就是选择父级选项&#xff0c;子级也要选中&#xff0c;那么check-strictly属性就不能设置死,我的是 :check-strictlycheckStrictly,在data中赋值有变量。我之前设置check-strictly&#xff0c;就没了联动效果&…

补码的定义

补码的定义 补码的概念引入 补码的定义 例题

智能相机的功能介绍

智能视觉检测相机主要是应用在工业检测领域图像分析识别、视觉检测判断。相机具有颜色有无判别、颜色面积计算、轮廓查找定位、物体特征灰度匹配、颜色或灰度浓淡检测、物体计数、尺寸测量、条码二维码识别读取、尺寸测量、机械收引导定位、字符识别等功能。相机带有HDMI高清视…

设计模式3:单例模式:volatile关键字能不能解决多线程计数问题?

先说结论不能&#xff1a; 代码实测下&#xff1a; public class Counter {public volatile static int count 0;public static void inc() {//这里延迟1毫秒&#xff0c;使得结果明显try {Thread.sleep(1);} catch (InterruptedException e) {}count;}public static void ma…

6.4.4 观察文件类型:file

如果你想要知道某个文件的基本数据&#xff0c;例如是属于 ASCII 或者是 data 文件&#xff0c;或者是 binary&#xff0c; 且其中有没有使用到动态函数库 &#xff08;share library&#xff09; 等等的信息&#xff0c;就可以利用 file 这个指令来检阅。举例来说&#xff1a;…

Linux vs windows 他们之间的区别

作者简介&#xff1a;一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭&#xff1a;低头赶路&#xff0c;敬事如仪 个人主页&#xff1a;网络豆的主页​​​​​ 目录 前言 一.windows与Linux区别 二.Linux与Windows操作对比 三.Linux与Windows命令 …

如何克服自动化测试中的壁垒和问题?

随着自动化测试技术的快速发展和普及&#xff0c;自动化测试已经成为各个行业广泛应用的重要测试手段。然而&#xff0c;自动化测试中仍然存在壁垒和问题&#xff0c;这些问题可能对测试效果产生影响&#xff0c;甚至会影响整个项目的进程。在本文中&#xff0c;我们将探讨如何…

Mysql批量插入1000条数据

使用mysql的存储过程 1.现有如下一张表&#xff1a;site_row 2.创建存储过程 CREATE PROCEDURE p01 () BEGIN declare i int; set i1;while i<1000 doINSERT INTO site_row(row_id,row_num) VALUES ( i,i);set ii1; end WHILE;END; 3.执行存储过程 CALL p01(); 4.查看效…

UE4/5动画系列(3.通过后期处理动画蓝图的头部朝向Actor,两种方法:1.通过动画层接口的look at方法。2.通过control rig的方法)

目录 蓝图 点积dot Yaw判断 后期处理动画蓝图 动画层接口 ControlRig: 蓝图 首先我们创建一个actor类&#xff0c;这个actor类是我们要看的东西&#xff0c;actor在哪&#xff0c;我们的动物就要看到哪里&#xff08;同样&#xff0c;这个我们也是做一个父类&#xff0…

爆肝整理,性能测试-测试工具选型(各个对比)卷起来...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 性能测试和功能测…

Elasticsearch:跨集群复制应用场景及实操 - Cross Cluster Replication

通过跨集群复制&#xff08;Cross Cluster Replication - CCR&#xff09;&#xff0c;你可以跨集群将索引复制并实现&#xff1a; 在数据中心中断时继续处理搜索请求防止搜索量影响索引吞吐量通过在距用户较近的地理位置处理搜索请求来减少搜索延迟 跨集群复制采用主动 - 被…

2核4G服务器_4M带宽_CPU性能测评_60G系统盘

阿里云2核4G服务器297元一年、4M公网带宽、60G系统盘&#xff0c;阿里云轻量应用服务器2核4G4M带宽配置一年297.98元&#xff0c;2核2G3M带宽轻量服务器一年108元12个月&#xff0c;如下图&#xff1a; 目录 阿里云2核4G4M轻量应用服务器 2核4G服务器限制条件 轻量服务器介…

Web安全——PHP基础

PHP基础 一、PHP简述二、基本语法格式三、数据类型、常量以及字符串四、运算符五、控制语句1、条件控制语句2、循环控制语句3、控制语句使用 六、php数组1、数组的声明2、数组的操作2.1 数组的合拼2.2 填加数组元素2.3 添加到指定位置2.4 删除某一个元素2.5 unset 销毁指定的元…

PyTorch开放神经网络交换(Open Neural Network Exchange)ONNX通用格式模型的熟悉

我们在深度学习中可以发现有很多不同格式的模型文件&#xff0c;比如不同的框架就有各自的文件格式&#xff1a;.model、.h5、.pb、.pkl、.pt、.pth等等&#xff0c;各自有标准就带来互通的不便&#xff0c;所以微软、Meta和亚马逊在内的合作伙伴社区一起搞一个ONNX(Open Neura…

【Spring Cloud系列】-负载均衡(Load Balancer,LB)

【Spring Cloud系列】-负载均衡&#xff08;Load Balancer&#xff0c;LB&#xff09; 文章目录 【Spring Cloud系列】-负载均衡&#xff08;Load Balancer&#xff0c;LB&#xff09;一、什么是负载均衡&#xff08;Load Balancer&#xff0c;LB&#xff09;二、负载均衡的主要…