RMAN备份与恢复
文章目录
- 一、RMAN介绍
- 二、全量备份
- 三、增量备份
- 0级备份
- 1级增量备份
- 累积性差量备份
- 总结
- 四、压缩备份
- 压缩备份介绍
- 压缩备份操作
- 压缩备份优缺点
- 五、异常恢复
- 1、恢复前的准备
- 2、恢复数据库
- 六、RMAN相关参数

一、RMAN介绍
RMAN(Recovery Manager)是Oracle数据库的一个备份和恢复管理工具,它提供了一种集中管理和自动化备份和恢复任务的方式。RMAN可以与Oracle数据库一起使用,以提供基于磁盘和磁带的备份,可以在遇到数据丢失或数据库故障时快速恢复数据。
RMAN具有以下特点和功能:
-
集中管理:RMAN可以集中管理所有的备份和恢复任务,包括备份的创建、管理和恢复的操作。它提供了一种统一的接口来执行这些任务,可以通过命令行界面或图形化界面来操作。
-
自动化备份和恢复:RMAN支持自动化备份和恢复任务,可以设置定期备份计划,并自动执行备份任务。它还提供了一种灵活的恢复策略,可以根据需求选择恢复到某一个时间点或某一个备份集。
-
增量备份:RMAN支持增量备份,可以只备份数据库中发生变化的数据块,大大减少备份时间和存储空间的需求。增量备份还可以与全备份和归档日志一起使用,提供了一种完整的备份和恢复解决方案。
-
数据库复制和恢复:RMAN支持数据库复制和恢复,可以将一个数据库的备份还原到另一个数据库上。这种功能可以用于数据库迁移、测试和开发环境的创建等场景。
-
数据库压缩:RMAN支持对备份集和归档日志进行压缩,可以减少备份和恢复所需的存储空间。同时,RMAN还支持数据压缩选项,可以在备份过程中对数据进行压缩,减少备份时间和存储成本。
RMAN是Oracle数据库备份和恢复的重要工具,它提供了一种集中管理和自动化执行备份和恢复任务的方式,可以帮助用户保护数据,并在遇到数据丢失或数据库故障时快速恢复数据。RMAN(Recovery Manager)是Oracle数据库的一个备份和恢复管理工具,它提供了一种集中管理和自动化备份和恢复任务的方式。RMAN可以与Oracle数据库一起使用,以提供基于磁盘和磁带的备份,可以在遇到数据丢失或数据库故障时快速恢复数据。
RMAN具有以下特点和功能:
-
集中管理:RMAN可以集中管理所有的备份和恢复任务,包括备份的创建、管理和恢复的操作。它提供了一种统一的接口来执行这些任务,可以通过命令行界面或图形化界面来操作。
-
自动化备份和恢复:RMAN支持自动化备份和恢复任务,可以设置定期备份计划,并自动执行备份任务。它还提供了一种灵活的恢复策略,可以根据需求选择恢复到某一个时间点或某一个备份集。
-
增量备份:RMAN支持增量备份,可以只备份数据库中发生变化的数据块,大大减少备份时间和存储空间的需求。增量备份还可以与全备份和归档日志一起使用,提供了一种完整的备份和恢复解决方案。
-
数据库复制和恢复:RMAN支持数据库复制和恢复,可以将一个数据库的备份还原到另一个数据库上。这种功能可以用于数据库迁移、测试和开发环境的创建等场景。
-
数据库压缩:RMAN支持对备份集和归档日志进行压缩,可以减少备份和恢复所需的存储空间。同时,RMAN还支持数据压缩选项,可以在备份过程中对数据进行压缩,减少备份时间和存储成本。
RMAN是Oracle数据库备份和恢复的重要工具,它提供了一种集中管理和自动化执行备份和恢复任务的方式,可以帮助用户保护数据,并在遇到数据丢失或数据库故障时快速恢复数据。
二、全量备份
这里我所使用的机器是RAC集群
先提前创建好备份目录,并且授权
su - oracle
mkdir /u01/app/oracle/backupchown -R oracle:oinstall /u01/app/oracle/backup/
chmod -R 770 /u01/app/oracle/backup/

