Case study of ORACLE Database disconnection
When I got off work last night, I was about to shut down the ORACLE database on the local virtual machine, and then I was about to get off work. But because I opened multiple windows in SecureCRT, I accidentally got the result, by mistake, I executed the shutdown immediate command on a production server. It took about 6 to 7 seconds to find that the command has not yet responded, so I found that the command was executed incorrectly on the server. To be surprised, I did not want to directly CTRL + C to interrupt this operation. As follows:
SQL> shutdown immeidate;
SP2-0717: illegal SHUTDOWN option
SQL> shutdown immediate;
^ C
ORA-01013: user requested cancel of current operation
So I checked the alarm log file in another window and found that the database has closed some processes. The general situation is as follows:
tail -40f alert_SCM2.log
Wed Aug 6 17:54:37 2014
ARCH shutting down
ARC8: Archival stopped
Wed Aug 6 17:54:42 2014
ARCH shutting down
ARC7: Archival stopped
Wed Aug 6 17:54:47 2014
ARCH shutting down
ARC6: Archival stopped
Wed Aug 6 17:54:52 2014
ARCH shutting down
ARC5: Archival stopped
Wed Aug 6 17:54:57 2014
ARCH shutting down
ARC4: Archival stopped
Wed Aug 6 17:55:05 2014
CLOSE: Error 1013 during database close
Wed Aug 6 17:55:05 2014
SMON: enabling cache recovery
SMON: enabling tx recovery
Wed Aug 6 17:55:05 2014
ORA-1013 signalled during: ALTER DATABASE CLOSE NORMAL...
Wed Aug 6 17:55:07 2014
ARCH shutting down
ARC2: Archival stopped
Wed Aug 6 17:55:12 2014
ARCH shutting down
ARC1: Archival stopped
Wed Aug 6 17:55:17 2014
ARC3: Becoming the heartbeat ARCH
ARC3: Archiving disabled
ARCH shutting down
ARC3: Archival stopped
Wed Aug 6 17:55:17 2014
ARCH shutting down
Wed Aug 6 17:55:17 2014
ARC0: Archival stopped
Wed Aug 6 17:55:18 2014
Thread 1 closed at log sequence 97562
Successful close of redo thread 1
^C
So immediately check the status of the database to see if it is normal, the results are as follows, the ORA-00604, ORA-00376, ORA-01110 and other errors.
SQL> select status from v $ instance;
Select status from v $ instance
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 2
ORA-00376: file 1 cannot be read at this time
ORA-01110: data file 1: '/u01/oradata/SCM2/system01.dbf'
Surprised, I immediately quit the session and logged on again (I was not very calm at the time, but I was not prepared to talk about it in a hurry)
Sqlplus/as sysdba
SQL * Plus: Release 10.2.0.4.0-Production on Wed Aug 6 17:57:11 2014
Copyright (c) 1982,200 7, Oracle. All Rights Reserved.
Connected.
SQL> select status from v $ instacne;
Select status from v $ instacne
*
ERROR at line 1:
ORA-01012: not logged on
SQL> shutdown immdeiate;
SP2-0717: illegal SHUTDOWN option
SQL> exit
Disconnected
SQL> shutdwon immeidiate;
SP2-0734: unknown command beginning "shutdwon I..."-rest of line ignored.
SQL> shutdown immediate;
The ORA-24324: service handle not initialized.
ORA-24323: value not allowed
ORA-01089: immediate shutdown in progress-no operations are permitted
At this time, the alarm log contains a large number of such errors.
In desperation, I can only use the shutdown abort command. At this time, I calmed down. But actually reported ORA-01031: insufficient privileges error, immediately quit and then re-login, shut down the database and then restart.
SQL> shutdown abort
ORA-01031: insufficient privileges
Sqlplus/as sysdba
SQL * Plus: Release 10.2.0.4.0-Production on Wed Aug 6 18:15:00 2014
Copyright (c) 1982,200 7, Oracle. All Rights Reserved.
Connected.
SQL> shutdown abort
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area 7516192768 bytes
Fixed Size 2095640 bytes
Variable Size 5167384040 bytes
Database Buffers 2298478592 bytes
Redo Buffers 48234496 bytes
Database mounted.
Database opened.
SQL> exit
After the restart, the monitoring alarm logs are monitored and no exceptions are found. Check the logs one by one and then find that there are no problems, so you can calm down with a suspended mind. However, we still need to make a conclusion: This is a low-level mistake and a deep-seated mistake. The reason why I want to record it is also a case, and I should keep my mind in mind. During the whole process, I found myself not calm or calm. In fact, the database has already been shut down, so we should analyze it calmly, whether to wait until the database is shut down and restart or stop the process. The ORACLE database has shut down some processes. If the shutdown process is interrupted at this time, it is obviously an unwise decision. Wrong decisions lead to the emergence of a series of problems. The typical practice is not enough! The boss sent me an email asking me to relax, calm down and be careful next time. Keep in mind.
When you create an oracle database manually, the following log file appears: ORA-01092: ORACLE instance termination force disconnect.
Are the folder paths displayed by you created on the physical magnet? In addition, you need to modify the pfile you created using the init. ora file, such as the database name and add control files.
In addition, it is recommended that you change the language so that errors are easy to understand.
Alter session set nls_language = american;
Oracle Database Shutdown
Shutdown abort force close
Startup # restore the instance automatically
Normal Login