oracle11g数据库 冷备份与冷恢复
我们在做备份时,究竟需要备份数据库的哪些文件呢?
其实只需要备份数据文件和控制文件就可以了,其他的参数文件,重做日志文件以及口令文件与数据文件相比都非常小,所以在一般情况下都会一起备份。
冷备份步骤:
1.v$contorlfile 找到所有的控制文件
2.dba_data_files 找到所有的数据文件
3.v$logfile找到所有的日志文件
4.v$tempfiles 和v$tablespace找到所有的临时文件以及与表空间的对应关系
5.正常关闭数据库
6.将所有的文件复制到硬盘或者磁带上
7.重新启动数据库
冷恢复:
1.正常关闭数据库
2.将备份的所有文件复制到原来的位置
3.重新启动数据库
实验:
1.首先找到要备份的文件的位置
SQL> select file_name,file_id,tablespace_name,bytes,blocks,status from dba_data_files;FILE_NAME FILE_ID TABLESPACE_NAME BYTES BLOCKS STATUS
-------------------------------------------------- ---------- ------------------------------ ---------- ---------- ---------
/u01/app/oracle/oradata/cai/users01.dbf 4 USERS 62914560 7680 AVAILABLE
/u01/app/oracle/oradata/cai/undotbs01.dbf 3 UNDOTBS1 110100480 13440 AVAILABLE
/u01/app/oracle/oradata/cai/sysaux01.dbf 2 SYSAUX 587202560 71680 AVAILABLE
/u01/app/oracle/oradata/cai/system01.dbf 1 SYSTEM 828375040 101120 AVAILABLE
/u01/app/oracle/oradata/cai/example01.dbf 5 EXAMPLE 104857600 12800 AVAILABLESQL> select status,name from v$controlfile;
SQL> col name for a60;
SQL> /STATUS NAME
------- ------------------------------------------------------------/u01/app/oracle/oradata/cai/control01.ctl/u01/app/oracle/flash_recovery_area/cai/control02.ctlSQL> select group#,status,member from v$logfile;
SQL> col member for a30
SQL> /GROUP# STATUS MEMBER
---------- ------- ------------------------------3 /u01/app/oracle/oradata/cai/redo03.log2 /u01/app/oracle/oradata/cai/redo02.log1 /u01/app/oracle/oradata/cai/redo01.logSQL> show parameter pfile;NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u01/app/oracle/product/11.2.0/db_home1/dbs/spfilecai.oraSQL> select name from v$tempfile;NAME
------------------------------------------------------------
/u01/app/oracle/oradata/cai/temp01.dbf
2.创建一张测试表
SQL> create user nice identified by oracle2 default tablespace example3 quota 1m on example;User created.SQL> grant create table,connect ,dba to nice;
\
Grant succeeded.SQL>conn nice/oracle
Connected.
SQL> show user
USER is "NICE"SQL> create table test(id number);Table created.SQL> insert into test values(1);
insert into test values(1)*
ERROR at line 1:
ORA-01647: tablespace 'EXAMPLE' is read-only, cannot allocate space in itSQL> alter user nice default tablespace users quota 1m on users;User altered.SQL> drop table test ;Table dropped.SQL> create table test(id number);Table created.SQL> insert into test values(1);
insert into test values(1)*
ERROR at line 1:
ORA-01647: tablespace 'USERS' is read-only, cannot allocate space in itSQL> select tablespace_name,status from dba_tablespaces;TABLESPACE_NAME STATUS
------------------------------ ---------
SYSTEM ONLINE
SYSAUX ONLINE
UNDOTBS1 ONLINE
TEMP ONLINE
USERS READ ONLY
EXAMPLE READ ONLY6 rows selected.SQL> alter tablespace users read write;Tablespace altered.SQL> insert into test values(1);1 row created.SQL> select * from test;ID
----------1SQL> conn sys/oracle as sysdba
Connected.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
3.复制要备份的文件到备份目录
[oracle@11g ~]$ cd /u01/app/oracle/product/11.2.0/db_home1/dbs/
[oracle@11g dbs]$ ll -ls
total 28
4 -rw-rw---- 1 oracle oinstall 1544 Feb 29 13:29 hc_cai.dat
4 -rw-rw---- 1 oracle oinstall 1544 Jan 8 13:15 hc_DBUA0.dat
4 -rw-r--r-- 1 oracle oinstall 962 Feb 29 12:26 initcai.ora
4 -rw-r--r-- 1 oracle oinstall 2851 May 15 2009 init.ora
4 -rw-r----- 1 oracle oinstall 24 Jan 8 13:18 lkCAI
4 -rw-r----- 1 oracle oinstall 1536 Jan 8 13:21 orapwcai
4 -rw-r----- 1 oracle oinstall 2560 Feb 29 13:24 spfilecai.ora
[oracle@11g dbs]$ scp initcai.ora /home/oracle/backup
[oracle@11g dbs]$ scp spfilecai.ora /home/oracle/backup
[oracle@11g dbs]$ cd /u01/app/oracle/oradata/cai/
[oracle@11g cai]$ ll -ls
total 18222249552 -rw-r----- 1 oracle oinstall 9781248 Feb 29 13:29 control01.ctl
102408 -rw-r----- 1 oracle oinstall 104865792 Jan 14 17:35 example01.dbf51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 13:29 redo01.log51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 13:26 redo02.log51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 13:26 redo03.log
573448 -rw-r----- 1 oracle oinstall 587210752 Feb 29 13:29 sysaux01.dbf
808968 -rw-r----- 1 oracle oinstall 828383232 Feb 29 13:29 system01.dbf5260 -rw-r----- 1 oracle oinstall 38805504 Feb 29 12:02 temp01.dbf
107528 -rw-r----- 1 oracle oinstall 110108672 Feb 29 13:29 undotbs01.dbf61448 -rw-r----- 1 oracle oinstall 62922752 Feb 29 13:29 users01.dbf
[oracle@11g cai]$ scp * /home/oracle/backup
[oracle@11g cai]$ cd /home/oracle/backup
[oracle@11g backup]$ ll -ls
total 18242209552 -rw-r----- 1 oracle oinstall 9781248 Feb 29 13:30 control01.ctl
102408 -rw-r----- 1 oracle oinstall 104865792 Feb 29 13:30 example01.dbf4 -rw-r--r-- 1 oracle oinstall 962 Feb 29 13:30 initcai.ora51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 13:30 redo01.log51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 13:30 redo02.log51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 13:30 redo03.log4 -rw-r----- 1 oracle oinstall 2560 Feb 29 13:30 spfilecai.ora
573448 -rw-r----- 1 oracle oinstall 587210752 Feb 29 13:30 sysaux01.dbf
808968 -rw-r----- 1 oracle oinstall 828383232 Feb 29 13:30 system01.dbf7248 -rw-r----- 1 oracle oinstall 38805504 Feb 29 13:30 temp01.dbf
107528 -rw-r----- 1 oracle oinstall 110108672 Feb 29 13:30 undotbs01.dbf61448 -rw-r----- 1 oracle oinstall 62922752 Feb 29 13:30 users01.dbf
3.模拟数据丢失,truncate table test
SQL> startup
ORACLE instance started.Total System Global Area 885211136 bytes
Fixed Size 2218432 bytes
Variable Size 369100352 bytes
Database Buffers 507510784 bytes
Redo Buffers 6381568 bytes
Database mounted.
Database opened.
SQL> select * from test;ID
----------1SQL> truncate table test;Table truncated.SQL> select * from test;no rows selected
4.将备份的文件复制回原来的位置
我这里做了一个不一样的实验,首先我只将表所在的数据文件恢复到原来的位置,启动数据库后发现数据表中还是没有数据
[oracle@11g backup]$ ll -ls
total 18242129552 -rw-r----- 1 oracle oinstall 9781248 Feb 29 15:35 control01.ctl
102408 -rw-r----- 1 oracle oinstall 104865792 Feb 29 15:35 example01.dbf51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 15:35 redo01.log51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 15:35 redo02.log51204 -rw-r----- 1 oracle oinstall 52429312 Feb 29 15:35 redo03.log
573448 -rw-r----- 1 oracle oinstall 587210752 Feb 29 15:35 sysaux01.dbf
808968 -rw-r----- 1 oracle oinstall 828383232 Feb 29 15:35 system01.dbf7248 -rw-r----- 1 oracle oinstall 38805504 Feb 29 15:35 temp01.dbf
107528 -rw-r----- 1 oracle oinstall 110108672 Feb 29 15:35 undotbs01.dbf61448 -rw-r----- 1 oracle oinstall 62922752 Feb 29 15:35 users01.dbf
[oracle@11g backup]$ scp users01.dbf /u01/app/oracle/oradata/cai
SQL> startup;
ORACLE instance started.Total System Global Area 885211136 bytes
Fixed Size 2218432 bytes
Variable Size 369100352 bytes
Database Buffers 507510784 bytes
Redo Buffers 6381568 bytes
Database mounted.
ORA-01113: file 4 needs media recovery
ORA-01110: data file 4: '/u01/app/oracle/oradata/cai/users01.dbf'SQL> recover datafile 4;
Media recovery complete.
SQL> alter database open;Database altered.SQL> select * from test;no rows selected
然后我又继续对控制文件进行恢复,报错如下
SQL> alter database mount;Database altered.SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01122: database file 1 failed verification check
ORA-01110: data file 1: '/u01/app/oracle/oradata/cai/system01.dbf'
ORA-01207: file is more recent than control file - old control file
所以冷恢复必须对全库进行恢复,不能只是单独的恢复丢失数据的数据文件和控制文件
SQL> startup;
ORACLE instance started.Total System Global Area 885211136 bytes
Fixed Size 2218432 bytes
Variable Size 369100352 bytes
Database Buffers 507510784 bytes
Redo Buffers 6381568 bytes
Database mounted.
Database opened.
SQL> select * from test;ID
----------1
相关文章:
oracle11g数据库 冷备份与冷恢复
我们在做备份时,究竟需要备份数据库的哪些文件呢? 其实只需要备份数据文件和控制文件就可以了,其他的参数文件,重做日志文件以及口令文件与数据文件相比都非常小,所以在一般情况下都会一起备份。 冷备份步骤…...
考研数据结构算法机试训练1
中南大学上机压轴题 测试数据: 3 500 0.6 100 0.8 200 0.7 100 输出 390首先要对输入的折扣进行排序,优先使用比率低的z进行支付。 然后用lowcost记录目前多少钱是打过折的。T-lowcost就是剩余没打折的。 每次循环用上一个人的折扣额度。若所有人折扣额…...
SAP PO接口行项目json缺少中括号[]问题
PO接口小问题问题:如果需要同时传输DATA与ITEM,此处选择很重要,如果选择:HTTP Header ITEM将缺少[].需要注意 PO接口小问题 问题:如果需要同时传输DATA与ITEM,此处选择很重要,如果选择&#…...
STM32_DS18B20_1_芯片简介及初始化配置
DS18B20介绍 DS18B20数字温度计提供9位到12位摄氏度的温度测量,并具有非易失性,用户可编程的上下触发点的报警功能。DS18B20通过1线总线进行通信,根据定义,该总线只需要一条数据线,即可与中央微处理器进行通信…...
每天一个数据分析题(一百六十四)
关于OLAP系统,下列选项不正确的是() A. 是基于数据仓库的信息进行分析处理过程 B. 用户数量相对较少,其用户主要是业务决策人员与管理人员 C. 对响应时间要求非常高。 D. 基础数据来源于生产系统的操作数据,也就是…...
单词倒排——c语言解法
以下是题目: 这个题中有三个点, 一个是将非字母的字符转换为空格, 第二是如果有两个连续的空格, 那么就可以将这两个连续的空格变成一个空格。 第三个点就是让单词倒排。 那么我们就可以将这三个点分别封装成三个函数。 还有就是…...
Python + Selenium —— 网页元素定位之class name定位!
class 属性可以为元素应用一个或者多个 CSS 样式类。 利用此属性可以与指定的 CSS 样式类关联起来,以此达到设置元素样式的功能。 可以这样理解,比如一个页面上的所有按钮,都想做成同样的样式,那么是不是要在每个按钮上写同样的 c…...
matlab simulink变压器温度仿真
1、内容简介 略 48-可以交流、咨询、答疑 2、内容说明 略 3、仿真分析 略 matlab simulink变压器温度仿真_哔哩哔哩_bilibili 4、参考论文 略 大型油浸风冷变压器绕组温度场分析_高原 基于顶层油温的变压器绕组热点温度计算改进模型_陈伟根 基于热电类比理论的油浸式电…...
设计模式七:责任链模式
文章目录 1、责任链模式2、spring中的责任链模式Spring InterceptorServlet FilterNetty 1、责任链模式 责任链模式为请求创建了一个接收者对象的链,在这种模式下,通常每个节点都包含对另一个节点者的引用。每个节点针对请求,处理自己感兴趣…...
Git,GitHub与GitLab分别是什么?有什么关系和区别?
Git 定义:Git 是一个分布式版本控制系统,用于跟踪文件的变化,并协助多人协作开发软件项目。作用:Git 可以在本地存储完整的项目历史记录,并允许开发者在不同的分支上进行独立的开发,最后将它们合并到主干分…...
【Spring连载】使用Spring Data访问 MongoDB----Template API 查询Documents
【Spring连载】使用Spring Data访问 MongoDB----Template API 查询Documents 一、 查询集合中的Documents二 选择字段三、 其他查询选项3.1 Hints3.2 游标批大小Cursor Batch Size3.3 Collations3.4 读取首选项Read Preference3.5 Comments 四、查询Distinct值五、GeoSpatial Q…...
git describe
git describe一般用于查看当前提交距离上次最近的tag是什么,并且还可以知道差了多少个commit,在工程实践当中是个非常好用的命令 如果git describe后面什么都不加的话,默认找的是最近的有注释的tag 如何打有注释的tag打注释? g…...
React Switch用法及手写Switch实现
问:如果注册的路由特别多,找到一个匹配项以后还会一直往下找,我们想让react找到一个匹配项以后不再继续了,怎么处理?答:<Switch>独特之处在于它只绘制子元素中第一个匹配的路由元素。 如果没有<Sw…...
PowerShell执行策略:确保脚本安全执行的关键
PowerShell执行策略:确保脚本安全执行的关键 在自动化和脚本任务管理中,PowerShell 是 Windows 系统管理员和自动化工程师的强大工具。但随着这种强大的能力也带来了安全风险,特别是在执行未经验证的脚本时。为了降低这种风险,Po…...
LeetCode 热题 100 | 图论(上)
目录 1 200. 岛屿数量 2 994. 腐烂的橘子 2.1 智障遍历法 2.2 仿层序遍历法 菜鸟做题,语言是 C 1 200. 岛屿数量 解题思路: 遍历二维数组,寻找 “1”(若找到则岛屿数量 1)寻找与当前 “1” 直接或间接连接在…...
跟着cherno手搓游戏引擎【25】封装2DRenderer,封装shader传参,自定义Texture
封装2DRenderer: Renderer.h: #include"ytpch.h" #include"Renderer.h" #include <Platform/OpenGL/OpenGLShader.h> #include"Renderer2D.h" namespace YOTO {Renderer::SceneData* Renderer::m_SceneData new Renderer::S…...
多个值时 if [ -z 报错 binary operator expected
if [ ! -z "\$client_pid" ]; then 报错: line 23: [: 662: binary operator expected 改成 if [[ ! -z "\$client_pid" ]]; then 即可。 unix - binary operator expected error when checking if a file with full pathname exists - Stack Overflo…...
如何使用ChatGPT创建一份优质简历
目录 第一步:明确目标和重点 第二步:与ChatGPT建立对话 第三步:整理生成的内容 第四步:注重行文风格 第五步:强调成就和量化结果 第六步:个性化和定制 第七步:反复修改和完善 总结 在现…...
k8s(6)
目录 一.kubectl 命令行管理K8S 陈述式资源管理方式(可理解成使用一条kubectl命令及其参数选项来实现资源对象的管理操作) service的4的基本类型: service的端口 应用发布策略: 声明式资源管理方式(可理解成使用…...
自动驾驶框架:自动驾驶汽车定位-感知-规划-决策-控制概述,按照我的架构图理解:决策决定的是速度,规划决定的是路径(架构理解推荐)
1.按照我的架构图理解:决策决定的是速度,规划决定的是路径 参考链接:【自动驾驶】运动规划丨速度规划丨自动驾驶速度规划及状态协调方法 2.下面是参考别人的理解: 自动驾驶汽车定位-感知-规划-决策-控制概述 规划-决策-控制知…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...
边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...
ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
JVM 内存结构 详解
内存结构 运行时数据区: Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器: 线程私有,程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 每个线程都有一个程序计数…...
LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...
宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...
智能职业发展系统:AI驱动的职业规划平台技术解析
智能职业发展系统:AI驱动的职业规划平台技术解析 引言:数字时代的职业革命 在当今瞬息万变的就业市场中,传统的职业规划方法已无法满足个人和企业的需求。据统计,全球每年有超过2亿人面临职业转型困境,而企业也因此遭…...
