Oracle数据库数据恢复验证笔记

来源:未知 责任编辑:智问网络 发表时间:2013-10-22 19:28 点击:

这些年做数据恢复单子,经常碰到Oracle案例,当我们把数据恢复出来以后,我们怎样才能让用户看到oracle数据库里的东西,而不是一个一个oracle数据文件,以下是我总结出来的,对oracle初学者以及从事数据恢复业务的工程师会很有用的,这是我当年花了很多精力总结出来的一些经验,零零散散,都是我一点一滴做出来的。

1、冷备份需要的是在数据库shutdown的情况下,拷贝controlfile,pfile,datafile,redo logfile。

2、按照同样的目录结构,在新的机器做好,拷贝相应的文件到相应的目录。

3、假设pfile文件在:D:\Oracle\admin\dsserver\pfile\init.ora,在新的机器上运行:

oradim -NEW -SRVC OracleServiceDSSERVER -STARTMODE manual -PFILE "D:\Oracle\admin\dsserver1\pfile\init.ora"

在服务里生成一个新的实例管理服务,启动方式为手工。

4、然后在D:\oracle\ora81\network\ADMIN\listener.ora添加

(SID_DESC =

      (GLOBAL_DBNAME = dsserver)

      (ORACLE_HOME = D:\oracle\ora81)

      (SID_NAME = dsserver)

    )

5、运行lsnrctl,stop,然后start,看看dsserver监听情况

6、运行:oradim -STARTUP -SID dsserver -STARTTYPE srvc,inst 启动数据库实例

7、用原来dsserver用户登陆:

在D:\oracle\ora81\network\ADMIN\tnsnames.ora文件中添加相应的选项,如下 :

DSSERVER_QINTL =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = qintl)(PORT = 1521))

    )

    (CONNECT_DATA = (SID = dsserver)(SERVER = DEDICATED))

  )

或者oracle dba studio连接

8、顺利的话,一切ok!

*****************************************************************************************************************

对于windows,服务启动后,并不代表数据库就启动了i

解决目录结构不一样的问题

如果路径发生变化,比如controlfile发生变化,需要修改pfile中controlfile的路径,如果数据文件路径发生变化,需要在mount后,rename datafile到新路径。

connect sys/qintl@dsserver_qintl as sysdba

connect /as sysdba

startup mount pfile=D:\oracle\admin\dsserver1\pfile\init.ora

startup mount pfile=/ora/ora9/admin/gpdx/pfile/init.ora.7122005111153

startup pfile=/ora/ora9/admin/gpdx/pfile/init.ora.7122005111153

startup mount pfile=/oracle/initLYGADB.ora.112007223616

startup nomount pfile=/oracle/initLYGADB.ora.112007223616

alter database datafile '/oradata/LYGADB/LSA_IMAGE.DBF' offline drop;

移动数据文件

alter database rename file 'e:\test.dbf' to 'd:\test.dbf';

alter database rename file 'D:\oracle\oradata\dsserver\DBSTAR_IND_L.ORA' to 'D:\oracle\oradata\dsserver\dbf\DBSTAR_IND_L.ORA';

SQL> alter database rename file '/opt/oracle/test.dbf' to '/opt/oracle/oradata/conner/test.dbf';

Database altered.

重做日志文件不能更改路径?

SQL> recover database until cancel;

SQL>  alter database open resetlogs;//重建日志文件

 

recover database;

SQL> alter database open;

Database altered.

orapwd file=/home/oracle/oracle/product/10.2.0/db_1/dbs/orapw password=oracle entries=10

orapwd file=d:\oracle\ora81\DATABASE\PWDorcl.ORA password=oracle entries=10

SQL> select name from v$datafile;

移动成功

SQL> alter database drop logfile group 1;

SQL> alter database add logfile group 1 ('D:\oracle\oradata\dsserver1/log1.log',

'D:\oracle\oradata\dsserver1\log101.log')size 50m;

总结步骤:

1、sqlplus /nolog

2、SQL>connect as sysdba

3、SQL>startup mount pfile=D:\oracle\admin\dsserver\pfile\init.ora

4、SQL> select name from v$datafile; //查看原来数据文件位置

5、alter database rename file 'D:\oracle\oradata\dsserver\DBSTAR_IND_L.ORA' to 'D:\oracle\oradata\dsserver\dbf\DBSTAR_IND_L.ORA'; //挨个更新数据文件位置

6、SQL> alter database open; //打开数据库

7、SQL> select name from v$datafile; //查看更改后的数据

 

rem 创建用户DBSTAR

CREATE USER "DBSTAR"  PROFILE "DEFAULT" IDENTIFIED BY "qintl"

 DEFAULT  TABLESPACE "USERS" TEMPORARY  TABLESPACE "TEMP" ACCOUNT UNLOCK;

GRANT "CONNECT" TO "DBSTAR";

GRANT "RESOURCE" TO "DBSTAR";

ALTER USER "DBSTAR" DEFAULT ROLE  ALL;

 

 

database 必须的文件:数据文件(data files),Control files,redo log files。

可选的文件:parameters file,passwordfile,archived log files。

 

没有重做日志文件的冷备份恢复

1) startup mount

2) alter database open resetlogs;

It will re-create redo logs based on information in control files.

 

本文由达思总工程师覃廷良撰写,转载请注明出处

本文出自 “覃廷良数据恢复技术博客” 博客

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • Table函数使用简介
    • Oracle数据库Constraint约束的常用操作及异常处理
    • Bulk Collect性能分析(zz)
    • export/import的使用
    • OCP043第十五讲 Database Security
    • ORACLE10gr2数据导入MySQL方案
    • oracle 让sys用户可以使用isqlplus
    • 在oracle数据库下使用iSQL*Plus DBA访问数据库
    • Oracle行列转换小结
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1