oracle11g 重装操作系统后,如何利用原有oracle表空间文件还原数据库
最近由于系统重装,在还原dmp备份文件时,由于数据原因(用exp命令导出时表没有导出全部),导致系统不能正常运行。根据网上的信息和个人实际情况,做个记录,便于后用。
oracle 导出空表方法:
1. 执行下面语句:
select table_name from user_tables where NUM_ROWS=0;
2.假设我们这里有空表TBL_1,TBL_2,TBL_3,TBL_4,则查询结果如下:
alter table TBL_1 allocate extent;
alter table TBL_2 allocate extent;
alter table TBL_3 allocate extent;
alter table TBL_4 allocate extent;
最后我们把上面的SQL语句执行,再导出就可以了。
下面正式开始
说明:把原来的数据做备份
原oracle安装目录,D:\tools\oracle11g\Administrator
备份oracle目录, D:\数据库备份\oracle11g\Administrator
步骤:
一、重装oracle,安装目录要与原来的安装目录相同,即为D:\tools\oracle11g\Administrator
二、创建数据库时,确保ORACLE_SID与原数据库相同,此处ORACLE_SID = sd ,安装好数据库后,创建好表空间信息,也与原数据库相同,如果原来的有临时表空间,也要创建(和原来的一样)
三、创建成功后,会在D:\tools\oracle11g\Administrator\oradata\ 下出现与ORACLE_SID同名的文件夹sd ,即D:\tools\oracle11g\Administrator\oradata\sd
四、在控制面板->管理工具->服务 中,停止以下服务:
1)OracleOraDb11g_home1TNSListener
2)OracleServiceSD
因为我只开启了这两项oracle服务,为确保操作过程顺利,可以停止所有oracle服务。
五、从备份盘中拷贝oracle数据库文件:
1)把D:\数据库备份\oracle11g\Administrator\oradata\目录下的oracle文件夹完整拷贝到 D:\tools\oracle11g\Administrator\oradata\目录下。
2) 将D:\数据库备份\oracle11g\Administrator\product\11.2.0\dbhome_1\database 目录下文件拷贝到 D:\tools\oracle11g\Administrator\product\11.2.0\dbhome_1\database
3) 将D:\数据库备份\oracle11g\Administrator\product\11.2.0\dbhome_1\network\admin 目录下文件拷贝到 D:\tools\oracle11g\Administrator\product\11.2.0\dbhome_1\network\admin下,注意修改文件里的HOST值

