oracle常用几个相似的恢复命令之间的区别

news2025/2/27 16:42:46

 Oracle恢复数据库时有几个常用但非常相似的命令:

  • recover database
  • recover database until cancel
  • recover database until cancel using backup controlfile
  • recover database using backup controlfile
  • recover database using backup controlfile until cancel

它们区别、作用和适用场景如下:

命令

控制文件旧于数据文件

完全恢复

rman/sqlplus执行

备注

recover database

不可以

rman和sqlplus命令行都可以

If the CURRENT CONTROLFILE is in use, and all online redo logs are available, then you can simply run RECOVER DATABASE. This will apply all archivelogs, and the current online redolog.

recover database until cancel

不可以

只能在sqlplus命令行进行

常用于current/active redo丢失时,在归档和联机日志都完整的情况下,你可以通过不完全恢复的语句来实现数据的完全恢复。可以一步一步的跳也就是一个一个归档的应用,也可以AUTO全部应用,当然也可以在恢复完某个archivelog后cancel退出,但是他不会恢复 current logfile,如果需要恢复current logfile需要自己指定。

recover database until cancel using backup controlfile

可以

只能在sqlplus命令行进行

与recover database until cancel类似,不同的是它丢失当前的控制文件,需用备份的旧控制文件来恢复。

recover database using backup controlfile

可以

只能在sqlplus命令行进行

在归档和联机日志都完整的情况下,你可以通过不完全恢复的语句来实现数据的完全恢复。

recover database using backup controlfile until cancel

可以

只能在sqlplus命令行进行

相当于执行recover database using backup controlfile,然后选择AUTO应用所有归档,但不输入redo文件进行应用,

 

  • recover 带任何using 语句的都是在SQLPLUS中执行,不是在rman中执行。
  • 如果控制文件丢失,restore备份的控制文件后,则必须使用using backup controlfile选项。
  • until cancel则是不完全恢复,即current/active redo丢失,或者从restore数据库后某个归档文件缺失,则终止;最后打开需用alter database open resetlogs。

下面对一些场景进行测试:

1、准备测试数据
--生成拷贝命令
set pagesize 500
set linesize 500
select 'cp '||''||member||''||' /media/orabackup/ ' from v$logfile
union
select 'cp '||''||name||''||' /media/orabackup/ ' from v$datafile 
union
select 'cp '||''||name||''||' /media/orabackup/ ' from v$controlfile 
union
select 'cp '||''||name||''||' /media/orabackup/ ' from v$tempfile ;

--测试之前关机,先做一次冷备

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.


执行:
cp /u01/app/oracle/fast_recovery_area/dbbbed/control02.ctl /media/orabackup/
cp /u01/oradata/dbbbed/control01.ctl /media/orabackup/
cp /u01/oradata/dbbbed/mssm01.dbf /media/orabackup/
cp /u01/oradata/dbbbed/redo01.log /media/orabackup/
cp /u01/oradata/dbbbed/redo02.log /media/orabackup/
cp /u01/oradata/dbbbed/redo03.log /media/orabackup/
cp /u01/oradata/dbbbed/sysaux01.dbf /media/orabackup/
cp /u01/oradata/dbbbed/system01.dbf /media/orabackup/
cp /u01/oradata/dbbbed/szr01.dbf /media/orabackup/
cp /u01/oradata/dbbbed/tbst01.dbf /media/orabackup/
cp /u01/oradata/dbbbed/temp01.dbf /media/orabackup/
cp /u01/oradata/dbbbed/test0529.dbf /media/orabackup/
cp /u01/oradata/dbbbed/undotbs01.dbf /media/orabackup/
cp /u01/oradata/dbbbed/users01.dbf /media/orabackup/

--冷备后,打开数据库,插入测试数据

SQL> startup;
ORACLE instance started.

