php centos選擇sqlserver的驅動和擴展選擇版本的說明
2023年2月23日13:41:48
首先是php php擴展 驅動 數據庫的關系

PHP和odbc的關系

PHP和PHP擴展的關系

操作系統和odbc的關系

PHP擴展 pdo_sqlsrv和sqlsrv的版本,查看Changelog確定PHP和PHP擴展 哪個版本合適

舉個例子:
php版本是7.2 系統是centos7.9
數據庫 SQL Server on Linux 2017
先確定php擴展的版本在 https://pecl.php.net/package-changelog.php?package=pdo_sqlsrv&release=5.11.0beta1
查看可以使用版本大概是5.2到5.8
https://learn.microsoft.com/zh-cn/sql/connect/php/system-requirements-for-the-php-sql-driver?view=sql-server-2017
odbc驅動 確定為 ODBC Driver 17
centos7.x也支持 17.x的odbc驅動
那么安裝就可以選擇 pdo_sqlsrv sqlsrv 為5.6或者5.8 驅動為ODBC Driver 17,剩下安裝就簡單了
./pecl install sqlsrv-5.6.0 --with-php-config=/www/server/php/72/bin/php-config
./pecl install pdo_sqlsrv-5.6.0 --with-php-config=/www/server/php/72/bin/php-config
sudo su
#Download appropriate package for the OS version
#Choose only ONE of the following, corresponding to your OS version
#RHEL 7 and Oracle Linux 7
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo
#RHEL 8 and Oracle Linux 8
curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/mssql-release.repo
#RHEL 9
curl https://packages.microsoft.com/config/rhel/9.0/prod.repo > /etc/yum.repos.d/mssql-release.repo
exit
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel #to avoid conflicts
sudo ACCEPT_EULA=Y yum install -y msodbcsql17
# optional: for bcp and sqlcmd
sudo ACCEPT_EULA=Y yum install -y mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
# optional: for unixODBC development headers
sudo yum install -y unixODBC-devel
注意:使用寶塔這種類似的自動化的安裝,可能會造成問題,建議自己編譯安裝,因為寶塔會造成多版本的glibc等底層包,可能會出現問題,
QQ一群 247823727
QQ二群 166427999
如果項目有技術瓶頸問題,請聯系↓↓
QQ: 903464207
微信: zx903464207
QQ二群 166427999
如果項目有技術瓶頸問題,請聯系↓↓
QQ: 903464207
微信: zx903464207
浙公網安備 33010602011771號