为什么打开PLSQL Developer时会报TNS无法监听程序
发布网友
发布时间:2022-05-02 00:00
我来回答
共4个回答
懂视网
时间:2022-05-02 04:21
user account unlock;--解锁
alter user scott identified by 要设置的密码;--设置密码
grant dba to scott;--授予dba权限
select * from session_privs;--查询当前用户权限
方法二:
在安装oracle时,直接对scott用户进行解锁,初始密码为scott
=============================================================================
1.打开PLSQL,点击“取消”-->进入主界面-->工具-->首选项-->Oracle-->连接-->在OCI库处设置OCI目录下的oci.dll即可,如:D:ProgramFilesPLSQLDeveloperinstantclient_12_1oci.dll;
2.重启PLSQL,连接远程数据库;
注:instantclient_12_1文件夹已经放置到PLSQL的根目录下,如果想更换OCI版本,网上下载对应的Oracle Client,替换掉该文件夹即可。
3.破解plsql
a.破解
帮助-->注册-->运行PLSQL Developer10.0.5.1710_keygen.exe -->输入对应的产品编号(product code)、序列号(serial Number)、口令(Password)-->点击“注册”按钮即可。
b.查看是否破解成功
帮助-->关于-->该界面会显示oci.dll文件所在的路径及服务合同到期时间
4.设置选项preferences
方法一:
菜单栏-->Tools-->Preferences
方法二:
工具栏第二行-->点击钳子图标-->进入设置选项
5.更改字体大小
设置-->User Interface-->Fonts-->Editor-->select-->更改字体样式为:Consolas,粗体,小三
6.关闭保存sql语句时的自动备份功能
设置-->Files--Backup-->Disabled
7.关闭自动更新
Preferences-->Other-->Update&News-->都选择Never(disabled)
8.取消记住密码(出于安全考虑,网络攻击)
Preferences-->Oracle-->Logon History-->取消勾选 Store with password
9.设置plsql窗口列表保持
在window(窗口)菜单中有个 save layout (保存版面)项,设置好窗口布局后,选一下此项就保存你当前的窗口布局了,下次启动就不用再设置了
UpdateTime--2017年3月15日08:49:36
10.工具栏管理
方法一:
在功能栏右键-->customize(定制)-->Toolbars选择要显示在功能栏的里的功能;
commands项-->以将大小写转换添加到功能栏为例-->Edit-->分别将Uppercase和Lowercase拖拽到功能栏即可,将不需要的功能拖拽到任一位置(出现叉号均可),就能将其删除
方法二:(推荐使用)
工具-->首选项-->用户界面-->工具栏-->在可用按钮列表中,分别双击"选择大写"、"选择小写"、"首选项"-->右侧"已选按钮"就会新增这三个按钮
拖动功能按钮,还可以调整顺序
11.修改该软件的功能快捷键
预设条目 中文解释 快捷键配置
Edit/Undo 撤销 ctrl+z
Edit/Redo 恢复上一步 ctrl+shift+Z
Edit/PL/SQL Beautifier 格式化 ctrl+shift+F
Edit/Selection/indent 向后缩进 tab
Edit/Selection/Unindent 向前缩进 shift+tab
Edit/Selection/Uppercase 全部变为大写 ctrl+shift+X
Edit/Selection/Lowercase 全部变为小写 ctrl+shift+Y
Edit/Selection/Comment 添加注释 ctrl+shift+/
Edit/Selection/Uncomment 取消注释 ctrl+/
Edit/Find Next 向下查找相同的单词 ctrl+K
Editor:Word Left 光标移至单词左边 ctrl+left(方向键左键)
Editor:Word Right 光标移至单词右边边 ctrl+right(方向键右键)
Editor:Navigate Back 切换至上一个窗口 alt+left
Editor:Navigate Forward 切换至下一个窗口 alt+right
Editor:AutoReplace 指定词汇替换 alt+/
12.配置sql快捷键
a.将shortcuts.txt文件拷贝到PLSQLDeveloperPlugIns文件夹下
b.设置-->User Interface-->Editor-->AutoReplace-->选中Enabled-->导入shortcuts所在的路径即可
二、plsql连接数据库
CreateTime--2016年10月31日14:44:41
(一)PLSQL连接数据库
192.168.0.6:1521/orcl(注意:端口号和数据库实例之间用的是"/")
构成:域名+":"+数据库端口号+"/"+数据库实例名称
UpdateTime--2017年3月15日11:34:36
(二)plsql连接远程数据库
方法一:
在本地也安装Oracle,或者安装类似oracle develop 10g开发套件
方法二:使用OCI(推荐使用)
本机不需要安装Oracle,就可以实现远程连接Oracle数据库
ORACLE调用接口(Oracle Call Interface简称OCI)提供了一组可对ORACLE数据库进行存取的接口函数,通过在第三代程序设计语言中进行调用可达到存取ORACLE数据库的目的。
1.将instantclient_12_1(Oracle client) 文件夹拷贝到plsql的根目录下,如:D:ProgramFilesPLSQLDeveloperinstantclient_12_1;
2.打开PLSQL,点击“取消”-->进入主界面-->工具-->首选项-->Oracle-->连接-->在OCI库处设置OCI目录下的oci.dll即可,如:D:ProgramFilesPLSQLDeveloperinstantclient_12_1oci.dll;
3.重启PLSQL即可。
SettingsPLSQLDeveloper
标签:replace auto 用户 lower reference 转换 scott 大写 语言
热心网友
时间:2022-05-02 01:29
1、检查listener.log日志
发现下面错误:
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Proction on 20-9月 -2008 10:25:26
Copyright (c) 1991, 2005, Oracle. All rights reserved.
系统参数文件为D:/oracle/proct/10.2.0/db_1/network/admin/listener.ora
写入D:/oracle/proct/10.2.0/db_1/network/log/listener.log的日志信息
写入D:/oracle/proct/10.2.0/db_1/network/trace/listener.trc的跟踪信息
跟踪级别当前为0
以 pid=1704 开始
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/EXTPROC1ipc)))
监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=0.5.0.5)(PORT=1521)))
TNS-12545: 因目标主机或对象不存在, 连接失败
TNS-12560: TNS: 协议适配器错误
TNS-00515: 因目标主机或对象不存在, 连接失败
32-bit Windows Error: 49: Unknown error
不再监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/EXTPROC1ipc)))
2、查看Oracle的listener是否启动
C:/Documents and Settings/mengzhaoliang>lsnrctl status
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Proction on 20-9月 -2008 10:5
0:44
Copyright (c) 1991, 2005, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
TNS-12541: TNS: 无监听程序
TNS-12560: TNS: 协议适配器错误
TNS-00511: 无监听程序
32-bit Windows Error: 2: No such file or directory
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=0.5.0.5)(PORT=1521)))
TNS-12535: TNS: 操作超时
TNS-12560: TNS: 协议适配器错误
TNS-00505: 操作超时
32-bit Windows Error: 60: Unknown error
原来没有启动listener,用“lsnrctl start”命令也不能启动。
C:/Documents and Settings/mengzhaoliang>lsnrctl start
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Proction on 20-9月 -2008 10:5
2:16
Copyright (c) 1991, 2005, Oracle. All rights reserved.
启动tnslsnr: 请稍候...
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Proction
系统参数文件为D:/oracle/proct/10.2.0/db_1/network/admin/listener.ora
写入D:/oracle/proct/10.2.0/db_1/network/log/listener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/EXTPROC1ipc)))
监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=0.5.0.5)(PORT=1521))
)
TNS-12545: 因目标主机或对象不存在, 连接失败
TNS-12560: TNS: 协议适配器错误
TNS-00515: 因目标主机或对象不存在, 连接失败
32-bit Windows Error: 49: Unknown error
监听程序未能启动。请参阅上面的错误消息...
3、查看listener.ora的内容:
# listener.ora Network Configuration File: D:/oracle/proct/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:/oracle/proct/10.2.0/db_1)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 0.5.0.5)(PORT = 1521))
)
)
原来本机的ip发生改变后,就出现了上述问题,改变数据库的监听ip地址:
把(ADDRESS = (PROTOCOL = TCP)(HOST = 0.5.0.5)(PORT = 1521))
改成
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
127.0.0.1:也就是目前数据库正在用的ip地址。
4、再次启动oracle的listener
C:/Documents and Settings/mengzhaoliang>lsnrctl start
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Proction on 20-9月 -2008 10:5
4:40
Copyright (c) 1991, 2005, Oracle. All rights reserved.
启动tnslsnr: 请稍候...
TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Proction
系统参数文件为D:/oracle/proct/10.2.0/db_1/network/admin/listener.ora
写入D:/oracle/proct/10.2.0/db_1/network/log/listener.log的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/EXTPROC1ipc)))
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Pro
ction
启动日期 20-9月 -2008 10:54:41
正常运行时间 0 天 0 小时 0 分 1 秒
跟踪级别 off
安全性 ON: Local OS Authentication
SNMP OFF
监听程序参数文件 D:/oracle/proct/10.2.0/db_1/network/admin/listener.o
ra
监听程序日志文件 D:/oracle/proct/10.2.0/db_1/network/log/listener.log
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
启动已经成功,
5.再tnsnames.ora上添加上
ORCL_127.0.0.1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
6、再次用PL/SQL Developer再次连接数据库
出现下面错误:
TNS-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
再次检查listener.log日志
20-9月 -2008 11:01:54 * (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)(CID=
(PROGRAM=D:/plsql/plsqldev.exe)(HOST=RUIFEI-EF0ADC98)(USER=mengzhaoliang))) * (ADDRESS=
(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1267)) * establish * orcl * 12514
TNS-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
查看listener:
C:/Documents and Settings/mengzhaoliang>lsnrctl services
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Proction on 20-9月 -2008 11:1
1:09
Copyright (c) 1991, 2005, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
处理程序:
"DEDICATED" 已建立:0 已被拒绝:0
LOCAL SERVER
命令执行成功
7、用sqlplus也出现同样错误:
C:/Documents and Settings/mengzhaoliang>sqlplusscott/mzl@ORCL_127.0.0.1
SQL*Plus: Release 10.2.0.1.0 - Proction on 星期六 9月 20 11:15:09 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
ERROR:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
8、查看listenser状态:
C:/Documents and Settings/mengzhaoliang>lsnrctl status
LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Proction on 20-9月 -2008 11:2
6:42
Copyright (c) 1991, 2005, Oracle. All rights reserved.
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
LISTENER 的 STATUS
------------------------
别名 LISTENER
版本 TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Pro
ction
启动日期 20-9月 -2008 11:24:33
正常运行时间 0 天 0 小时 2 分 8 秒
跟踪级别 off
安全性 ON: Local OS Authentication
SNMP OFF
监听程序参数文件 D:/oracle/proct/10.2.0/db_1/network/admin/listener.o
ra
监听程序日志文件 D:/oracle/proct/10.2.0/db_1/network/log/listener.log
监听端点概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
C:/Documents and Settings/mengzhaoliang>tnsping orcl
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Proction on 20-9月 -
2008 11:27:43
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的参数文件:
D:/oracle/proct/10.2.0/db_1/network/admin/sqlnet.ora
TNS-03505: 无法解析名称
9、查看sqlnet.ora内容:
# sqlnet.ora Network Configuration File: D:/oracle/proct/10.2.0/db_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.
# This file is actually generated by netca. But if customers choose to
# install "Software Only", this file wont exist and without the native
# authentication, they will not be able to connect to the database on NT.
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
10.把listener.ora的内容:
# listener.ora Network Configuration File: D:/oracle/proct/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:/oracle/proct/10.2.0/db_1)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
)
改成下面的内容:
# listener.ora Network Configuration File: D:/oracle/proct/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = orcl)
(ORACLE_HOME = D:/oracle/proct/10.2.0/db_1)
# (PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = orcl))
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
)
11、然后关闭、再启动listener
在cmd中执行“lsnrctl stop” 和“lsnrctl stop”命令,再次登陆正常!
C:/Documents and Settings/mengzhaoliang>sqlplus scott/mzl@orcl
SQL*Plus: Release 10.2.0.1.0 - Proction on 星期六 9月 20 11:55:47 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Proction
With the Partitioning, OLAP and Data Mining options
SQL>
再次用PL/SQL Peveloper登陆就没有问题了。
完毕!
通过以上步骤我的问题还没解决,然后重启了一下OracleOraDb10g_home1TNSListener服务就行了
热心网友
时间:2022-05-02 02:47
检查listener.log日志
20-9月 -2008 11:01:54 * (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)(CID=
(PROGRAM=D:/plsql/plsqldev.exe)(HOST=RUIFEI-EF0ADC98)(USER=mengzhaoliang))) * (ADDRESS=
(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1267)) * establish * orcl * 12514
TNS-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
查看listener:
C:/Documents and Settings/mengzhaoliang>lsnrctl services
热心网友
时间:2022-05-02 04:22
oracle数据库没有开启监听服务。。。