admin 文件夹下的文件都看看,如果和现在的主机名(IP)不一样,都改一下。
六、复制控制文件
把D:\数据库备份\oracle11g\Administrator\flash_recovery_area\sd下的CONTROL02.CTL(这个文件和用户有关)文件copy到新安装的对应目录下(可把新的进行重命名,以备用。相信你在做上面的操作前都已经做好备份了)。
七、重新启动停止的oracle服务。
OK,你的数据已经还原好了。
oracle11g 重装操作系统后,如何利用原有oracle表空间文件还原数据库的更多相关文章
- Linux服务器磁盘扩展和oracle表空间文件迁移操作记录
1.环境介绍 服务器硬件:Dell R710 服务器OS:红帽子Linux RHEL4.8 数据库:Oracle 10g 2.出现的问题 因为数据表每天有上百万的数据写入表,加上建立索引,导致表空 ...
- interview:about Oracle表空间
Oracle表空间 SQL Server数据库与Oracle数据库之间最大的区别要属表空间设计.Oracle数据库开创性地提出了表空间的设计理念,这为Oracle数据库的高性能做出了不可磨灭的贡献.可 ...
- Oracle误删表空间文件后数据库无法启动
[问题描述]Oracle误删表空间文件后数据库无法启动,报错表空间文件不存在 [解决办法]sqlplus / as sysdba #以dba身份登陆数据库shutdown immediat ...
- Oracle表空间管理
oracle表空间相关常用命令小结: 1.ALTER DATABASE SET DEFAULT BIGFILE TABLESPACE; //修改表空间数据文件类型 2.ALT ...
- 【转】Oracle 表空间与数据文件
--============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或 ...
- 【基础】Oracle 表空间和数据文件
多个表空间的优势:1.能够将数据字典与用户数据分离出来,避免由于字典对象和用户对象保存在同一个数据文件中而产生的I/O冲突2.能够将回退数据与用户数据分离出来,避免由于硬盘损坏而导致永久性的数据丢失3 ...
- Oracle 表空间的概念
表空间 在数据库系统中,存储空间是较为重要的资源,合理利用空间,不但能节省空间,还可以提高系统的效率和工作性能. Oracle 可以存放海量数据,所有数据都在数据文件中存储.而数据文件大小受操作系 ...
- Oracle 表空间与数据文件
-============================== --Oracle 表空间与数据文件 --============================== /* 一.概念 表空间:是一个或多 ...
- ORACLE表空间管理维护
1:表空间概念 在ORACLE数据库中,所有数据从逻辑结构上看都是存放在表空间当中,当然表空间下还有段.区.块等逻辑结构.从物理结构上看是放在数据文件中.一个表空间可由多个数据文件组成. 如下图所示, ...
随机推荐
- Windows2012R2备用域控搭建
Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自己的ip,备dns:备域控的ip备域控的主dns:自己的ip,备dns:主域控的ip 客户端主dns:主域控的ip,备dns: ...
- C语言 · 最大值与最小值计算
输入11个整数,计算它们的最大值和最小值. 样例输入 0 1 2 3 4 5 6 7 8 9 10 样例输出 10 0 #include<stdio.h> int main(){ ]; ...
- Partition2:对表分区
在SQL Server中,普通表可以转化为分区表,而分区表不能转化为普通表,普通表转化成分区表的过程是不可逆的,将普通表转化为分区表的方法是: 在分区架构(Partition Scheme)上创建聚集 ...
- Python-Jenkins API使用 —— 在后端代码中操控Jenkins
最近在工作中需要用到在后台代码中触发Jenkins任务的构建,于是想到Jenkins是否有一些已经封装好的API类库提供,用于处理跟Jenkins相关的操作.下面就简单介绍下我的发现. Linux C ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(63)-Excel导入和导出-自定义表模导入
系列目录 前言 上一节使用了LinqToExcel和CloseXML对Excel表进行导入和导出的简单操作,大家可以跳转到上一节查看: ASP.NET MVC5+EF6+EasyUI 后台管理系统(6 ...
- C++随笔:.NET CoreCLR之GC探索(4)
今天继续来 带大家讲解CoreCLR之GC,首先我们继续看这个GCSample,这篇文章是上一篇文章的继续,如果有不清楚的,还请翻到我写的上一篇随笔.下面我们继续: // Initialize fre ...
- 初识的Spring Mvc-----原理
一.Spring Mvc简介 Spring Mvc(Spring Web Mvc) 属于表现层的框架. 二.Spring结构图 Spring Mvc是Spring框架里面web模块的一部分,是在Spr ...
- DevExpress第三方控件使用实例之ASPxPopupControl弹出子窗体
弹出页面控件:ASPxPopupControl, <dxpc:ASPxPopupControl ID="popubCtr" runat="server" ...
- requests源码阅读学习笔记
0:此文并不想拆requests的功能,目的仅仅只是让自己以后写的代码更pythonic.可能会涉及到一部分requests的功能模块,但全看心情. 1.另一种类的初始化方式 class Reques ...
- EChart系列:在echart3中使用百度地图扩展之后,如何获取到百度地图对象
最近做项目想要在百度地图上叠加显示echart的散点图,然后根据地图的缩放等级和区域范围要显示不同的散点图,这中间折腾了好久.功能要求包括: (1)底图使用百度地图: (2)可以在地图上叠加显示ech ...