Total System Global Area 3691200512 bytes
Fixed Size            2258680 bytes
Variable Size          788531464 bytes
Database Buffers     2885681152 bytes
Redo Buffers           14729216 bytes

SQL> archive log list;
Database log mode           Archive Mode
Automatic archival           Enabled
Archive destination           /u01/arch/
Oldest online log sequence     52
Next log sequence to archive   54
Current log sequence           54


conn szr/szr
create table fruits(name varchar2(10));
insert into fruits values('apple');
insert into fruits values('banana');
insert into fruits values('orange');
commit; 

alter system switch logfile;                   <<<<< 归档到54号,1_54_1170455884.dbf

SQL> select sysdate from dual; 

SYSDATE
-------------------
2024-07-29 15:53:25

--归档日志文件中已经有我们的数据了
$ strings 1_54_1170455884.dbf|grep orange
orange

--关闭数据库再做下冷备(第二次冷备),备份联机重做日志文件、控制文件和数据文件
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

执行:
mkdir /media/orabackup2/
cp /u01/app/oracle/fast_recovery_area/dbbbed/control02.ctl /media/orabackup2/
cp /u01/oradata/dbbbed/control01.ctl /media/orabackup2/
cp /u01/oradata/dbbbed/mssm01.dbf /media/orabackup2/
cp /u01/oradata/dbbbed/redo01.log /media/orabackup2/
cp /u01/oradata/dbbbed/redo02.log /media/orabackup2/
cp /u01/oradata/dbbbed/redo03.log /media/orabackup2/
cp /u01/oradata/dbbbed/sysaux01.dbf /media/orabackup2/
cp /u01/oradata/dbbbed/system01.dbf /media/orabackup2/
cp /u01/oradata/dbbbed/szr01.dbf /media/orabackup2/
cp /u01/oradata/dbbbed/tbst01.dbf /media/orabackup2/
cp /u01/oradata/dbbbed/temp01.dbf /media/orabackup2/
cp /u01/oradata/dbbbed/test0529.dbf /media/orabackup2/
cp /u01/oradata/dbbbed/undotbs01.dbf /media/orabackup2/
cp /u01/oradata/dbbbed/users01.dbf /media/orabackup2/

--重新打开数据库,往表里继续插入数据

SQL> startup;
ORACLE instance started.

Total System Global Area 3691200512 bytes
Fixed Size            2258680 bytes
Variable Size          788531464 bytes
Database Buffers     2885681152 bytes
Redo Buffers           14729216 bytes
Database mounted.
Database opened.

conn szr/szr
insert into fruits values ('grape');
commit;


SQL>alter system switch logfile;                 <<<<< 归档到55号,1_55_1170455884.dbf       
System altered.


SQL> select sysdate from dual;

SYSDATE
-------------------
2024-07-29 16:10:38

--归档日志文件中已经有我们的数据了
$ strings 1_55_1170455884.dbf |grep grape
grape


--在插入一条数据,不做归档,只存在redo日志里

insert into fruits values ('peach');
commit;


SQL> select group#,sequence#,status,archived from v$log;

    GROUP#  SEQUENCE# STATUS           ARC
---------- ---------- ---------------- ---
     1       55 INACTIVE           YES
     2       56 CURRENT           NO           <<<当前redo
     3       54 INACTIVE           YES

--fruits.name='peach'这条数据在数据文件和联机重做日志文件里面都有,没有在归档日志里面
$ strings redo02.log |grep peach
peach

--关闭数据库,做第三次冷备
SQL> shutdow immediate;
Database closed.
Database dismounted.
ORACLE instance shut down

