ITPub博客

首页 > 应用开发 > IT综合 > 重建控制文件

重建控制文件

原创 IT综合 作者:yeahokay 时间:2008-05-21 10:14:32 0 删除 编辑
还可以参考:http://www.eygle.com/archives/2005/03/oeoeoeoeiaeoeei.html[@more@]*

practice 1

假定,数据库控制文件已经全部丢失,但其他都没有损坏

*/

/* 准备 */
--关闭数据库

$ sqlplus /nolog

SQL> connect system/system as sysdba

Connected.

SQL> shutdown immediate
cp -R /oracle/oradata/TEST /oracle/oradata/TEST_bak
mv control01.ctl control04.ctl

mv control02.ctl control05.ctl

mv control03.ctl control06.ctl
--重新数据库,出错

ORA-00205: error in identifying controlfile, check alert log for more info
--step 4

备份现存的文件

cp -R /oracle/oradata/TEST /oracle/oradata/TEST_bak_20070109
--step 5

startup nomount
--step 6

--issue create controlfile

CREATE CONTROLFILE REUSE DATABASE TEST

NORESETLOGS NOARCHIVELOG

-- SET STANDBY TO MAXIMIZE PERFORMANCE

MAXLOGFILES 50

MAXLOGMEMBERS 4

MAXDATAFILES 200

MAXINSTANCES 1

MAXLOGHISTORY 226

LOGFILE

GROUP 1 '/oracle/oradata/TEST/redo01.log' SIZE 100M,

GROUP 2 '/oracle/oradata/TEST/redo02.log' SIZE 100M,

GROUP 3 '/oracle/oradata/TEST/redo03.log' SIZE 100M

-- STANDBY LOGFILE

DATAFILE

'/oracle/oradata/TEST/system01.dbf',

'/oracle/oradata/TEST/undotbs01.dbf',

'/oracle/oradata/TEST/cwmlite01.dbf',

'/oracle/oradata/TEST/drsys01.dbf',

'/oracle/oradata/TEST/example01.dbf',

'/oracle/oradata/TEST/indx01.dbf',

'/oracle/oradata/TEST/odm01.dbf',

'/oracle/oradata/TEST/tools01.dbf',

'/oracle/oradata/TEST/users01.dbf',

'/oracle/oradata/TEST/xdb01.dbf'

CHARACTER SET ZHS32GB18030
--step 7 备份新控制文件

cp /oracle/oradata/TEST/control01.ctl /home/oracle/control01.ctl
--step 10
ALTER DATABASE OPEN;
/*

practice 2

假定,数据库控制文件、online redo log已经全部丢失,但其他都没有损坏

*/

/* 准备 */
--关闭数据库

$ sqlplus /nolog

SQL> connect system/system as sysdba

Connected.

SQL> shutdown immediate
cp -R /oracle/oradata/TEST /oracle/oradata/TEST_bak
mv control01.ctl control04.ctl

mv control02.ctl control05.ctl

mv control03.ctl control06.ctl
mv redo01.log redo04.log

mv redo02.log redo05.log

mv redo03.log redo06.log
--重新数据库,出错

ORA-00205: error in identifying controlfile, check alert log for more info
--step 4

备份现存的文件

cp -R /oracle/oradata/TEST /oracle/oradata/TEST_bak_20070109
--step 5

startup nomount
--step 6

--issue create controlfile

CREATE CONTROLFILE REUSE DATABASE TEST

RESETLOGS NOARCHIVELOG

-- SET STANDBY TO MAXIMIZE PERFORMANCE

MAXLOGFILES 50

MAXLOGMEMBERS 4

MAXDATAFILES 200

MAXINSTANCES 1

MAXLOGHISTORY 226

LOGFILE

GROUP 1 '/oracle/oradata/TEST/redo01.log' SIZE 100M,

GROUP 2 '/oracle/oradata/TEST/redo02.log' SIZE 100M,

GROUP 3 '/oracle/oradata/TEST/redo03.log' SIZE 100M

-- STANDBY LOGFILE

DATAFILE

'/oracle/oradata/TEST/system01.dbf',

'/oracle/oradata/TEST/undotbs01.dbf',

'/oracle/oradata/TEST/cwmlite01.dbf',

'/oracle/oradata/TEST/drsys01.dbf',

'/oracle/oradata/TEST/example01.dbf',

'/oracle/oradata/TEST/indx01.dbf',

'/oracle/oradata/TEST/odm01.dbf',

'/oracle/oradata/TEST/tools01.dbf',

'/oracle/oradata/TEST/users01.dbf',

'/oracle/oradata/TEST/xdb01.dbf'

CHARACTER SET ZHS32GB18030
--step 7 备份新控制文件

cp /oracle/oradata/TEST/control01.ctl /home/oracle/control01.ctl
--step 10
ALTER DATABASE OPEN resetlogs;
/*

practice 3

假定,修改数据库名为oratest

*/

/* 准备 */
--关闭数据库

--step 3

在$ORACLE_HOME/dbs (windows为database)使用创建参数文件initoratest.ora

将db_name改为oratest

创建一个名为orapwd的密码文件,(将原来的文件重命名即可)
--step 4

备份现存的文件

cp -R /oracle/oradata/TEST /oracle/oradata/TEST_bak_20070109
--step 5

startup nomount
--step 6

--issue create controlfile

CREATE CONTROLFILE

SET DATABASE oratest

RESETLOGS NOARCHIVELOG

-- SET STANDBY TO MAXIMIZE PERFORMANCE

MAXLOGFILES 50

MAXLOGMEMBERS 4

MAXDATAFILES 200

MAXINSTANCES 1

MAXLOGHISTORY 226

LOGFILE

GROUP 1 '/oracle/oradata/TEST/redo01.log' SIZE 100M,

GROUP 2 '/oracle/oradata/TEST/redo02.log' SIZE 100M,

GROUP 3 '/oracle/oradata/TEST/redo03.log' SIZE 100M

-- STANDBY LOGFILE

DATAFILE

'/oracle/oradata/TEST/system01.dbf',

'/oracle/oradata/TEST/undotbs01.dbf',

'/oracle/oradata/TEST/cwmlite01.dbf',

'/oracle/oradata/TEST/drsys01.dbf',

'/oracle/oradata/TEST/example01.dbf',

'/oracle/oradata/TEST/indx01.dbf',

'/oracle/oradata/TEST/odm01.dbf',

'/oracle/oradata/TEST/tools01.dbf',

'/oracle/oradata/TEST/users01.dbf',

'/oracle/oradata/TEST/xdb01.dbf'

CHARACTER SET ZHS32GB18030

reuse;

--step 7 备份新控制文件

cp /oracle/oradata/TEST/control01.ctl /home/oracle/control01.ctl
--step 10
ALTER DATABASE OPEN resetlogs;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/786540/viewspace-1004348/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
  • 博文量
    140
  • 访问量
    1115940