rman target sys/oracle@p19c0 nocatalog

backup database format '/u01/app/oracle/backup/md_%U';

查看备份记录
list backup;


三、增量备份
0级备份
run {allocate channel c1 type disk;backup incremental level 0 database format '/u01/app/oracle/backup/l0_%u';
}

1级增量备份
run {allocate channel c1 type disk;backup incremental level 1 database format '/u01/app/oracle/backup/l1_%u';
}


2级备份以此类推
累积性差量备份
累积性需要在级别后边加cumulative
run {allocate channel c1 type disk;backup incremental level 1 cumulative database format '/u01/app/oracle/backup/l1c_%u';
}

总结
备份类型:
- 完全备份包含所有使用的数据文件块。
- 0 级增量备份等同于标记为 0 级的 完全备份。 累积 1 级增量备份只包含自上次 0 级增量备份以来修改过的块。
- 差异 1 级增量备份只包含自上次增量备份以来修改过的块。(默认1级备份就是差异备份)
- 2级累积增量备份上次任意级别备份至今的增量(任意一次备份至今)

四、压缩备份
压缩备份介绍
RMAN(Recovery Manager)是Oracle数据库的备份和恢复工具,它可以通过压缩备份来减少备份数据的存储空间消耗。下面是关于RMAN压缩备份的详细介绍。
-
RMAN压缩备份的优势:
- 减少备份数据的存储空间消耗:RMAN压缩备份可以通过对备份数据进行压缩,减少备份数据的存储空间消耗。
- 提高备份和恢复性能:由于备份数据变小,RMAN压缩备份可以提高备份和恢复的性能,减少备份和恢复的时间。
- 降低存储成本:通过减少备份数据的存储空间消耗,RMAN压缩备份可以降低存储成本。
-
RMAN压缩备份的压缩级别:
- 无压缩:RMAN备份数据不进行任何压缩。
- 压缩:RMAN备份数据进行基于块的压缩,可以达到一定的压缩比。
- 高压缩:RMAN备份数据进行更高级别的压缩(例如Huffman压缩算法),可以进一步减少备份数据的存储空间消耗。
-
RMAN压缩备份的设置和使用:
- 在执行备份命令时,可以通过设置压缩级别来启用RMAN压缩备份。例如,使用
BACKUP AS COMPRESSED BACKUPSET命令来进行备份,并将备份数据进行压缩。 - 在RMAN的配置文件(通常为rman.rcv)中,可以设置默认的压缩级别,以便在执行备份时自动启用压缩备份。
- 在执行备份命令时,可以通过设置压缩级别来启用RMAN压缩备份。例如,使用
-
RMAN压缩备份的限制:
- 压缩备份可能会增加CPU的使用量,因为压缩和解压缩备份数据需要消耗一定的计算资源。
- 高压缩级别可能会导致备份和恢复的性能降低,因为解压缩备份数据可能需要更多的时间和计算资源。
- 高压缩级别可能会增加备份和恢复的时间,因为压缩和解压缩备份数据需要消耗更多的时间。
总之,RMAN压缩备份是一种减少备份数据存储空间消耗、提高备份和恢复性能、降低存储成本的方法。但需要注意压缩备份可能增加CPU使用量、降低备份和恢复的性能,以及增加备份和恢复的时间。因此,在使用RMAN压缩备份时需要根据具体情况权衡利弊,并合理设置压缩级别。RMAN(Recovery Manager)是Oracle数据库的备份和恢复工具,它可以通过压缩备份来减少备份数据的存储空间消耗。下面是关于RMAN压缩备份的详细介绍。
-
RMAN压缩备份的优势:
- 减少备份数据的存储空间消耗:RMAN压缩备份可以通过对备份数据进行压缩,减少备份数据的存储空间消耗。
- 提高备份和恢复性能:由于备份数据变小,RMAN压缩备份可以提高备份和恢复的性能,减少备份和恢复的时间。
- 降低存储成本:通过减少备份数据的存储空间消耗,RMAN压缩备份可以降低存储成本。
-
RMAN压缩备份的压缩级别:
- 无压缩:RMAN备份数据不进行任何压缩。
- 压缩:RMAN备份数据进行基于块的压缩,可以达到一定的压缩比。
- 高压缩:RMAN备份数据进行更高级别的压缩(例如Huffman压缩算法),可以进一步减少备份数据的存储空间消耗。
-
RMAN压缩备份的设置和使用:
- 在执行备份命令时,可以通过设置压缩级别来启用RMAN压缩备份。例如,使用
BACKUP AS COMPRESSED BACKUPSET命令来进行备份,并将备份数据进行压缩。 - 在RMAN的配置文件(通常为rman.rcv)中,可以设置默认的压缩级别,以便在执行备份时自动启用压缩备份。
- 在执行备份命令时,可以通过设置压缩级别来启用RMAN压缩备份。例如,使用
-
RMAN压缩备份的限制:
- 压缩备份可能会增加CPU的使用量,因为压缩和解压缩备份数据需要消耗一定的计算资源。
- 高压缩级别可能会导致备份和恢复的性能降低,因为解压缩备份数据可能需要更多的时间和计算资源。
- 高压缩级别可能会增加备份和恢复的时间,因为压缩和解压缩备份数据需要消耗更多的时间。
总之,RMAN压缩备份是一种减少备份数据存储空间消耗、提高备份和恢复性能、降低存储成本的方法。但需要注意压缩备份可能增加CPU使用量、降低备份和恢复的性能,以及增加备份和恢复的时间。因此,在使用RMAN压缩备份时需要根据具体情况权衡利弊,并合理设置压缩级别。RMAN(Recovery Manager)是Oracle数据库的备份和恢复工具,它可以通过压缩备份来减少备份数据的存储空间消耗。下面是关于RMAN压缩备份的详细介绍。
-
RMAN压缩备份的优势:
- 减少备份数据的存储空间消耗:RMAN压缩备份可以通过对备份数据进行压缩,减少备份数据的存储空间消耗。
- 提高备份和恢复性能:由于备份数据变小,RMAN压缩备份可以提高备份和恢复的性能,减少备份和恢复的时间。
- 降低存储成本:通过减少备份数据的存储空间消耗,RMAN压缩备份可以降低存储成本。
-
RMAN压缩备份的压缩级别:
- 无压缩:RMAN备份数据不进行任何压缩。
- 压缩:RMAN备份数据进行基于块的压缩,可以达到一定的压缩比。
- 高压缩:RMAN备份数据进行更高级别的压缩(例如Huffman压缩算法),可以进一步减少备份数据的存储空间消耗。
-
RMAN压缩备份的设置和使用:
- 在执行备份命令时,可以通过设置压缩级别来启用RMAN压缩备份。例如,使用
BACKUP AS COMPRESSED BACKUPSET命令来进行备份,并将备份数据进行压缩。 - 在RMAN的配置文件(通常为rman.rcv)中,可以设置默认的压缩级别,以便在执行备份时自动启用压缩备份。
- 在执行备份命令时,可以通过设置压缩级别来启用RMAN压缩备份。例如,使用
-
RMAN压缩备份的限制:
- 压缩备份可能会增加CPU的使用量,因为压缩和解压缩备份数据需要消耗一定的计算资源。
- 高压缩级别可能会导致备份和恢复的性能降低,因为解压缩备份数据可能需要更多的时间和计算资源。
- 高压缩级别可能会增加备份和恢复的时间,因为压缩和解压缩备份数据需要消耗更多的时间。
总之,RMAN压缩备份是一种减少备份数据存储空间消耗、提高备份和恢复性能、降低存储成本的方法。但需要注意压缩备份可能增加CPU使用量、降低备份和恢复的性能,以及增加备份和恢复的时间。因此,在使用RMAN压缩备份时需要根据具体情况权衡利弊,并合理设置压缩级别。
压缩备份操作
run{allocate channel c1 type disk;backup as compressed backupset database format '/u01/app/oracle/backup/full_compressd_%U.dbf';
}