执行:
mkdir /media/orabackup3/
cp /u01/app/oracle/fast_recovery_area/dbbbed/control02.ctl /media/orabackup3/
cp /u01/oradata/dbbbed/control01.ctl /media/orabackup3/
cp /u01/oradata/dbbbed/mssm01.dbf /media/orabackup3/
cp /u01/oradata/dbbbed/redo01.log /media/orabackup3/
cp /u01/oradata/dbbbed/redo02.log /media/orabackup3/
cp /u01/oradata/dbbbed/redo03.log /media/orabackup3/
cp /u01/oradata/dbbbed/sysaux01.dbf /media/orabackup3/
cp /u01/oradata/dbbbed/system01.dbf /media/orabackup3/
cp /u01/oradata/dbbbed/szr01.dbf /media/orabackup3/
cp /u01/oradata/dbbbed/tbst01.dbf /media/orabackup3/
cp /u01/oradata/dbbbed/temp01.dbf /media/orabackup3/
cp /u01/oradata/dbbbed/test0529.dbf /media/orabackup3/
cp /u01/oradata/dbbbed/undotbs01.dbf /media/orabackup3/
cp /u01/oradata/dbbbed/users01.dbf /media/orabackup3/


2、recover database场景测试
在普通的recover database或者recover tablespace,recover datafile时,Oracle会以当前controlfile记录的SCN为准,利用archive log和redo log,把相关datafile的block恢复到“当前controlfile记录的SCN”。
使用场景:既然恢复是以控制文件中的SCN为目标,当然要求控制文件不能比数据文件旧(控制文件SCN>=数据文件SCN)。
          所以使用场景要么是控制文件完好,数据文件是从备份中恢复的,要么控制文件和数据文件都是从备份中恢复的。

--把第一次冷备的数据文件还原回去(只还原数据文件,其他的不还原)
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down
$ cd /media/orabackup
$ cp *.dbf /u01/oradata/dbbbed/

--启动到mount状态
SQL> startup mount;
ORACLE instance started.

Total System Global Area 3691200512 bytes
Fixed Size            2258680 bytes
Variable Size          788531464 bytes
Database Buffers     2885681152 bytes
Redo Buffers           14729216 bytes
Database mounted.

--执行recover database 
SQL> recover database;
Media recovery complete.

--打开数据库
SQL> alter database open;

Database altered.

SQL> select * from szr.fruits;

NAME
------------------------------------------------------------
apple
banana
orange
grape
peach

进行recover database,数据完全恢复,无丢失。


3、recover database until cancel 场景测试
也要求控制文件不能比数据文件旧,在丢失current/active redo时手动指定恢复终点,用于不完全恢复。这个命令只能在SQL命令行进行,通过提示归档日志文件的建议名称进行主动恢复,应用到哪个归档由你自己把控。
在归档和联机日志都完整的情况下,你甚至可以通过不完全恢复的语句来实现数据的完全恢复。
recover database until cancel 命令输入AUTO选项时只会应用归档日志,而不会自动应用redo日志,这是和recover database的区别,后者自动应用所有归档和在线日志进行前滚操作。

--把第一次冷备的数据文件还原回去(只还原数据文件,其他的不还原)
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down
$ cd /media/orabackup
$ cp *.dbf /u01/oradata/dbbbed/

--删除redo 日志,模拟日志丢失
rm -rf redo01.log redo02.log redo03.log

--启动到mount状态
SQL> startup mount;

--执行recover database until cancel恢复
SQL> recover database until cancel;
ORA-00279: change 4954281 generated at 07/29/2024 15:47:29 needed for thread 1
ORA-00289: suggestion : /u01/arch/1_54_1170455884.dbf                                    <-- Oracle建议应用的日志
ORA-00280: change 4954281 for thread 1 is in sequence #54


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
auto                                                 
ORA-00279: change 4954668 generated at 07/29/2024 15:53:41 needed for thread 1
ORA-00289: suggestion : /u01/arch/1_55_1170455884.dbf                                   <-- Oracle建议下一个应用的日志 
ORA-00280: change 4954668 for thread 1 is in sequence #55
ORA-00278: log file '/u01/arch/1_54_1170455884.dbf' no longer needed for this recovery  <-- 1_54_1170455884.dbf已应用完,不再需要


ORA-00279: change 4955570 generated at 07/29/2024 16:10:33 needed for thread 1
ORA-00289: suggestion : /u01/arch/1_56_1170455884.dbf
ORA-00280: change 4955570 for thread 1 is in sequence #56
ORA-00278: log file '/u01/arch/1_55_1170455884.dbf' no longer needed for this recovery


ORA-00308: cannot open archived log '/u01/arch/1_56_1170455884.dbf'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3

输入auto,让Oracle自动应用归档日志文件,由于只归档到55,56这个是在redo日志,所以提示找不到56这个归档日志。

--open resetlogs打开数据库
SQL> alter database open resetlogs;

Database altered.

SQL> select * from szr.fruits;

NAME
------------------------------------------------------------
apple
banana
orange
grape

<<< 可以看到丢失了一条数据,peach 那条数据是在redo日志。如果redo日志存在情况,recover database until cancel执行恢复时,可以手动指定redo日志,相当于完全恢复,数据可以不丢。

4、recover database using backup controlfile 和 recover database using backup controlfile until cancel 场景测试

recover database using backup controlfile:
如果数据文件完好,而全部控制文件丢失,需要从备份中还原,此时控制文件就比数据文件旧(控制文件SCN<数据文件SCN),只使用recover database恢复到还原出来的控制文件SCN是打不开数据库的。这时就需要用到recover database using backup controlfile告诉oracle,不要以还原出来的控制文件作为恢复的终点,而要恢复到比它更靠后的位置,
恢复时可以看到提示 Specify log: {=suggested | filename | AUTO | CANCEL}。通常选择AUTO应用所有归档,但注意AUTO不会应用redo日志,需要手动输入redo文件进行应用。
然后通过alter database open resetlogs命令打开

recover database using backup controlfile until cancel:
如果数据文件完好,全部控制文件丢失,并且current/active redo都丢失。
执行这个命令相当于执行recover database using backup controlfile,然后选择AUTO应用所有归档,但不输入redo文件进行应用(因为已经丢了),明显这也是一种不完全恢复,current/active redo中的数据会丢失。


----模拟控制文件丢失情况
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> 


--恢复第三次冷备的数据文件和redo log
$ cd /media/orabackup3
$ cp *.dbf /u01/oradata/dbbbed/
$ cp redo* /u01/oradata/dbbbed/

--恢复第二次冷备的控制文件
$ cd /media/orabackup2/
$ cp control01.ctl /u01/oradata/dbbbed/
$ cp control02.ctl /u01/app/oracle/fast_recovery_area/dbbbed/ 

--启动到mount状态
SQL> startup mount;
ORACLE instance started.

Total System Global Area 3691200512 bytes
Fixed Size            2258680 bytes
Variable Size          788531464 bytes
Database Buffers     2885681152 bytes
Redo Buffers           14729216 bytes

SQL> select name,checkpoint_change# from v$datafile;
NAME                           CHECKPOINT_CHANGE#
-------------------------------------------------- ------------------
/u01/oradata/dbbbed/system01.dbf                  4955039
/u01/oradata/dbbbed/sysaux01.dbf                  4955039
/u01/oradata/dbbbed/undotbs01.dbf                  4955039
/u01/oradata/dbbbed/users01.dbf                   4955039
/u01/oradata/dbbbed/tbst01.dbf                      4955039
/u01/oradata/dbbbed/szr01.dbf                      4955039
/u01/oradata/dbbbed/mssm01.dbf                      4955039
/u01/oradata/dbbbed/test0529.dbf                  4955039

8 rows selected.

SQL> select name,checkpoint_change# from v$datafile_header;

