[英]SSRS: Oracle TNS:listener error?
I have a SSRS report which is using Business Object Provider. 我有一个使用Business Object Provider的SSRS报告。 The dll has a connection with Oracle server.
该dll与Oracle服务器连接。 Whenever i run the report i keep on getting this error message:
每当我运行报告时,我都会不断收到此错误消息:
"Oracle.DataAccess.Client.OracleException ORA-12514: TNS:listener does not currently know of service requested in connect descriptor " “ Oracle.DataAccess.Client.OracleException ORA-12514:TNS:listener当前不知道连接描述符中请求的服务”
Anyone knows why? 有人知道为什么吗?
It sounds like you installed the oracle client but have not yet set up your TNS listeners. 听起来您已经安装了oracle客户端,但尚未设置TNS侦听器。
There should be a file called "tnsnames.ora" and inside that file you need to add a new listener. 应该有一个名为“ tnsnames.ora”的文件,并且在该文件中,您需要添加一个新的侦听器。 If it's a windows install there might also be a network configuration GUI.
如果是Windows安装,则可能还会有网络配置GUI。
A general tnsnames.ora entry would look like this if you choose to go that way: 如果选择这种方式,则一般的tnsnames.ora条目将如下所示:
DBAlias =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521))
(CONNECT_DATA = (SERVICE_NAME = YourDBServiceName))
)
Your tnsnames.ora file typically resides in the ORACLE_HOME/network/admin directory. 您的tnsnames.ora文件通常位于ORACLE_HOME / network / admin目录中。
Technically speaking, you're not "creating a listener", rather, you're defining an alias for an Oracle client network connect string, which will refer to a listener somewhere. 从技术上讲,您不是在“创建侦听器”,而是在为Oracle客户端网络连接字符串定义别名,该别名将在某处引用侦听器。
Alternatively, you can specify an EZConnect string, if you don't want to/can't mess with tnsnames.ora entries: 另外,如果您不想/不能弄乱tnsnames.ora条目,则可以指定EZConnect字符串:
"Data Source=//yourserver:1521/yourDB;User ID=theUser;Password=thePW"
You will need an entry in the sqlnet.ora file to the effect of: 您将需要在sqlnet.ora文件中输入以下内容:
NAMES.DIRECTORY_PATH = (TNSNAMES, EZCONNECT)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.