D:\Script>set day=-12-17
D:\Script>cd d:\backup
D:\backup>md -12-17
D:\backup>sqlplus /nolog @D:\script\cold_backup.sql -12-17
SQL*Plus: Release 10.1.0.2.0 - Production on 星期四 12月 17 10:50:55 2009
Copyright (c) 1982, 2004, Oracle.
已连接。
*** spooling to D:\script\cold_backup_command.sql
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\DUREX.ORA D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\PERFSTAT.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\SYSAUX01.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\SYSTEM01.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\TEST.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\TEST01.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\TEST02.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\TEST02_COPY.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\UNDOTBS01.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\USERS01.DBF D:\backup\
host copy D:\TEST\JERRY_UNDO.DBF D:\backup\
host copy D:\DISK3\REDO01A.LOG D:\backup\
host copy D:\DISK3\REDO02A.LOG D:\backup\
host copy D:\DISK3\REDO03A.LOG D:\backup\
host copy D:\DISK3\REDO04A.LOG D:\backup\
host copy D:\DISK3\REDO05A.LOG D:\backup\
host copy D:\DISK6\REDO01B.LOG D:\backup\
host copy D:\DISK6\REDO02B.LOG D:\backup\
host copy D:\DISK6\REDO03B.LOG D:\backup\
host copy D:\DISK6\REDO04B.LOG D:\backup\
host copy D:\DISK6\REDO05B.LOG D:\backup\
host copy D:\DISK9\REDO01C.LOG D:\backup\
host copy D:\DISK9\REDO02C.LOG D:\backup\
host copy D:\DISK9\REDO03C.LOG D:\backup\
host copy D:\DISK9\REDO04C.LOG D:\backup\
host copy D:\DISK9\REDO05C.LOG D:\backup\
host copy D:\DISK3\CONTROL01.CTL D:\backup\
host copy D:\DISK6\CONTROL02.CTL D:\backup\
host copy D:\DISK9\CONTROL03.CTL D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\TEMP01.DBF D:\backup\
host copy D:\ORACLE\PRODUCT\10.1.0\ORADATA\MYORACLE\TEMP1129.DBF D:\backup\
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
已复制
ORA-12528: TNS: 监听程序: 所有适用的例程都不允许建立新的连接
SQL> show sga
ERROR:
ORA-03114: 未连接到 ORALCE
SQL> connect sys/test;
ERROR:
ORA-01033: ORACLE initialization or shutdown in progress
SQL> startup
ORA-01031: insufficient privileges
SQL> show user;
USER 为 ""
ALERTLOG:
Archive process shutdown avoided: 0 active
Thu Dec 17 10:56:31 2009
Starting ORACLE instance (normal)
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
Picked latch-free SCN scheme 2
KCCDEBUG_LEVEL = 0
Using LOG_ARCHIVE_DEST_10 parameter default value as USE_DB_RECOVERY_FILE_DEST
Autotune of undo retention is turned on.
Dynamic strands is set to TRUE
Running with 2 shared and 18 private strand(s). Zero-copy redo is FALSE
IMODE=BR
ILAT =18
LICENSE_MAX_USERS = 0
SYS auditing is disabled
Starting up ORACLE RDBMS Version: 10.1.0.2.0.
System parameters with non-default values:
PMON started with pid=2, OS id=772
MMAN started with pid=3, OS id=3120
DBW0 started with pid=4, OS id=2264
LGWR started with pid=5, OS id=3520
CKPT started with pid=6, OS id=252
SMON started with pid=7, OS id=2608
RECO started with pid=8, OS id=3628
CJQ0 started with pid=9, OS id=1320
Thu Dec 17 10:56:32 2009
starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
Thu Dec 17 10:56:32 2009
starting up 3 shared server(s) ...
Thu Dec 17 11:03:29 2009
Starting ORACLE instance (normal)
Thu Dec 17 11:04:43 2009
Starting ORACLE instance (normal)
Thu Dec 17 11:04:45 2009
Starting ORACLE instance (normal)
Thu Dec 17 11:04:46 2009
Starting ORACLE instance (normal)
客户端无法建立连接
SQL> connect sys/test@myoracle as sysdba;
ERROR:
ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接
服务器端:
SQL> connect / as sysdba;
已连接。
SQL> startup;
ORA-01081: ????????? ORACLE - ??????
USER 为 "SYS"
SQL> select status
STATUS
------------------------
STARTED
已选择 1 行。
SQL> startup;
ORA-01081: ????????? ORACLE - ??????
SQL> alter session set nls_date_formate=american;
alter session set nls_date_formate=american
*
第 1 行出现错误:
ORA-00922: ???????
SQL> alter session set nls_language=american;
Session altered.
SQL> startup
ORA-01081: cannot start already-running ORACLE - shut it down first
SQL> shutdown immediate;
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> connect / as sysdba;
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area
Fixed Size
Variable Size
Database Buffers
Redo Buffers
数据库装载完毕。
数据库已经打开。
SQL> select status
STATUS
------------
OPEN
已选择 1 行。
SQL>
执行冷备份脚本后数据库未能正常启动!
脚本较简单,执行到shutdown immediate再startup后报上述错误!无法正常启动,但在SQLPLUS中单独执行
shutdown immediate 再startup却没有问题!
再次执行脚本,故障依然,测试发现脚本没有问题,查了下资料是监听服务的问题,修改Tnsname.ora的配置在脚本中执行shutdown immediate再startup正常启动。记录一下
参考文章如下:
ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接
lsnrctl status
Listening Endpoints Summary...
Services Summary...
Service "LSExtProc" has 1 instance(s).
Service "ORCL" has 1 instance(s).
The command completed successfully
修改listener.ora的参数,把动态的参数设置为静态的参数,红色标注部分,然后从新启动监听,就OK
SID_LIST_LISTENER =
LISTENER =
通过修改tnsnames.ora的参数,红色表注部分
# tnsnames.ora Network Configuration File: C:\oracle\product\10.1.0\db_1
\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
AMMICLY =
EXTPROC_CONNECTION_DATA =
然后 sqlplus /nolog
SQL>alter database mount;
SQL>alter database open;
这样就可以启动数据库了;
或者用Oradim -shutdown -sid ammicly -shuttype srvc,inst -shutmode immediate -syspwd ammic;关闭数据库
在用oradim -startup -sid ammicly -starttype srvc,inst -syspwd ammic;启动数据库解决;也可以在截面上从启动数据库服务来解决;