NAME                           CHECKPOINT_CHANGE#
-------------------------------------------------- ------------------
/u01/oradata/dbbbed/system01.dbf                  4955994
/u01/oradata/dbbbed/sysaux01.dbf                  4955994
/u01/oradata/dbbbed/undotbs01.dbf                  4955994
/u01/oradata/dbbbed/users01.dbf                   4955994
/u01/oradata/dbbbed/tbst01.dbf                      4955994
/u01/oradata/dbbbed/szr01.dbf                      4955994
/u01/oradata/dbbbed/mssm01.dbf                      4955994
/u01/oradata/dbbbed/test0529.dbf                  4955994

8 rows selected.

上面可以看到数据文件头中记录的SCN比控制文件中记录的SCN要大,此时用recover database会报错:
SQL> recover database;
ORA-00283: recovery session canceled due to errors
ORA-01122: database file 1 failed verification check
ORA-01110: data file 1: '/u01/oradata/dbbbed/system01.dbf'
ORA-01207: file is more recent than control file - old control file

因为数据文件比控制文件要新,recover database(不加using backup controlfile)命令是把数据库恢复到控制文件记录的最大SCN,不可能使用recover命令来把数据库恢复到过去的一个时间点,
闪回数据库需要用flashback database(使用闪回日志),如果使用using backup controlfile,则是告诉Oracle把数据库恢复到数据文件头记录的最大SCN,同时也会把控制文件恢复到最新,下面来实验下:

SQL> recover database using backup controlfile;
ORA-00279: change 4955039 generated at 07/29/2024 15:53:41 needed for thread 1
ORA-00289: suggestion : /u01/arch/1_55_1170455884.dbf
ORA-00280: change 4955039 for thread 1 is in sequence #55


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
auto                                                              <<<<<<这时候我输入auto让Oracle自动应用归档日志文件
ORA-00279: change 4955570 generated at 07/29/2024 16:10:33 needed for thread 1
ORA-00289: suggestion : /u01/arch/1_56_1170455884.dbf
ORA-00280: change 4955570 for thread 1 is in sequence #56
ORA-00278: log file '/u01/arch/1_55_1170455884.dbf' no longer needed for this recovery


ORA-00308: cannot open archived log '/u01/arch/1_56_1170455884.dbf'   <<<<<找不到56这个归档,这个在redo日志里,还没切换出来。
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3

发现没有,使用using backup controlfile时,当Oracle找不到可以应用的归档日志文件时,它就自动结束这个命令了。
因为using backup controlfile是不完全恢复,不会去应用联机重组日志,当找不到所需的归档日志时,就报错了,下面我们加上until cancel试试
SQL> recover database using backup controlfile until cancel;
ORA-00279: change 4955570 generated at 07/29/2024 16:10:33 needed for thread 1
ORA-00289: suggestion : /u01/arch/1_56_1170455884.dbf
ORA-00280: change 4955570 for thread 1 is in sequence #56


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}


虽然Oracle找不到这个归档/u01/arch/1_56_1170455884.dbf,但是它会进行提示,你可以输入filename,auto,或cancel,
我们插入的最后一条数据name='peach'在联机重做日志文件redo02.log里面,不在归档日志里面,这时我们输入联机重做日志文件的路径和名称

SQL> recover database using backup controlfile until cancel;
ORA-00279: change 4955570 generated at 07/29/2024 16:10:33 needed for thread 1
ORA-00289: suggestion : /u01/arch/1_56_1170455884.dbf
ORA-00280: change 4955570 for thread 1 is in sequence #56


Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/u01/oradata/dbbbed/redo02.log                                    <<<<<<<<输入联机重做日志文件的路径和名称
Log applied.
Media recovery complete.

已经成功恢复了,可以说是完全恢复,但是由于我们使用备份的控制文件(using backup controlfile),我们还是需要用resetlogs打开数据库
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

SQL> alter database open resetlogs;

Database altered.

SQL> select * from szr.fruits;

NAME
--------------------------------------------------
apple
banana
orange
grape
peach                                  --已经完全恢复

