视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
ora-01172ora-01151的处理
2020-11-09 11:26:09 责编:小采
文档


Oracle9i以后,后台进程PMON自动在中注册在系统参数SERVICE_NAMES中定义的服务名,SERVICE_NAMES默认为DB_NAME+DOMAIN_NAM

一开机器,发现磁盘做了扫描,估计是昨天关机遇到的问题,之后Oracle出现 ora-01172 ora-01151了
连忙去查找资料解决,其中又遇到了ORA-12514错误,先解决这个错误的方法如下:
listener.ora这个文件中输入下面信息:

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = oracle) 服务名
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1) db_home
(SID_NAME = oracle) ##这个是你要添加的服务
)
(SID_DESC =
(PROGRAM = extproc)
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1) ##这个服务保证你可以使用外部过程,如C程序
)
)

然后再配置tnsnames.ora文件,加入下面的内容:

oracle =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = test) 与上面的服务名对应
)
)

在连接时你就可以这样测试下:
tnsping oracle

Oracle9i以后,后台进程PMON自动在中注册在系统参数SERVICE_NAMES中定义的服务名,SERVICE_NAMES默认为DB_NAME+DOMAIN_NAME。监听配置文件listener.ora中可以不必指定监听的服务名。但是,当数据库处于关闭状态下PMON进程没有启动,也就不会自动注册监听的实例名,所以使用sqlplus sys/his@orc0 as sysdba 会出现ORA-12514错误。

通过在lsnrctl中输入set display verbose,然后再通过命令service查看,服务状态为READY表示PMON自动注册的服务名,而UNKNOWN则表示该服务是手工在LISTENER.ORA中配置的数据库服务。

至于
这样解决了,至于介质恢复:
ora-01172 ora-01151了,解决办法如下:

c:>sqlplus /nolog
SQL> connect sys/sys@oracle as SYSDBA
已连接
SQL> startup mount
ORA-01081: 无法启动已在运行的 ORACLE --- 请首先关闭
SQL> alter database open read only;
alter database open read only
*
ERROR 位于第 1 行:
ORA-16005: 数据库需要恢复


SQL> recover database
完成介质恢复。
SQL> shutdown immediate
ORA-01109: 数据库未打开


已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 730931140 bytes
Fixed Size 454596 bytes
Variable Size 411041792 bytes
Database Buffers 318767104 bytes
Redo Buffers 6678 bytes
数据库装载完毕。
数据库已经打开。
SQL>

于是就可以咯

下载本文
显示全文
专题