<b>若何从无缺的数据文件恢复oracle数据库-备份恢复</b>[Oracle防范]
本文“<b>若何从无缺的数据文件恢复oracle数据库-备份恢复</b>[Oracle防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
一.有数据文件、掌握文件和日记文件的备份1.服务器重装了操作系统,oracle也重装了.假如重装的oracle和从前破坏的数据库是一模一样的构造,那么此时的恢复是对比简单的.
1)删撤除新建数据库的全部数据文件、掌握文件和日记文件.Copy原数据库的数据文件、掌握文件和日记文件到对应目录下.
2)
Cmd>sqlplus /nolog
Sql>conn as sysdba
用户名:system
密码:(此处密码为新成立数据库的密码)
Sql>shutdown immediate
Sql>startup nomount
Sql>alter database mount
此时看数据库是不是能mount起来,有时会提醒没有口令文件PWDdemo.ora文件找不到.查看对应的目录(database下)会发现该文件是存在的.此时需求注意,该口令文件是新安装数据库后成立实例时生成的口令文件,不是从前所用数据库的口令文件,而目前,我们是用从前数据库的掌握文件和数据文件来翻开从前的数据库,所以此时需求重新成立一个口令文件.
Sql>shutdown immediate
Sql>host orapwd file=c:\oracle9i\database\PWDdemo.ora password=oracle
Entries=10 (放在database 目录下)
Sql>startup nomount
Sql>alter database mount
Sql>alter database open
翻开数据库
2.假如新数据库的安装目录和原有数据库的目录不一样,那么此时可以重建掌握文件来翻开数据库.因为原掌握文件中记录的数据文件地址和现有的数据文件位置不一样.此时和下面第二中情形一样.当然,此时也可以成立和原数据库一样的目录构造(前提是要记得原数据库的目录构造),需求注意的就是参数文件中记录的掌握文件位置和掌握文件中记录的数据文件位置.
阐明:我们需求清楚数据库在翻开的三个阶段中,需求读取的文件
Sql>startup nomount (此时读取参数文件)
Sql>alter database mount (按照参数文件中记录的掌握文件地址,去读取掌握文件)
Sql>alter database open (按照掌握文件中记录的数据文件地址,读取数据文件,翻开数据库)
二.只有数据文件备份,没有掌握文件和日记文件
由于只有数据文件备份,没有掌握文件和日记文件,此时只能采取重建掌握文件来恢复数据库.以下通过两中办法来介绍若何通太重建掌握文件来举行数据库的恢复.
1)仅安装数据库软件,通过新建oracle服务,引用数据文件来成立一个实例.下面以实例名为demo为例举行阐明.
1.成立存储demo相关文件的目录.即::各类文件的存放地址.
C:\documents and settings\mkdir c:\demo
C:\documents and settings\mkdir c:\demo\bdump
C:\documents and settings\mkdir c:\demo\udump
C:\documents and settings\mkdir c:\demo\cdump
C:\documents and settings\mkdir c:\demo\pfile
C:\documents and settings\mkdir c:\demo\create
C:\documents and settings\mkdir c:\demo\oradata
C:\documents and settings\mkdir c:\demo\oradata\demo (安排datafile、logfile、controlfile)
2.成立初始化参数文件(pfile)
此处pfile文件可以从其他能正常运行的数据库上copy一个过来举行改正.(判断其他正常运行的数据库利用的是pfile还是spfile,如是pfile可以直接copy,如是spfile,则可按照spfile成立一个pfile文件)
Copy过来的pfile需求改正的地方:
background_dump_dest=c:\demo\bdump core_dump_dest=c:\demo\cdump user_dump_dest=c:\demo\udump control_files=("c:\demo\oradata\demo\CONTROL01.CTL", "c:\demo\oradata\demo\CONTROL02.CTL", "c:\demo\oradata\demo\CONTROL03.CTL") dispatchers="(PROTOCOL=TCP) (SERVICE=demoXDB)"(实例名) dispatchers="(PROTOCOL=TCP) (SERVICE=demoXDB)" db_domain="" db_name=demo |
3.成立oracle服务和口令文件
C:\documents and settings\oradim — new —sid demo —intpwd oracle
4.配置监听和服务
用net manager 举行配置(demo实例的配置)
5.复制数据文件备份到指定的目录下.此处为c:\demo\oradata\demo
6.重建controlfile
C:\Documents and Settings\hefan>sqlplus /nolog SQL*Plus: Release 9.2.0.1.0 - Production on 星期一 12月 29 10:57:07 2008 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. SQL> conn as sysdba 请输入用户名: system 请输进口令: 已衔接. SQL> shutdown immediate ORA-01507: 未安装数据库 ORACLE 例程已经关闭. SQL> startup nomount file= c:\demo\pfile\initdemo.ora ORACLE 例程已经启动. Total System Global Area 135338868 bytes Fixed Size 453492 bytes Variable Size 109051904 bytes Database Buffers 25165824 bytes Redo Buffers 667648 bytes SQL> @d:\controlfile.sql 掌握文件已成立 Controlfile.sql内容以下:(此处也可以直接在sql>下输入以下内容举行成立controlfile) CREATE CONTROLFILE REUSE DATABASE "demo" RESETLOGS NOARCHIVELOG MAXLOGFILES 50 MAXLOGMEMBERS 5 MAXDATAFILES 100 MAXINSTANCES 8 MAXLOGHISTORY 226 LOGFILE GROUP 1 'c:\demo\oradata\demo\redo01.log' SIZE 50M, GROUP 2 'c:\demo\oradata\demo\redo02.log' SIZE 50M, GROUP 3 'c:\demo\oradata\demo\redo03.log' SIZE 50M DATAFILE 'c:\demo\oradata\demo\system01.dbf', 'c:\demo\oradata\demo\odm01.dbf', 'c:\demo\oradata\demo\indx01.dbf', 'c:\demo\oradata\demo\tools01.dbf', 'c:\demo\oradata\demo\undotbs01.dbf', 'c:\demo\oradata\demo\users01.dbf', 'c:\demo\oradata\demo\xdb01.dbf', 'c:\demo\oradata\demo\cwmlite01.dbf', 'c:\demo\oradata\demo\drsys01.dbf', 'c:\demo\oradata\demo\example01.dbf' CHARACTER SET zhs16gbk 阐明:此时没有日记文件,所以只能举行reserlogs,假如是有logfile,则此处不需求resetlogs,noresetlogs便可以 |
以上是“<b>若何从无缺的数据文件恢复oracle数据库-备份恢复</b>[Oracle防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |