Windows 2016 Server上的ColdFusion 2018,当前使用的是Oracle12c。
我的机构计划将Oracle升级到19c,但我在CF文档中找不到有关连接到19c数据库的任何信息。
有人这么做过吗?有什么我应该知道的问题吗?我们的CF安装是最新的。
谢谢,
米歇尔
发布于 2020-10-01 00:13:25
实际上,对于内置的Oracle数据库驱动程序,如果您保留SID为空,并将以下内容添加到您的连接字符串中,则它应该可以工作:
ServiceName=myoracle.service.name;发布于 2020-08-19 04:48:25
在我的工作中,我们切换到Oracle19c,这是一件痛苦的事情,因为每个Oracle数据源都需要重新创建,只是方式不同。如果在您从12c升级到19c的过程中,您的商店从使用SID切换到SERVICE_NAME,则本机Oracle驱动程序将不再工作,因为在创建数据源屏幕上没有SERVICE_NAME条目。相反,您必须使用驱动程序的"Other“创建数据源,然后使用jdbc瘦客户端。以下是您需要插入的值。
首先,您可能需要从Oracle网站下载Oracle瘦驱动程序。我不确定这一点,因为我们有另一个团队来管理服务器。
驱动程序类: oracle.jdbc.OracleDriver
驱动程序名称: ojdbc.jar
JDBC URL:转到您的tnsnames.ora文件,将条目复制并粘贴到CF Admin create datasource屏幕中。但是,您将用jdbc:oracle:thin:@替换DATABASE.WORLD=,并保持条目的其余部分不变。例如,如果您有一个TNS条目,其内容为:
MYDB.WORLD=(DESCRIPTION=(ADDRESS=(COMMUNITY=TCP.WORLD)(PROTOCOL=TCP)(HOST=HOSTNAME)(PORT=2727))(CONNECT_DATA=(SERVICE_NAME=MYDB)))然后,您的JDBC URL将为
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(COMMUNITY=TCP.WORLD)(PROTOCOL=TCP)(HOST=HOSTNAME)(PORT=2727))(CONNECT_DATA=(SERVICE_NAME=MYDB)))最后,您可以访问here获取类似但略有不同的信息。
https://stackoverflow.com/questions/63381505
复制相似问题