压缩备份优缺点
RMAN(Recovery Manager)是Oracle数据库的备份和恢复工具,它可以用于压缩备份数据以节省存储空间。下面是RMAN压缩备份的优缺点介绍:
优点:
-
存储空间节省:RMAN压缩备份可以显著减小备份数据的存储空间占用。通过压缩备份,可以节省磁盘空间,并且可以存储更多的备份数据。
-
备份速度提高:压缩备份可以减小备份数据的体积,从而能够降低备份所需的时间。因为备份的数据量减小了,所以备份过程会更快速。
-
网络传输效率提高:如果将备份数据传输到远程备份存储位置,使用压缩备份可以减少数据传输所需的时间和网络带宽。
缺点:
-
CPU负载增加:RMAN压缩备份需要进行数据压缩和解压缩的操作,这会增加CPU的负载。如果压缩备份过程中CPU负载过高,可能会影响其他数据库操作的性能。
-
备份恢复时间延长:压缩备份需要进行压缩和解压缩的过程,这会增加备份恢复所需的时间。如果备份恢复速度是关键考虑因素,那么压缩备份可能不是一个理想的选择。
-
备份恢复操作复杂性增加:压缩备份需要在备份和恢复操作中使用RMAN工具,并设置相应的参数和选项。这增加了备份和恢复操作的复杂性,并可能需要更多的技术知识和经验。
总的来说,RMAN压缩备份在存储空间节省和备份速度等方面有明显的优势,但它可能会增加CPU负载,延长备份恢复时间,并增加操作复杂性。因此,在选择是否使用RMAN压缩备份时,需要综合考虑数据库的需求和限制。
五、异常恢复
1、恢复前的准备
- 进入rman
rman target sys/oracle@p19c0 nocatalog

