由dbf表空间文件恢复Oracle数据
由dbf表空间⽂件恢复Oracle数据⼀、需求分析
服务器A中的数据库实例被删除,幸好dbf⽂件还在,遂准备由dbf⽂件恢复数据到服务器B续命,待恢复的数据库实例名为 orcl1服务器B中的数据库为新安装,已经初始化好 orcl实例,⾸先对⽐两个实例的dbf⽂件
↑服务器A中待恢复的 orcl1实例dbf⽂件↑
↑服务器B中的orcl实例dbf⽂件↑
对⽐可知新增的dbf⽂件是PORTAL.DBF、SDE.DBF、WZYZT.DBF,猜测各⾃对应三个同名⽤户
思路就出来了:
1、新建orcl1实例
2、新增三个表空间⽂件
3、新增三个同名⽤户,分别授权
4、恢复数据查看校验
⼆、创建orcl1实例
1、打开 “开始 - 所有程序 - Oracle - OraDb11g_home1 - 配置和移植⼯具 - Database Configuration Assistant”
步骤 1:默认
步骤 2:默认
步骤 3:全局数据库名:orcl1,SID:orcl1
步骤 4:默认
步骤 5 填写管理员账户的密码
后⾯全部默认
确认开始创建orcl1实例
done,使⽤ PL/SQL 进⾏连接测试
三、恢复dbf
1、使⽤ PL/SQL 连接到orcl1实例,创建表空间及⽤户,对⽤户授权
create tablespace portal datafile 'C:\app\Administrator\oradata\orcl1\portal.dbf' size 1024M;
create tablespace sde datafile 'C:\app\Administrator\oradata\orcl1\sde.dbf' size 1024M;
create tablespace wzyzt datafile 'C:\app\Administrator\oradata\orcl1\wzyzt.dbf' size 1024M;
create user portal identified by portal default tablespace portal;
create user sde identified by sde default tablespace sde;
create user wzyzt identified by wzyzt default tablespace wzyzt;
grant connect,dba,resource to portal;
grant connect,dba,resource to sde;
grant connect,dba,resource to wzyzt;
凿壁偷光的故事和含义2、使⽤ sqlplus 以 sysdba ⾝份登录,对控制⽂件进⾏备份;
sqlplus /nolog(此处不能加分号,否则⿊屏窗⼝会⼀闪⽽过)
conn /as sysdba登录
执⾏ alter database backup controlfile to trace;备份控件⽂件到trace⽂件
到oracle的安装⽬录,如:C:\app\Administrator,按修改时间降序,到最近的trace⽂件(orcl1_)备份好(建议使⽤Everything)经典伤感情歌
3、shutdown immediate停⽌数据库实例
4、备份C:\app\Administrator\oradata⽬录下的该实例⽂件夹(例如:orcl),接着将该实例⽂件夹删除,必须是全部删除,在oradata⽂件夹下新建orcl1⽂件夹把需恢复的dbf拷贝到orcl1⽬录下。
5、执⾏startup nomount,把数据库启动到nomount状态
6、从第2步备份出来trace⽂件中拷贝CREATE CONTROLFILE部分语句来重建控制⽂件:
红框 1 改为ARCHIVELOG
红框 2 因为前⾯是根据恢复的dbf创建了对应表空间,所以这⾥不⽤改,但还是需要确认⼀下
执⾏修改后的sql
CREATE CONTROLFILE REUSE DATABASE "ORCL1" NORESETLOGS  ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP1'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\REDO01.LOG'  SIZE 50M BLOCKSIZE 512,
GROUP2'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,
GROUP3'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\REDO03.LOG'  SIZE 50M BLOCKSIZE 512
-- STANDBY LOGFILE
今日一别乐融融打一花名
DATAFILE
'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\SYSTEM01.DBF',
'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\SYSAUX01.DBF',
'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\UNDOTBS01.DBF',
'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\USERS01.DBF',
怎么申请国外博士一览众山小的前一句'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\PORTAL.DBF',
'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\SDE.DBF',
'C:\APP\ADMINISTRATOR\ORADATA\ORCL1\WZYZT.DBF'
CHARACTER SET ZHS16GBK
;
黑执事第二季片尾曲
7、执⾏recover database,这两个报错直接⽆视
8、执⾏ alter database open;
恢复完成,登录数据库进⾏验证

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。