pdo - Centos 8、PHP 7.2 和 MS SQL Server

标签 pdo centos php-7.2 unixodbc centos8

我正计划转向 Centos 8,但似乎我无法使用普通的 Centos 8 软件包与 SQL 服务器建立有效的 PDO 连接。

我已经安装了 unixODBC 包,然后从 PECL sqlsrv 和 sqlsrv_pdo 安装了包,但我不知道如何进行实际连接或 odbc 配置。

由于我要转移到新环境的大部分代码都是使用 PDO 编写的,所以我不想将其更改为 sql server native。

是否有任何分步说明如何在不使用 freetds 的情况下建立与 sql server 的 PDO ODBC 连接,这无法通过 centos 存储库(或 RHEL)获得。

最佳答案

我遇到了同样的问题,我是这样解决的:

sudo dnf install php-pear
sudo dnf install php-devel
sudo dnf install make
sudo pecl install sqlsrv
sudo dnf install unixODBC-devel
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv

然后:

sudo nano /etc/php.d/30-pdo_sqlsrv.ini

在文件30-pdo_sqlsrv.ini中添加:

extension=pdo_sqlsrv.so

然后:

sudo nano /etc/php.d/20-sqlsrv.ini

在文件20-sqlsrv.ini中添加:

extension=sqlsrv.so

https://packages.microsoft.com/rhel/8/prod/ 下载并安装 msodbcsql17-17.4.2.1-1.x86_64.rpm

sudo yum install msodbcsql17-17.4.2.1-1.x86_64.rpm

然后只需要重启php-fpm

sudo systemctl restart php-fpm.service

祝你好运!

关于pdo - Centos 8、PHP 7.2 和 MS SQL Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58181436/

相关文章:

python - 安装 Python 时出错

php - 为什么代码覆盖率报告在 php 7.2 上失败?

php - 如何将 Argon2 算法与 password_hash 一起使用?

php - 0A 在使用 PHP 检索时添加到 BLOB

php - SQL - 改进 JOIN 查询(​​需要很长时间才能加载)

php - 仅更新具有设定值的列

php - 在 PDO SELECT COUNT(*) 类型中使用 fetch() 时出现问题

linux - 如何将rpmbuild默认目录从/root/rpmbuild目录更改为其他目录

python - 在 CentOS 与 python 2.6 上针对 information_schema 执行 "SELECT"语句时,psycopg2 挂起

session - Laravel 6.0写入 session 时出错无法在Windows中打开文件流