关注我,学习更多的数据库知识

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ILI2326 触摸控制板解决方案

一、方案描述 ILI2326是一款专为工业电容式触摸面板应用而优化的单芯片电容式触摸传感器、主要应用在TV智慧屏&#xff0c;电子触控白板&#xff0c;商显等领域。ILI2326触摸控制板多达352通道&#xff0c;并最大支持86寸电容触摸面板。支持最大信噪比为200:1&#xff0c;IEC …

最新 【Navicat Premium 17.0.8】简体中文版破解激活永久教程

官方下载地址&#xff1a; https://www.navicat.com.cn/download/navicat-premium 百度网盘补丁链接 链接: https://pan.baidu.com/s/11hu414Honi3Y9dPQ6-07JQ?pwd04mu 提取码: 04mu 未安装过的用户可直接跳过该步骤&#xff0c;如果已安装Navicat&#xff0c;记得先卸载干净…

网络适配器中没有WSL网络怎么办?

网络适配器中没有WSL网络怎么办? 1、创建内部虚拟交换机 打开 PowerShell(以管理员身份运行),运行以下命令 New-VMSwitch -Name "WSL" -SwitchType Internal2、配置虚拟网络适配器 Get-NetAdapter -Name "vEthernet (WSL)"设置虚拟网络适配器的 IP 地…

clangd配置

clangd下载、配置和使用 更新背景环境一.优缺点对比二.下载1. ubuntu download clangd2. vscode download clangd3. github download clangd 三.配置1.简易配置&#xff1a;2.详细配置 四.使用结语&#xff1a;done&#xff01;&#xff01;&#xff01; 更新 日期&#xff1a;…

【环形链表 II】python刷题记录

R2-快慢指针&#xff08;双指针中的子问题&#xff09;。 k神 这类链表题目一般都是使用双指针法解决的&#xff0c;例如寻找距离尾部第 K 个节点、寻找环入口、寻找公共尾部入口等。 在本题的求解过程中&#xff0c;双指针会产生两次“相遇”。 抽象&#xff0c;太抽象了。…

盘点.软件测试模型

软件开发模型   软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段&#xff0c;有时也包括维护阶段。 软件开发模型能清晰、直观地表达软件开发全过程&#xff0c;明确规定了要完成的主要活动…

Java中的二叉搜索树(如果想知道Java中有关二叉搜索树的知识点,那么只看这一篇就足够了!)

前言&#xff1a;Java 提供了丰富的数据结构来处理和管理数据&#xff0c;其中 TreeSet 和 TreeMap 是基于红黑树实现的集合和映射接口。它们有序地存储数据&#xff0c;提供高效的搜索、插入和删除操作。 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主…

web期末大作业家乡-周口

代码下载: https://pan.quark.cn/s/64c61dfc0928

【学术大咖云集】第二届网络、通信与智能计算国际会议(NCIC 2024)

第二届网络、通信与智能计算国际会议 The 2nd International Conference on Networks, Communications and Intelligent Computing&#xff08;NCIC 2024&#xff09; 2024年11月22日-25日 中国 | 北京 www.icncic.org 第二届网络、通信与智能计算国际会议&#xff08;NCIC…

新书速览|动手学PyTorch建模与应用:从深度学习到大模型

《动手学PyTorch建模与应用&#xff1a;从深度学习到大模型》 本书内容 《动手学PyTorch建模与应用:从深度学习到大模型》是一本从零基础上手深度学习和大模型的PyTorch实战指南。《动手学PyTorch建模与应用:从深度学习到大模型》共11章&#xff0c;第1章主要介绍深度学习的概念…

proto 同级文件引入问题小记

文章目录 1. 写在最前面2. 关于报错2.1 增加字段前2.2 增加字段后 3. 临时解决办法3.1 合并3.2 写入绝对路径 4. 原因5.碎碎念6. 参考资料 1. 写在最前面 笔者昨天遇到一个十分奇怪的事情&#xff0c;「在同一级目录的 proto 文件&#xff0c;引用的时候&#xff0c;报找不到的…

