C:Documents and Settingsxuzhengzhu>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期四 1月 29 17:02:04 2015
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn sys/HondaHsu2011@dw as sysdba
已连接。
SQL> shutdwon
SP2-0042: 未知命令 "shutdwon" - 其余行忽略。
SQL> shutdown
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 1073741824 bytes
Fixed Size 1253072 bytes
Variable Size 142606640 bytes
Database Buffers 922746880 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
SQL> alter database archivelog;
数据库已更改。
SQL> alter database open;
数据库已更改。
SQL> alter system archive log current;
系统已更改。
SQL> set linesize 1500
SQL> select file_name,tablespace_name from dba_data_files;
FILE_NAME
----------------------------------------------------------------------------------
------------- ------------------------------
D:ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBF
D:ORACLEPRODUCT10.2.0ORADATAORCLSYSAUX01.DBF
D:ORACLEPRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF
D:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF
D:ORACLEPRODUCT10.2.0ORADATAORCLTEST01.DBF
D:ORACLEPRODUCT10.2.0ORADATAORCLTEST02.DBF
D:ORACLEPRODUCT10.2.0ORADATAORCLMM.DBF
已选择7行。
SQL> alter tablespace system begin backup;
表空间已更改。
SQL>
SQL> host copy D:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF E:oraclebak
已复制 1 个文件。
SQL> alter tablespace system end backup;
表空间已更改。
SQL> alter tablespace USERS begin backup;
表空间已更改。
SQL> host copy D:ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBF E:oraclebak
已复制 1 个文件。
SQL> alter tablespace USERS end backup;
表空间已更改。
SQL> alter tablespace SYSAUX begin backup;
表空间已更改。
SQL> host copy D:ORACLEPRODUCT10.2.0ORADATAORCLSYSAUX01.DBF E:oraclebak
已复制 1 个文件。
SQL> alter tablespace SYSAUX end backup;
表空间已更改。
SQL> alter tablespace UNDOTBS1 begin backup;
表空间已更改。
SQL> host copy D:ORACLEPRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF E:oraclebak
已复制 1 个文件。
SQL> alter tablespace UNDOTBS1 end backup;
表空间已更改。
SQL> alter tablespace TEST begin backup;
表空间已更改。
SQL> host copy D:ORACLEPRODUCT10.2.0ORADATAORCLTEST01.DBF E:oraclebak
已复制 1 个文件。
SQL> host copy D:ORACLEPRODUCT10.2.0ORADATAORCLTEST02.DBF E:oraclebak
已复制 1 个文件。
SQL> alter tablespace TEST end backup;
表空间已更改。
SQL> alter tablespace WZ begin backup;
表空间已更改。
SQL> host copy D:ORACLEPRODUCT10.2.0ORADATAORCLMM.DBF E:oraclebak
已复制 1 个文件。
SQL> alter tablespace WZ end backup;
表空间已更改。
SQL> alter database backup controlfile to 'E:oraclebakcontrolfile.bak';
数据库已更改。
SQL> alter database backup controlfile to trace;
数据库已更改。
SQL>
SQL> alter system archive log current;
系统已更改。
SQL> alter system switch logfile;
系统已更改。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>
SQL> host del D:oracleproduct10.2.0oradataorclTEST01.DBF
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 1073741824 bytes
Fixed Size 1253072 bytes
Variable Size 150995248 bytes
Database Buffers 914358272 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
ORA-01157: 无法标识/锁定数据文件 5 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 5: 'D:ORACLEPRODUCT10.2.0ORADATAORCLTEST01.DBF'
SQL> select * from v$recover_file;
FILE# ONLINE ONLINE_ ERROR CHANGE# TIME
---------- ------- ------- ----------------------------------------------------------------- ---------- --------------
5 ONLINE ONLINE FILE NOT FOUND 0
SQL>
SQL> host copy E:oraclebakTEST01.DBF D:oracleproduct10.2.0oradataorcl
已复制 1 个文件。
SQL> recover datafile 5
完成介质恢复。
SQL> alter database datafile 5 online;
数据库已更改。
SQL> alter database open;
数据库已更改。
system表空间数据文件或大量数据文件受损
重复上面热备份的操作,然后:
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> host del D:oracleproduct10.2.0oradataorclSYSTEM01.DBF
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 1073741824 bytes
Fixed Size 1253072 bytes
Variable Size 155189552 bytes
Database Buffers 910163968 bytes
Redo Buffers 7135232 bytes
数据库装载完毕。
ORA-01157: 无法标识/锁定数据文件 1 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 1: 'D:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF'
SQL> host copy E:oraclebakSYSTEM01.DBF D:oracleproduct10.2.0oradataorcl
SQL> recover database
完成介质恢复。
SQL> alter database open;
数据库已更改。
SQL> connect sys/HondaHsu2011@dw as sysdba
已连接。
SQL> conn lcam_atm_0106/comtop123@dw
已连接。
SQL> select * from test2;
A
----------
1
2