本来是要模拟ora 1173,但是出现其他的情况,简单记录下。
环境:win7+11.2.0.1
点击(此处)折叠或打开
- C:\Users\Administrator>net start oracleserviceorcl --启动服务 语法为:net start oracleservice+sid
- OracleServiceORCL 服务正在启动 ......
- OracleServiceORCL 服务已经启动成功。
-
-
- C:\Users\Administrator>sqlplus / as sysdba
-
- SQL*Plus: Release 11.2.0.1.0 Production on 星期日 2月 16 14:55:49 2014
-
- Copyright (c) 1982, 2010, Oracle. All rights reserved.
-
-
- 连接到:
- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production --版本
- With the Partitioning, OLAP, Data Mining and Real Application Testing options
-
- SQL> shutdown immediate;
- 数据库已经关闭。
- 已经卸载数据库。
- ORACLE 例程已经关闭。
- SQL>
-
- SQL> startup nomount;
- ORACLE 例程已经启动。
-
- Total System Global Area 1043886080 bytes
- Fixed Size 2182344 bytes
- Variable Size 603980600 bytes
- Database Buffers 432013312 bytes
- Redo Buffers 5709824 bytes
- SQL> alter database mount;
-
- 数据库已更改。
-
- SQL> alter database backup controlfile to trace; --跟踪控制文件到trace
-
- 数据库已更改。
-
- CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS NOARCHIVELOG --完整的控制文件信息
- MAXLOGFILES 16
- MAXLOGMEMBERS 3
- MAXDATAFILES 100
- MAXINSTANCES 8
- MAXLOGHISTORY 292
- LOGFILE
- GROUP 1 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG' SIZE 50M BLOCKSIZE 512,
- GROUP 2 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG' SIZE 50M BLOCKSIZE 512,
- GROUP 3 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG\' SIZE 50M BLOCKSIZE 512
- -- STANDBY LOGFILE
- DATAFILE
- 'F:\\APP\\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF\,
- 'F:\\APP\\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF',
- 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF',
- 'F:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF'
- CHARACTER SET ZHS16GBK
- ;
-
-
- C:\\Users\\Administrator>sqlplus / as sysdba
-
- SQL*Plus: Release 11.2.0.1.0 Production on 星期日 2月 16 15:01:56 2014
-
- Copyright (c) 1982, 2010, Oracle. All rights reserved.
-
-
- 连接到:
- Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
- With the Partitioning, OLAP, Data Mining and Real Application Testing options
-
- SQL> shutdown immediate;
- ORA-01109: 数据库未打开
-
-
- 已经卸载数据库。
- ORACLE 例程已经关闭。
- SQL> startup nomount;
- ORACLE 例程已经启动。
-
- Total System Global Area 1043886080 bytes
- Fixed Size 2182344 bytes
- Variable Size 603980600 bytes
- Database Buffers 432013312 bytes
- Redo Buffers 5709824 bytes
- SQL>
- SQL> CREATE CONTROLFILE REUSE DATABASE \"ORCL\" NORESETLOGS NOARCHIVELOG --重建控制文件 但是少写undo的信息.
- 2 MAXLOGFILES 16
- 3 MAXLOGMEMBERS 3
- 4 MAXDATAFILES 100
- 5 MAXINSTANCES 8
- 6 MAXLOGHISTORY 292
- 7 LOGFILE
- 8 GROUP 1 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\REDO01.LOG\' SIZE 50M BLOCKSIZE 512,
- 9 GROUP 2 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\REDO02.LOG\' SIZE 50M BLOCKSIZE 512,
- 10 GROUP 3 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\REDO03.LOG\' SIZE 50M BLOCKSIZE 512
- 11 -- STANDBY LOGFILE
- 12 DATAFILE
- 13 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\SYSTEM01.DBF\',
- 14 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\SYSAUX01.DBF\',
- 15 \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\USERS01.DBF\'
- 16 CHARACTER SET ZHS16GBK
- 17 ;
-
- 控制文件已创建。
-
- SQL> alter database open;
- alter database open
- *
- 第 1 行出现错误:
- ORA-01092: ORACLE instance terminated. Disconnection forced
- ORA-30046: Undo tablespace UNDOTBS1 not found in control file. --报此错误
- 进程 ID: 3932
- 会话 ID: 125 序列号: 3
-
在参数文件中添加参数 :*.undo_management='MANUAL' -
- SQL>
-
- SQL> conn / as sysdba
- 已连接到空闲例程。
- SQL> create spfile from pfile;
-
- 文件已创建。
-
- SQL> startup
- ORACLE 例程已经启动。
-
- Total System Global Area 1043886080 bytes
- Fixed Size 2182344 bytes
- Variable Size 603980600 bytes
- Database Buffers 432013312 bytes
- Redo Buffers 5709824 bytes
- 数据库装载完毕。
- ORA-01113: 文件 1 需要介质恢复
- ORA-01110: 数据文件 1: \'F:\\APP\\ADMINISTRATOR\\ORADATA\\ORCL\\SYSTEM01.DBF\'
-
-
- SQL> recover database;
- 完成介质恢复。
- SQL> alter database open; --成功open.
-
- 数据库已更改。
-
- SQL> select status from v$instance;
-
- STATUS
- ------------
- OPEN
-
- SQL> show parameter undo
-
- NAME TYPE VALUE
- ------------------------------------ ----------- ------------------------------
- undo_management string MANUAL
- undo_retention integer 900
- undo_tablespace string UNDOTBS1
- SQL>
-
- SQL> select segment_name from dba_rollback_segs;
-
- SEGMENT_NAME
- ------------------------------
- SYSTEM
- _SYSSMU10_378818850$
- _SYSSMU9_3186340089$
- _SYSSMU8_1682283174$
- _SYSSMU7_1101470402$
- _SYSSMU6_1439239625$
- _SYSSMU5_2520346804$
- _SYSSMU4_1451910634$
- _SYSSMU3_478608968$
- _SYSSMU2_1531987058$
- _SYSSMU1_3086899707$
-
- 已选择11行。
-
- SQL> conn scott/tiger --解锁下scott用户
- ERROR:
- ORA-28000: the account is locked
-
-
- 警告: 您不再连接到 ORACLE。
- SQL> alter user scott account unlock;
- SP2-0640: 未连接
- SQL> conn / as sysdba
- 已连接。
- SQL> alter user scott account unlock;
-
- 用户已更改。
-
- SQL> conn scott/tiger
- ERROR:
- ORA-28001: the password has expired
-
-
- 更改 scott 的口令
- 新口令:
- 重新键入新口令:
- 口令已更改
- 已连接。
- SQL> select * from cat;
-
- TABLE_NAME TABLE_TYPE
- ------------------------------ -----------
- BONUS TABLE
- DEPT TABLE
- EMP TABLE
- SALGRADE TABLE
-
- SQL> create table yws as select * from emp;
- create table yws as select * from emp
- *
- 第 1 行出现错误:
- ORA-01552: cannot use system rollback segment for non-system tablespace \'USERS\' --当创建表的时候会报没有回滚段
-
- SQL> alter session set events \'10046 trace name context forever, level 12\'; --本想做个10046 权限不够
- ERROR:
- ORA-01031: insufficient privileges
- 用sys 用户登录发现
- SQL>
- SQL> conn / as sysdba
- 已连接。
- SQL> create table yws as select * from scott.emp; --但是sys用户可以
-
- 表已创建。
-
- SQL> select segment_name from dba_rollback_segs;
-
- SEGMENT_NAME
- ------------------------------
- SYSTEM
- _SYSSMU10_378818850$
- _SYSSMU9_3186340089$
- _SYSSMU8_1682283174$
- _SYSSMU7_1101470402$
- _SYSSMU6_1439239625$
- _SYSSMU5_2520346804$
- _SYSSMU4_1451910634$
- _SYSSMU3_478608968$
- _SYSSMU2_1531987058$
- _SYSSMU1_3086899707$
-
- 已选择11行。
-
- SQL> select segment_name,status from dba_rollback_segs;
-
- SEGMENT_NAME STATUS
- ------------------------------ ----------------
- SYSTEM ONLINE --是online的
- _SYSSMU10_378818850$ OFFLINE
- _SYSSMU9_3186340089$ OFFLINE
- _SYSSMU8_1682283174$ OFFLINE
- _SYSSMU7_1101470402$ OFFLINE
- _SYSSMU6_1439239625$ OFFLINE
- _SYSSMU5_2520346804$ OFFLINE
- _SYSSMU4_1451910634$ OFFLINE
- _SYSSMU3_478608968$ OFFLINE
- _SYSSMU2_1531987058$ OFFLINE
- _SYSSMU1_3086899707$ OFFLINE
-
- 已选择11行。
-
- SQL>
-
- SQL> grant alter session to scott;
-
- 授权成功。
-
- SQL> alter session set events \'10046 trace name context forever, level 12\';
-
- 会话已更改。
-
- SQL> create table yws as select * from emp;
- create table yws as select * from emp
- *
- 第 1 行出现错误:
- ORA-01552: 非系统表空间 \'USERS\' 不能使用系统回退段
-
-
- SQL> exit
10046的trace已经生成,抽时间写下。
主要是是自己库,基本就是属于静止库,无事务发生,模拟失败,简单记录下,继续ing。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29477587/viewspace-1082131/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29477587/viewspace-1082131/