![](/img/trans.png)
[英]How to do I connect to a SQL Server instance from PHP 7 on an AWS Amazon Linux EC2 instance?
[英]AWS EC2 linux + PHP + ODBC + Remote MS SQL Server
我正在使用AWS EC2服务器(使用php)开发Web应用程序以访问MS SQL Server数据库。
长期寻找解决方案后,我发现此解决方案可以使用ODBC驱动程序。 很好,开发进行得很顺利,我没有问题可以连接到数据库或保留数据。
但是,当我部署应用程序时,任何操作都会返回此错误:
ERRO:IM001:[unixODBC] [驱动程序管理器]驱动程序不支持此功能
我真的尝试了所有我知道的并且无法解决的问题。
我的EC2配置是:
yum安装unixODBC unixODBC-devel freetds freetds-devel
我的odbc / freetds conf文件是:
/etc/odbc.ini
[TDS_NAME]
Description = decription
Driver = TDS_NAME
Database = MY_DB
Servername = TDS_NAME
UID = VIPS
Port = 1433
TDS_Version= 7.3
/etc/odbcinst.ini
[TDS_NAME]
Description = TDS Connection
Driver64 = /usr/lib64/libtdsodbc.so
Setup64 = /usr/lib64/libtdsS.so
FileUsage = 1
UsageCount = 1
[ODBC]
Trace = yes
TraceFile /tmp/odbc.log
/etc/freetds.conf
[TDS_NAME]
host = MY_HOST
port = MY_PORT
tds version = 7.3
我使用odbc_execute()或odbc_exec()运行查询,并且当我的咨询具有某些参数时发生错误。 我很确定问题不是我的配置文件,因为我可以成功连接到服务器并运行简单的“ SELECT * FROM table”,然后使用isql进行连接,运行任何查询都可以。
有人可以帮助我吗?
OBS:PHP运行版本-PHP 5.6.10
需要考虑的几件事:
您需要使用它来正确选择正确的TDS版本。 您已配置为使用TDS 7.3,这将需要FreeTDS 0.95和SQL Server2008。如果您只是做基本的工作,也许考虑将TDS版本更改为7.2或7.1?
这是FreeTDS中哪个TDS版本支持哪些功能的方便图表:
http://www.freetds.org/userguide/choosingtdsprotocol.htm
祝好运!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.