- 备份整个数据库
backup database format '/u01/app/oracle/backup/wb_%U';

- 做0级备份
backup incremental level 0 database plus archivelog delete all input format '/u01/app/oracle/backup/all_%U';


- 创建一个表t4
然后在打开一个窗口进入sqlplus中
sqlplus / as sysdba
CREATE TABLE t4(ID NUMBER,NAME VARCHAR2(50)
);

插入数据
insert into t4 values(0, 'jack');
insert into t4 values(1, 'henry');
查询表空间数据
select * from t4;
提交数据
commit;

我们在做一下归档切换
alter system checkpoint;
alter system switch logfile;

- 做1级增量备份
backup incremental level 1 database plus archivelog delete all input format '/u01/app/oracle/backup/all_%U';

增量备份完成
- 最后一步环境准备
退出RNAM
quit

进入sqlplus关闭数据库
首先查看数据文件位置
col name format a50;
select file#,name from v$datafile;

这里注意保存一下
停止数据库
su - oracle
## 停止集群数据库,接触ASM磁盘占用的情况,方便后边删除,人工制造异常
srvctl stop database -d p19c0
oracle用户下查看集群数据库是否完全关闭,如果没有完全关闭后序删除asm磁盘数据会报错
srvctl status database -d p19c0

- 连接到asm实例,删除所有数据文件
su - gridasmcmd
ls +DATA/P19C0/DATAFILE/

