;中国 COLD FUSION 用户组; WWW.CFWINDOW.COM 
您的位置 :首页 >> CF 技巧文章 >> 阅读文章内容 [ 关闭窗口 ]      

技巧文章内容 
    解决ColdFusion在Solaris平台下建立数据源/数据库连接问题
文章作者 : Linkfoxo [ linkfoxo@yahoo.com ]          Web URL : http://chinacoldfusion.126.com
上载日期 : 2000-11-20

用户在ColdFusion Administrator中验证数据源是否正确连接时经常遇到问题,本文将为你提供一些数据库连接方面的技巧。

连接数据库

ColdFusion Server可以通过ODBC以及大型数据库的native driver(只有企业版有此功能)和任何类型的数据库通信。

ODBC

ColdFusion Server可以和任何带有 ODBC3.0 兼容驱动程序的数据库进行通信。ColdFusion使用微软的ODBC子系统并和微软公司ODBC驱动程序包一起销售,所包括的驱动程序适用于(Microsoft Access, Microsoft SQL Server, Paradox, 等数据库)。 Allaire公司自己并不开发ODBC驱动。一些第三方厂商如Merant/Intersolv、 OpenLink Software等也开发ODBC数据库驱动。

Native Database Driver

Coldfusion Server企业版可以和Sybase 11, Oracle7.3/8.*、Informix 7.3以及DB2使用Native Drivers进行通信。


--------------------------------------------------------------------------------

配置数据源

ODBC
如果你的数据库属于微软公司产品,如Access, Microsoft SQL Server, Paradox, dBASE, FoxPro, Visual FoxPro, Excel 或 文本格式, 你可以在ColdFusion Administrator中建立数据源定义。如果是其他类型数据库,你就必须获得相应的ODBC驱动并根据ODBC驱动程序文档建立一个连接。(通常这项工作需要编辑odbc.ini文件)。

Native Database source
使用下面两个步骤可以配置Native Data Sources:

在你的机器上安装该数据库的客户端软件,一般客户端软件和数据库都放在同一张光盘中。在进行下面的步骤之前,你应该安装、配置数据库,并可以通过客户端软件和数据库进行连接。
在ColdFusion Administrator中设置数据源。

--------------------------------------------------------------------------------

当数据源连接失败的时候

在某些情况下,ColdFusion Administrator中会发生数据源连接失败,甚至报错。你可以试试以下步骤确认数据源是否连接成功。

确认你已经在ColdFusion Administrator中设置了数据库的连接。检查下列选项:
服务器名称/主机字符串或连接数据库文件的路径
ColdFusion认证数据库使使用的用户名及密码。必须在ColdFusion上进行合法的数据库登录。在每个数据源定义界面上你点击CF setting按钮,可以看到底部的username/password。
升级ODBC驱动程序。你应该坚持使用由原数据库厂商提供的ODBC驱动。在升级ODBC驱动之后,应重新启动机器并重新检查DSN定义。以下是下载最常用数据库ODBC驱动程序的URL列表,如果你使用的数据库未排列在下表中,请和你的数据库厂商联系。
确认你已经正确定义了指向数据库客户端软件的路径,该软件应该在 /opt/coldfusion/bin/start 脚本下的LD_LIBRARY_PATH中。
在本地机器中将运行ColdFusion services的nobody 帐号(默认)改到root。该工作需要编辑the /opt/coldfusion/bin/start脚本程序。打开这个脚本程序,将CFUSER=nobody改为CFUSER=root并重启ColdFusion服务。如果问题解决,说明你的Unix box下有某些安全问题。检查下列项目:
确认nobody 用户已被分配了一个有效的shell。
确认nobody用户已经和包含ColdFusion以及安装了数据库客户端软件的目录建立了连接。

--------------------------------------------------------------------------------

如果以上步骤均不奏效,可以建立一个包含CFQUERY的简单.cfm模板查询你的数据源,将该文件保存在web root下并在浏览器中运行。假如你建立了一个名为testdatasource的数据源,该数据源中包含名为testtable的表格,你可以建立如下cfm文件:

<cfquery name="testquery" datasource="testdatasource">

select * from testtable
</cfquery>
你还可以在CFQUERY 标识中包含一个用户名和密码,看该查询是否运行。没有错误信息返回,数据源就是在正常工作,你应该可以继续使用该数据源。如果查询报出错误信息,就需要联系其他ColdFusion技术资源进行进一步检查。







< 联系我们 --- 中国Cold Fusion用户组>

CFUG 国内(总部):Linkfoxo    上海:CFANS    北京:Cafe,Cyberkid,liwater    沈阳:Wangking
  
哈尔滨:Baiming    浙江:梅盛松    江西:陈末
  
CFUG (国际) Nagoya(名古屋):Codeguru    新加坡:YUZI    新西兰(Auckland):Richard CHEN
Copyright 2000-2001 www.cfwindow.com.All rights reserved

;中国 COLD FUSION 用户组; WWW.CFWINDOW.COM