繁体   English   中英

安装了 PDO 但没有 dblib

[英]PDO installed but no dblib

root@YYDream:/etc/apache2# dpkg -l |grep php5
ii  libapache2-mod-php5               5.3.10-1ubuntu3.8                   server-side, HTML-embedded scripting language (Apache 2 module)
ii  php5                              5.3.10-1ubuntu3.8                   server-side, HTML-embedded scripting language (metapackage)
ii  php5-cgi                          5.3.10-1ubuntu3.8                   server-side, HTML-embedded scripting language (CGI binary)
ii  php5-cli                          5.3.10-1ubuntu3.8                   command-line interpreter for the php5 scripting language
ii  php5-common                       5.3.10-1ubuntu3.8                   Common files for packages built from the php5 source
ii  php5-curl                         5.3.10-1ubuntu3.8                   CURL module for php5
ii  php5-dev                          5.3.10-1ubuntu3.8                   Files for PHP5 module development
ii  php5-gd                           5.3.10-1ubuntu3.8                   GD module for php5
ii  php5-mysql                        5.3.10-1ubuntu3.8                   MySQL module for php5
ii  php5-odbc                         5.3.10-1ubuntu3.8                   ODBC module for php5
ii  php5-sqlite                       5.3.10-1ubuntu3.8                   SQLite module for php5
ii  php5-sybase                       5.3.10-1ubuntu3.8                   Sybase / MS SQL Server module for php5

我在服务器上安装这些软件包。 和我的电脑上相同的包。 但是经过我的测试,我得到了下面的信息。

PDO drivers dblib, mysql, odbc, sqlite # this info in phpinfo() on my pc

PDO drivers mysql #this info in phpinfo() on my server

好吧,我想我为这两台机器安装了相同的包。 但是为什么我在我的服务器上丢失了 dblib? 我错过了一些重要的包裹吗?

这适用于 Ubuntu 12.04 LTS:

sudo apt-get install php5-odbc php5-sybase tdsodbc

php5-sybase会给你dblibtdsodbc会给你FreeTDSphp5-odbc会给你ODBC 这些可能需要其他软件包,因此当您运行上述命令时,只需接受apt建议的任何内容。

检查是否安装了freetds-bin和/或freetds-bin:i386包。

这在 Ubuntu 18.04 上对我有用。 https://zoomadmin.com/HowToInstall/UbuntuPackage/php7.2-pdo-dblib

如果您有多个 PHP 版本,您可以使用以下命令在终端中检查您当前的 PHP 版本:

php --ini

sudo apt-get update -y
sudo apt-get install -y php7.0-pdo-dblib
sudo apt-get install -y php7.2-pdo-dblib
sudo apt-get install -y php7.3-pdo-dblib

不要忘记重启apache

sudo service apache2 restart

对于 sqlsrv 驱动程序,请阅读此文档: https ://docs.microsoft.com/en-us/sql/connect/php/installation-tutorial-linux-mac?view=sql-server-ver15

如果你使用的是 php5.6,那么你可以试试这个:

sudo apt-get install php5-sybase php5-odbc freetds-common

参考: https : //www.php.net/manual/en/ref.pdo-dblib.php

注意:确保 PHP 的 cli 版本和 PHP 的浏览器版本相同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM