社区
基础和管理
帖子详情
更改主机名后,连接Oracle实例出现Ora-12154:TNS错误
myh0523
2007-07-31 10:31:04
我在本件创建了数据库实例。更改了主机名后出现了“ORA-12154: TNS: 无法解析指定的连接标识符”错误。检查了tnsnames.ora文件,也尝试对其修改。可依然不能解决。请各位大哥指教如何解决
...全文
946
23
打赏
收藏
更改主机名后,连接Oracle实例出现Ora-12154:TNS错误
我在本件创建了数据库实例。更改了主机名后出现了“ORA-12154: TNS: 无法解析指定的连接标识符”错误。检查了tnsnames.ora文件,也尝试对其修改。可依然不能解决。请各位大哥指教如何解决
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
centos2
2010-03-10
打赏
举报
回复
修改成IP就可以了。
popfei3707
2010-03-09
打赏
举报
回复
tnsname
listener
sqlnet
这三个文件只要涉及到计算机名的全改成你现在在的计算机名,或IP
w7210982
2010-03-08
打赏
举报
回复
直接用IP地址,就不会有这个问题了
cosio
2010-03-08
打赏
举报
回复
1.TNS里的主机名改为本机IP
2.重新运行NET confirgue assistant!
iqlife
2010-03-08
打赏
举报
回复
把TNS里的主机名改为本机IP
inthirties
2010-03-08
打赏
举报
回复
实例起来了没有呀。先检查一下实例的状况。这里listener已经是OK了,看是否是实力和tnsname的配置问题了。
子忆
2010-03-08
打赏
举报
回复
# tnsnames.ora Network Configuration File: F:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =
192.168.2.81
(本机IP地址))(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
goodliangji
2010-03-08
打赏
举报
回复
学习,留下爪印。。。。。。。。。。。
duqiangcise
2010-03-06
打赏
举报
回复
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =
127.0.0.1
)(PORT = 1521))
)
)
修改后再重启数据库监听程序。
lsnrctl start;
duqiangcise
2010-03-06
打赏
举报
回复
我修改计算机的名称后也遇到过你说的情况。但我修改了目录:G:\oracle\product\10.1.0\db_1\NETWORK\ADMIN下的tnsname.ora和listener.ora中和计算机名称相关的地方后就正常了(我的oracle软件是安装在g盘下的)。
修改方式见下面红色字体:
1.tnsname.ora文件
# tnsnames.ora Network Configuration File: G:\oracle\product\10.1.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
ORCLU =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =
127.0.0.1
)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
2.listener.ora文件
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = G:\oracle\product\10.1.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(SID_NAME = orclu)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
)
2004kingbear
2010-03-06
打赏
举报
回复
重新设置,换个IP试试
「已注销」
2010-03-05
打赏
举报
回复
刚遇到这问题,谢谢!
Amin01
2007-08-02
打赏
举报
回复
把配置中的主机名改成本机ip,应该可以解决
myh0523
2007-07-31
打赏
举报
回复
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
)
GENERATED BY ORACLE CONFIGURATION TOOLS. = Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = FHWL-MYH)(PORT = 1521))
)
)
这是我listener.ora中的配置。“FHWL-MYH”是更改后的主机名
wangzk0206
2007-07-31
打赏
举报
回复
1:看TNSNAME
2:看LISTENER
myh0523
2007-07-31
打赏
举报
回复
我访问的就是我本机的数据库实例,应该不需要配置tnsnames.ora也行的.我也尝试对tnsnames.ora中的配置修改了.还是不行.
hongqi162
2007-07-31
打赏
举报
回复
估计还是你的tnsnames.ora配置的不对
wangzk0206
2007-07-31
打赏
举报
回复
换成IP地址试下
yangming1223
2007-07-31
打赏
举报
回复
“FHWL-MYH”中的“-”可能会导致出错!
系统支持,但Oracle不一定支持!
如果是本机又不想改主机名可以用“127.0.0.1”比较方便!
wangshi013
2007-07-31
打赏
举报
回复
love_2008(找DBA方面的工作中) 正解
TNSNAME 和 LISTENER 里面的host都修改成修改后的主机名应该可以的
加载更多回复(2)
Ora
cle
客户端
连接
Ora
cle
服务器.docx
本章主要讲解
ora
cle
客户端
连接
ora
cle
效劳器,主要有以下内容: 1.配置本地net效劳名配置 2.用sqlplus
连接
; 3.用toad
连接
; 一、配置本地net效劳名 首先说明我们的效劳器的IP为60.220.246.53,
ora
cle
的SID为czdb。 翻开配置本地net效劳名向导如下列图: 点击进入Net Configuration Assistant,
出现
如下列图所示:
Ora
cle
客户端
连接
Ora
cle
服务器全文共9页,当前为第1页。
Ora
cle
客户端
连接
Ora
cle
服务器全文共9页,当前为第1页。 选择默认的添加,然后下一步,如下列图:
Ora
cle
客户端
连接
Ora
cle
服务器全文共9页,当前为第2页。输入效劳名(效劳名其实就是
ora
cle
的SID)czdb,然后点击下一步:
Ora
cle
客户端
连接
Ora
cle
服务器全文共9页,当前为第2页。 选择默认TCP,然后选择下一步:
Ora
cle
客户端
连接
Ora
cle
服务器全文共9页,当前为第3页。输入
主机名
〔即
ora
cle
效劳器主机IP〕60.220.246.53,然后进入下一步:
Ora
cle
客户端
连接
Ora
cle
服务器全文共9页,当前为第3页。 然后选择 ,进入下一步: 里面的详细信息说的是密码不对,说明是
连接
到了效劳器,我们只要改一下用户名和密码就可以了,然后点击
更改
登录: OK,测试成功; 另说明:查询本用户下的所有表的信息叫数据字典: user_tables;DBA_users; 两类数据字典表 dba一般是system用户 查表的信息从数据字典里查如:select table_name from user_tables; dual是名义表,不存任何东西.
Ora
cle
客户端
连接
Ora
cle
服务 全文共9页,当前为第4页。
Ora
cle
客户端
连接
Ora
cle
服务 全文共9页,当前为第4页。
Ora
cle
远程
连接
数据库总结
Ora
cle
代码 : orCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = .xx.xx)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) orCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.xx.xx)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) 主要的参数为HOST、PORT、SERVICE_NAME 可能的问题: *
连接
超时:很大可能性是windows自带的防火墙开着,屏蔽了1521端口
Ora
cle
远程
连接
数据库总结 注:本文讲述了
ora
cle
数据库
实例
连接
的配置过程,三个重要的配置文件位于C:\
ora
cle
\product\10.1.0\Db_1\NETWORK\ADMIN目录下 1. sqlplus sys/
ora
cle
@orcl sqlnet.
ora
文件格式NAMES.DIRECTORY_PATH= (
TNS
NAMES,HOSTNAME)。客户端就会首先在
tns
names.
ora
文件中找orcl的记录。如果没有相应的记录那么尝试把orcl当作一个
主机名
,通过网络的途径去解析它的ip地址然后去
连接
这个ip上GLOBAL_DBNAME=orcl这个
实例
。
Ora
cle
客户端
连接
Ora
cle
服务器全文共9页,当前为第5页。这个文件类似于unix 的hosts文件,提供的
tns
name到
主机名
或者ip的对应,只有当sqlnet.
ora
中类似NAMES.DIRECTORY_PATH= (
TNS
NAMES) 这样,也就是客户端解析
连接
字符串的顺序中有
TNS
NAMES时,才会尝试使用这个文件。 #你所要
连接
的时候输入得
TNS
NAME,如果listner启动失败尝试改IP地址
ora
10gcsdl1 =
Ora
cle
客户端
连接
Ora
cle
服务器全文共9页,当前为第5页。 (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME =
ora
10gcsdl1) ) ) ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = IBM-66336DAFE8F .ibm )(PORT = 1521)) (CONNECT_DATA = (SERVE
本机不安装
ORA
CLE
直接
连接
服务器上的
ORA
CLE
机不安装
Ora
cle
客户端,使用PL/SQL Developer
连接
远程数据库 1、先到
Ora
cle
网站下载Instant Client : http://www.
ora
cle
.com/technology/global/cn/software/tech/oci/instantclient/index.html 根据你的操作系统选择不同的Instant Client版本 下载会是一个压缩文件,解压之后的文件夹叫:D:/instantclient_11_2.放在你喜欢的目录即可.例如:D:/instantclient_11_2 2、在D:/instantclient_11_2目录下新建目录network,在network目录下再新建admin目录,在admin目录下新建文件
tns
names.
ora
,使用文本编辑器打开写入如下内容: ORCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58 )(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = ORCL ) ) ) 第一个黄色字块:表示定义远程服务器的在本地
主机名
第二个黄色字块:远程数据库的IP地址 第三个黄色子块:远程数据库
实例
名 3、添加一个环境变量,名为
TNS
_ADMIN,值为
tns
names.
ora
文件所在路径。比如我的本机为:D:/instantclient_11_2/network/admin 4、设置
ORA
CLE
的语言,添加环境变量NLS_LANG ,值为: AMERICAN_AMERICA.AL32UTF8 该值可以
连接
到远程数据库中,通过下面的sql语句查询得到: select userenv('language') from dual; 如果该值设置不正确,将导致PL/SQL Developer
连接
数据库后,查看的数据会
出现
乱码。 5、下载并安装PL.SQL.Developer配置应用 配置tools->preferences->connection
Ora
cle
Home D:/instantclient_11_2 OCI library D:/instantclient_11_2/oci.dll 中文的PL/SQL Developer就是 工具-->首选项-->
连接
Ora
cle
主目录 D:/instantclient_11_2 OCI库 D:/instantclient_11_2/oci.dll 6、关闭PL/SQL Developer,重起Developer.
主机名
就会
出现
在PL/SQL Developer的列表里,输入用户名密码,就可以登录远程
ora
cle
11g数据库了。 补充Instant Client 说明
Ora
cle
Instant client 是
ora
cle
提供的简便客户端, 支持多种平台. 可从
ora
cle
网站下载, 下载地址为 http://www.
ora
cle
.com/technology/global/cn/software/tech/oci/instantclient/index.html 包括如下内容: Instant client Package - Basic 运行OCI, OCCI, 和JDBC-OCI应用程序需要的所有文件. Instant client Package - Basic Lite: 只包含英语
错误
信息, 只支持unicode, ascii, 西欧字符集. Instant client Package - JDBC Supplement 为jdbc增加了xa, 国际化和RowSet操作. Instant Client Package - SQL *Plus 包含sqlplus和需要的库文件 Instant client Package - SDK 使用Instant Client开发
Ora
cle
应用程序需要的头文件及示例makefile Instant client package - ODBC 使用odbc时需要的库, 不是所有平台都有. linux平台包含. Basic 和Basic Lite两个中必须选一个, 其他包都是可选的. 我下载 了 Basic, JDBC supplement, SQL *Plus, SDK, ODBC. 解压后放在一个文件夹下, 在这个文件夹下建立文件
tns
names.
ora
, 设置环境变量LD_LIBRARY_PATH和
TNS
Ora
cle
数据库客户端
Ora
cle
数据库客户端 在D:/instantclient_11_2目录下新建目录network,在network目录下再新建admin目录,在admin目录下新建文件
tns
names.
ora
,使用文本编辑器打开写入如下内容: MWDB= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = MWDB) ) ) 2、添加一个环境变量,名为
TNS
_ADMIN,值为
tns
names.
ora
文件所在路径。比如我的本机为:D:/instantclient_11_2/network/admin 3、设置
ORA
CLE
的语言,添加环境变量NLS_LANG ,值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK 第一个黄色字块:表示定义远程服务器的在本地
主机名
第二个黄色字块:远程数据库
实例
名 如果不清楚远程数据库的
ORA
CLE
语言,可以ssh或者telnet到远程机器,在命令界面输入,用命令行
连接
到数据库。 select * from nls_instance_parameters; 查看NLS_LANGUAGE 的值 NLS_LANGUAGE NLS_TERRITORY 4、下载并安装PL.SQL.Developer配置应用 貌似把环境变量Path添加了instantclient就可以了,不需要具体的设置。 配置tools->preferences->connection
Ora
cle
Home D:/instantclient_11_2 OCI library D:/instantclient_11_2/oci.dll 中文的PL/SQL Developer就是 工具–>首选项–>
连接
Ora
cle
主目录 D:/instantclient_11_2 OCI库 D:/instantclient_11_2/oci.dll 5.添加系统属性中的环境变量Path:D:/instantclient_11_2/可以保证在cmd中使用sqlplus链接到远程的
ora
cle
sqlplus TAXYS1_1/TAXYS1_1 @'(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.225)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED) (SERVICE_NAME = ORCL)))’ sqlplus TAXYS1_1/TAXYS1_1@'(description=(address_list=(address=(proto=tcp)(host=192.168.0.225)(port=1521)))(connect_data=(service_name=orcl)))’ sqlplus TAXYS1_1/TAXYS1_1@192.168.0.225:1521/orcl --------------------- 作者:我在爱的国 来源:CSDN 原文:https://blog.csdn.net/magaiou/article/details/80322685 版权声明:本文为博主原创文章,转载请附上博文链接!
instantclient_11_2.rar
instantclient_11_2 和 plsql developer 一起使用,无须安装
ora
cle
客户端,使用方法如下: D:/instantclient_11_2目录下新建目录network,在network目录下再新建目录admin,在admin目录下新建
tns
names.
ora
, 使用文本编辑器输入如下内容: 复制代码 My
Ora
cle
= (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.4)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) 复制代码 修改自己的本地
主机名
和远程数据库
实例
名 3、添加一个环境变量,名为
TNS
_ADMIN,值为
tns
names.
ora
文件所在路径。比如我的本机为:D:/instantclient_11_2/network/admin 4、设置
ORA
CLE
的语言,添加环境变量NLS_LANG ,值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK 5、下载并安装PL.SQL.Developer配置应用 下载地址:PL/SQL Developer 配置tools->preferences->connection
Ora
cle
Home D:/instantclient_11_2 OCI library D:/instantclient_11_2/oci.dll 6、关闭PL/SQL Developer,重起Developer.
主机名
就会
出现
在PL/SQL Developer的列表里,输入用户名密码,就可以登录远程
ora
cle
数据库了
PLSQL+Developer10和instantclient_11_2
在D:/instantclient_11_2目录下新建目录network,在network目录下再新建admin目录,在admin目录下新建文件
tns
names.
ora
,使用文本编辑器打开写入如下内容: MWDB= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = MWDB) ) ) 第一个黄色字块:表示定义远程服务器的在本地
主机名
第二个黄色字块:远程数据库
实例
名 3、添加一个环境变量,名为
TNS
_ADMIN,值为
tns
names.
ora
文件所在路径。比如我的本机为:D:/instantclient_11_2/network/admin 4、设置
ORA
CLE
的语言,添加环境变量NLS_LANG ,值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK 如果不清楚远程数据库的
ORA
CLE
语言,可以ssh或者telnet到远程机器,在命令界面输入,用命令行
连接
到数据库。 select * from nls_instance_parameters; 查看NLS_LANGUAGE 的值 NLS_LANGUAGE NLS_TERRITORY 5、下载并安装PL.SQL.Developer配置应用 配置tools->preferences->connection
Ora
cle
Home D:/instantclient_11_2 OCI library D:/instantclient_11_2/oci.dll 中文的PL/SQL Developer就是 工具-->首选项-->
连接
Ora
cle
主目录 D:/instantclient_11_2 OCI库 D:/instantclient_11_2/oci.dll 6、关闭PL/SQL Developer,重起Developer.
主机名
就会
出现
在PL/SQL Developer的列表里,输入用户名密码,就可以登录远程
ora
cle
11g数据库了。
基础和管理
17,377
社区成员
95,128
社区内容
发帖
与我相关
我的任务
基础和管理
Oracle 基础和管理
复制链接
扫一扫
分享
社区描述
Oracle 基础和管理
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章