cd +DATA/P19C0/DATAFILE/
rm +DATA/P19C0/DATAFILE/*

现在我们的准备工作就完成啦
此时数据库的数据全部丢失
2、恢复数据库
tip:首先要完成基础操作1
将数据库启动到启动到mount
状态
srvctl start database -d p19c0 -o mount
## 查看数据库状态
srvctl status database -d p19c0

- 连接RMAN
su - oracle
rman target sys/oracle@p19c0 nocatalog

提示数据库没有打开
- 开始恢复
restore database;
RMAN选择合适的备份集开始恢复,我们发现在有全备和0级增量备份的时候,RMAN优先选择了0级增量备份进行恢复

recover database;


数据库恢复完成
打开数据库
alter database open;

再次进入sqlplus查询我们之前的数据
sqlplus / as sysdba
select * from t4;

发现可以查到说明数据库已经打开了,并且数据正常
我们也可以再次进入ASM磁盘查看数据文件是否找回来
su - gridasmcmd
ls +DATA/P19C0/DATAFILE/

恢复成功
异常恢复完成
六、RMAN相关参数
RMAN(Recovery Manager)是Oracle数据库的备份和恢复工具。它可以帮助管理员进行全量备份、增量备份、增量合并备份、数据文件备份、控制文件备份、归档日志备份等操作,并提供了一些参数供管理员配置备份和恢复策略。
下面是一些常用的RMAN参数的详细介绍:
-
CONFIGURE RETENTION POLICY:配置备份保留策略,默认是RECOVERY WINDOW,即根据恢复窗口来决定保留多少备份;可以配置为REDUNDANCY,即根据备份的冗余数量来决定保留多少备份。 -
CONFIGURE CONTROLFILE AUTOBACKUP:配置是否自动备份控制文件,默认是OFF,可以设置为ON来开启控制文件自动备份。 -
CONFIGURE CHANNELS:配置备份通道的数量和类型,默认的通道类型是DISK,可以配置为SBT_TAPE来备份到磁带库。 -
CONFIGURE DEVICE TYPE:配置备份设备的类型,默认是DISK,可以配置为SBT_TAPE来指定备份到磁带库。 -
CONFIGURE ENCRYPTION:配置备份数据的加密选项,默认是OFF,可以设置为ON来开启备份数据的加密。 -
CONFIGURE DEFAULT DEVICE TYPE:配置默认的备份设备类型,默认是DISK,可以配置为SBT_TAPE来指定备份到磁带库。 -
CONFIGURE ARCHIVELOG DELETION POLICY:配置归档日志的删除策略,默认是NONE,即不删除归档日志;可以配置为APPLIED ON STANDBY,即在备库应用后删除归档日志。 -
CONFIGURE BACKUP OPTIMIZATION:配置是否开启备份优化,默认是OFF,可以设置为ON来开启备份优化。 -
CONFIGURE AUXILIARY DESTINATION:配置辅助实例的位置,默认是一个目录,也可以配置为一个实例。 -
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT:配置自动备份控制文件的格式,默认是"%F",可以配置为其他格式。
相关文章:
RMAN备份与恢复
文章目录 一、RMAN介绍二、全量备份三、增量备份0级备份1级增量备份累积性差量备份总结 四、压缩备份压缩备份介绍压缩备份操作压缩备份优缺点 五、异常恢复1、恢复前的准备2、恢复数据库 六、RMAN相关参数 一、RMAN介绍 RMAN(Recovery Manager)是Oracl…...
速评谷歌开源大模型Gemma 7B
大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…...
线阵相机参数介绍---变频参数控制
变频器介绍 变频器功能的目的在于对外部输入信号进行运算处理,以达到理想的行频值。该功能主要是为了解决信号超行频,图像拉伸压缩等问题。 输入信号处理过程: 输入信号:允许出发相机信号的频率f与所要求输入信号的频率F不同 …...
挑战杯 基于人工智能的图像分类算法研究与实现 - 深度学习卷积神经网络图像分类
文章目录 0 简介1 常用的分类网络介绍1.1 CNN1.2 VGG1.3 GoogleNet 2 图像分类部分代码实现2.1 环境依赖2.2 需要导入的包2.3 参数设置(路径,图像尺寸,数据集分割比例)2.4 从preprocessedFolder读取图片并返回numpy格式(便于在神经网络中训练)2.5 数据预…...
Spring6学习技术|IoC|手写IoC
学习材料 尚硅谷Spring零基础入门到进阶,一套搞定spring6全套视频教程(源码级讲解) 有关反射的知识回顾 IoC是基于反射机制实现的。 Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法&…...
基于Java在线宠物店商城系统设计与实现(源码+部署文档)
博主介绍: ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精彩专栏 推荐订阅 👇🏻 不然下次找不到 Java项目精品实…...
http和https的区别(简述)
HTTP(HyperText Transfer Protocol)和HTTPS(HTTP Secure)都是用于在客户端和服务器之间传输数据的协议,但它们在安全性方面有重要的区别。 1.HTTP: 概述: HTTP是一种用于传输超文本的协议(超文…...
2024年【T电梯修理】找解析及T电梯修理复审考试
题库来源:安全生产模拟考试一点通公众号小程序 T电梯修理找解析是安全生产模拟考试一点通总题库中生成的一套T电梯修理复审考试,安全生产模拟考试一点通上T电梯修理作业手机同步练习。2024年【T电梯修理】找解析及T电梯修理复审考试 1、【多选题】操纵箱…...
【计算机网络】socket 网络套接字
网络套接字 一、端口号1. 认识端口号2. socket 二、认识TCP协议和UDP协议1. TCP协议2. UDP协议 三、网络字节序四、socket 编程1. socket 常见API2. sockaddr 结构3. 编写 UDP 服务器(1)socket()(2)bind()(3࿰…...
Eclipse的Java Project的入口main函数
在使用Eclipse创建java project项目的时候,一个项目里面通常只有一个main,那么一个项目里面是否可以有多个main函数呢?其实可以的,但是运行java application的时候要选择执行哪个main函数。 下面举个例子: 1、创建一个…...
JVM内存分析工具-Arthas 教程[详细]
一、概述 Arthas(阿尔萨斯)是阿里巴巴开源的一款Java诊断工具,用于实时检测、诊断Java应用程序的性能问题。它是一个命令行工具,提供了丰富的功能,包括查看类加载信息、方法执行耗时、线程堆栈、内存分析等。Arthas 的…...
Google发布开放的模型Gemma
今天,Google 发布了一系列最新的开放式大型语言模型 —— Gemma!Google 正在加强其对开源人工智能的支持,我们也非常有幸能够帮助全力支持这次发布,并与 Hugging Face 生态完美集成。 Gemma 提供两种规模的模型: 7B …...
谷歌掀桌子!开源Gemma:可商用,性能超过Llama 2!
2月22日,谷歌在官网宣布,开源大语言模型Gemma。 Gemma与谷歌最新发布的Gemini 使用了同一架构,有20亿、70亿两种参数,每种参数都有预训练和指令调优两个版本。 根据谷歌公布的测试显示,在MMLU、BBH、GSM8K等主流测试…...
http缓存?强制缓存和协商缓存?
HTTP缓存是一种优化网络资源加载速度的技术,通过减少从服务器获取相同资源的次数来实现。HTTP缓存机制包括强制缓存和协商缓存(对比缓存)两种类型。 强制缓存 强制缓存是指浏览器在接收到服务器返回的响应后,会将响应内容和相关…...
技术心得--如何成为优秀的架构师
关注我,持续分享逻辑思维&管理思维; 可提供大厂面试辅导、及定制化求职/在职/管理/技术辅导; 有意找工作的同学,请参考博主的原创:《面试官心得--面试前应该如何准备》,《面试官心得--面试时如何进行自…...
【Unity】【VR开发】Unity云同步功能使用心得
【背景】 有时出差,旅行等等也带着电脑,晚上想要继续编辑项目,就需要用到云同步功能。目前实践下来,发现有些内容可以同步,有些内容则是不可以同步的,总结如下。 【如何云同步一个本地项目】 UnityHub的项目面板中有两个选项卡:项目和云端项目。 鼠标挪动到想要云同步…...
vscode侧边框关掉了怎么打开
View - Appearance - Secondary Side Bar 就可以显示出来了,例如 :(CodeGeeX不显示主界面)...
YOLO-NAS浅析
YOLO-NAS(You Only Look Once - Neural Architecture Search)是一种基于YOLO(You Only Look Once)的目标检测算法,结合神经架构搜索(NAS)技术来优化模型性能。 YOLO是一种实时目标检测算法&…...
LeetCode 2656.K个元素的最大和
给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。你需要执行以下操作 恰好 k 次,最大化你的得分: 从 nums 中选择一个元素 m 。 将选中的元素 m 从数组中删除。 将新元素 m 1 添加到数组中。 你的得分增加 m 。 请你返回执行以上操作恰好 k 次后…...
【最新Dubbo3深入理解】Dubbo3核心Tripple协议详解
欢迎关注公众号(通过文章导读关注:【11来了】),及时收到 AI 前沿项目工具及新技术的推送! 在我后台回复 「资料」 可领取编程高频电子书! 在我后台回复「面试」可领取硬核面试笔记! 文章导读地址…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...
【SpringBoot自动化部署】
SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一,能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时,需要添加Git仓库地址和凭证,设置构建触发器(如GitHub…...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...
