Oracle,安装完成后,出现的SID问题!?

Oracle数据库安装没有任何错误,请高人指点迷津,我不知道是因为什么,账号我填写好system密码是我自己设置的口令,其他的我选择也没有什么问题。请高人给我几个方案,说... Oracle数据库安装没有任何错误,请高人指点迷津,我不知道是因为什么,账号我填写好system 密码是我自己设置的口令,其他的我选择也没有什么问题。请高人给我几个方案,说一下我是哪的问题,是后台没有开启服务,还是其他什么原因导致我的Oracle错误,监听程序当前无法识别连接描述符中所给的SID
请高人帮帮我,小弟不胜感激!!!
展开
 我来答
百度网友7dacf80a0
2011-10-25 · TA获得超过799个赞
知道小有建树答主
回答量:252
采纳率:100%
帮助的人:141万
展开全部
我的ORA-12505 错误解决办法,请耐心的认真看完。
在Fedora下安装了Oracle 10gR2,安装完成之后,使用netca创建了监听,创建的时候没有使用默认的LISTENER和1521端口,而是使用了LISTENER_DELL和1522端口,终端下显示完成,然后在$ORACLE_HOME/network/admin/tnsnames.ora下增加一个tns别名。
DELL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1522))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = dell)
)
)
加好之后,如下登录
sqlplus /nolog
connect scott/tiger@dell
登录之后就报错了,ORA-12505,按说监听方面的错误还是很好解决的,结果检查了监听也是正常启动的,但就是无法按照@DELL来登录,将tnsnames.ora里面SID = dell 改成 SERVER_NAME = dell 还是一直报错ORA-12505, TNS:listener does not currently know of SID given in connect descriptor。
然后发现$ORACLE_HOME/network/admin/目录下没有sqlnet.ora文件,运行netca,设置命名方法,运行之后sqlnet.ora文件有了,内容如下:
more sqlnet.oraNAMES.DIRECTORY_PATH= (TNSNAMES)
再次尝试登录,发现还是同样的错误。于是突然想到Oracle肯定一直是以LISTENER这个并未启动的监听来来Oracle提供监听信息,而我并没有使用默认监听名称所以造成这个错误,于是给监听文件listener.ora添加SID信息。
LISTENER_DELL =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = avon)(PORT = 1522))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)

SID_LIST_LISTENER_DELL =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(PROGRAM = extproc)
)
)
添加SID信息 (见蓝色加粗字体)
SID_LIST_LISTENER_DELL =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = dell)
(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)
(SID_NAME = dell)
)
)

加好之后保存退出 :wq
进行测试,还是报错,发现tnsnames.ora 里面我设置的是SERVER_NAME,于是给改成SID = dell 再次测试
sqlplus /nolog
SQL> conn scott/tiger@dell
Connected.

OK,一切正常。

后记:在windows下也进行了同样的尝试,发现如果不使用LISTENER作为默认监听名称 端口不为1521的话,也会导致这个错误,而解决方法和上面一致。 不过并没有尝试名称为LISTENER但是端口不为1521的情况。

C:\Windows\system32>lsnrctl
LSNRCTL for 32-bit Windows: Version 10.2.0.3.0 - Production on 13-9月 -2010 23:2
6:34
Copyright (c) 1991, 2006, Oracle. All rights reserved.
欢迎来到LSNRCTL, 请键入"help"以获得信息。
LSNRCTL> status
正在连接到 (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-12541: TNS: 无监听程序
TNS-12560: TNS: 协议适配器错误
TNS-00511: 无监听程序
32-bit Windows Error: 61: Unknown error
LSNRCTL> set current_listener LISTENER_DEMO
目前的监听程序为 LISTENER_DEMO
LSNRCTL> status
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=scott-PC)(PORT=1522)))
LISTENER 的 STATUS
------------------------
别名 LISTENER_DEMO
版本 TNSLSNR for 32-bit Windows: Version 10.2.0.3.0 - Produ
ction
启动日期 13-9月 -2010 23:17:13
正常运行时间 0 天 0 小时 9 分 41 秒
跟踪级别 off
安全性 ON: Local OS Authentication
SNMP OFF
监听程序参数文件 D:\oracle\product\10.2.0\db_1\network\admin\listener.o
ra
监听程序日志文件 D:\oracle\product\10.2.0\db_1\network\log\listener_dem
o.log
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=scott-PC)(PORT=1522)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
以上为出现ORA-12505错误时,监听的状态,
以下为修改正常,监听重启后的状态
LSNRCTL> set current_listener LISTENER_DEMO
目前的监听程序为 LISTENER_DEMO
LSNRCTL> stop
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=scott-PC)(PORT=1522)))
命令执行成功
LSNRCTL> start
启动tnslsnr: 请稍候...
TNSLSNR for 32-bit Windows: Version 10.2.0.3.0 - Production
系统参数文件为D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
写入D:\oracle\product\10.2.0\db_1\network\log\listener_demo.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=scott-PC)(PORT=1522)))
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=scott-PC)(PORT=1522)))
LISTENER 的 STATUS
------------------------
别名 LISTENER_DEMO
版本 TNSLSNR for 32-bit Windows: Version 10.2.0.3.0 - Produ
ction
启动日期 13-9月 -2010 23:35:14
正常运行时间 0 天 0 小时 0 分 6 秒
跟踪级别 off
安全性 ON: Local OS Authentication
SNMP OFF
监听程序参数文件 D:\oracle\product\10.2.0\db_1\network\admin\listener.o
ra
监听程序日志文件 D:\oracle\product\10.2.0\db_1\network\log\listener_dem
o.log
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=scott-PC)(PORT=1522)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "demo" 包含 1 个例程。
例程 "demo", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
追问
我的Oracle不知道为什么时好时坏呢?  我的Oracle 有一些服务 我都选择了手动开启,然后我当我再开的时候 还是出现这个SID问题?!
网易云信
2023-12-06 广告
UIkit是一套轻量级、模块化且易于使用的开源UI组件库,由YOOtheme团队开发。它提供了丰富的界面元素,包括按钮、表单、表格、对话框、滑块、下拉菜单、选项卡等等,适用于各种类型的网站和应用程序。UIkit还支持响应式设计,可以根据不同... 点击进入详情页
本回答由网易云信提供
zyyyldwxxk
2011-10-29
知道答主
回答量:31
采纳率:0%
帮助的人:15.4万
展开全部
监听配置有问题,需重新配置一个监听
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
包飞风7B
推荐于2016-04-04 · TA获得超过1840个赞
知道小有建树答主
回答量:368
采纳率:100%
帮助的人:215万
展开全部
这个问题其实一目了然,就是监听识别不了tnsnames.ora当中你连接用到的那个tns别名。出现这个问题一般有以下几个原因:
1.其实有一定经验的都会发现,数据库和监听刚刚启动的时候,马上进行连接就会出现这个错误,这是由于进程启动还有一个间隔期,稍微等一会再连接就没有问题了。
2.在命令提示符下执行命令 lsnrctl status 查看监听的状态是否正常。
3.检查数据的sid和监听列出的是否一致。
4.检查listener.ora文件里面的内容是否有误。
以上 可以参考我的博客 http://space.itpub.net/12216142/viewspace-673732 希望可以解决掉你的疑问。
追问
我的Oracle不知道为什么时好时坏呢?  我的Oracle 有一些服务 我都选择了手动开启,然后我当我再开的时候 还是出现这个SID问题?!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-10-27
展开全部
修改 tnsnames.ora

把servername 改成自己配置的。就OK
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式