数据中台建设之数据采集

目录 一、数据采集 1.1 概述 1.2 线上行为采集 1.2.1 概述 1.2.2 客户端埋点 1.2.2.1 埋点方式分类 1.2.2.2 优略势分析 1.2.2.3 埋点举例 1.2.3 服务端埋点 1.3 线下行为采集 1.3.1 概述 1.3.2 网络信号采集 1.3.3 图像识别采集 1.3.4 设备日志采集 1.4 互联网数…

演播室级字幕技术,性能卓越,满足多场景需求

如何在浩如烟海的视频内容中脱颖而出&#xff0c;成为每个企业亟需解决的关键问题。美摄科技&#xff0c;作为视频编辑处理技术的领航者&#xff0c;携其革命性的视频编辑处理SDK&#xff0c;特别是行业领先的字幕模块&#xff0c;为企业视频创作带来了前所未有的变革与升级。 …

springboot多媒体内容管理系统-计算机毕业设计源码08580

摘 要 随着人类向信息社会的不断迈进&#xff0c;风起云涌的信息时代正掀起一次新的革命&#xff0c;同时计算机网络技术高速发展&#xff0c;网络管理运用也变得越来越广泛。因此&#xff0c;建立一个多媒体内容管理系统&#xff08;CMS&#xff09;的设计与优化来管理多媒体内…

第三周:网络应用(上)

一、网络应用&#xff08;层&#xff09;内容概述 我们已经知道&#xff0c;Internet的体系结构是符合TCP/IP协议栈的&#xff0c;而“应用层”就在这个协议的最上层。 本讲内容包括&#xff1a; 二、网络应用的基本原理 常见网络应用包括&#xff1a; 问&#xff1a;网络应…

Redis 缓存中间件

目录 概念 安装redis redis基本命令 给redis添加密码 基础数据类型 string类型 list列表类型 set创建&#xff08;一个键对应一个值&#xff09; set 创建数据 get 获取数据 keys * 展示所有的键 exists 判断键值是否存在 type 查看数据的类型 del 删除键 rename…

期刊评价指标及其查询方法

1、期刊评价体系一 科睿唯安《期刊引证报告》&#xff08;Journal Citation Reports, JCR&#xff09; 科睿唯安每年发布的《期刊引证报告》&#xff08;Journal Citation Reports, JCR&#xff09;是一个独特的多学科期刊评价工具。JCR数据库提供基于引文数据的统计信息的期…

数字信号||快速傅里叶变换(FFT)(4)

实验四 快速傅里叶变换(FFT) 一、实验目的 (1)加深对快速傅里叶变换(FFT)基本理论的理解。 (2)了解使用快速傅里叶变换(FFT)计算有限长序列和无限长序列信号频谱的方法。 (3)掌握用MATLAB语言进行快速傅里叶变换时常用的子函数。 二、实验涉及的MATLAB子函数 1.fft 功能&am…

鸟哥的Linux私房菜(三)之环境开发工具篇

文章目录 Linux软件包管理器 - yumLinux下安装软件的方式认识yum查找软件包安装软件如何实现本地机器和云服务器之间的文件互传及其云服务器之间互传卸载软件 Linux编辑器 - vimvim的基本概念vim下各模式的切换vim命令模式各命令汇总vim底行模式各命令汇总vim替换模式各命令汇总…

快速幂的求解方法(位运算)

需要求解幂运算的解法&#xff0c;可以将需要运算的内容进行判别&#xff0c;众所周知&#xff0c;幂就是指数&#xff0c;就是将底数乘以自身完成n次自相乘&#xff0c;那么就可以幻化为他的幂的简化计算&#xff1b; 以二进制为例&#xff0c;你要求&#xff0c;即可以看作是…