如何在 Ubuntu 19 中安装 PHP SQL Server 驱动程序?

如何在 Ubuntu 19 中安装 PHP SQL Server 驱动程序?

我已按照教程中的说明在 Linux 上进行安装,但不幸的是,Ubuntu 19.04 的存储库中没有 Unix ODBC 依赖项。

https://docs.microsoft.com/en-us/sql/connect/php/installation-tutorial-linux-mac?view=sql-server-2017

我甚至设法用 PECL 编译驱动程序并将其加载到我的 PHP cli 和 Apache 中(但问题不在于 Apache 或 LAMP 堆栈,而是关于 PHP 驱动程序),但却一直告诉我有关 ODBC 驱动程序的信息。

我没有尝试安装 SQL Server 本身,只是尝试安装能够连接到由 Azure 管理的数据库的 PHP 的本机和 PDO 驱动程序。我对 LAMP 堆栈不感兴趣,因为我不需要 MySQL 或 Apache,目前我正在尝试进行功能自动化测试,并将部署到生产环境。

答案1

微软文档中还有另一篇文章,名为在 Linux 和 macOS 上安装 Microsoft ODBC Driver for SQL Server。我认为那里提到的步骤正是您正在寻找的。

对于 Ubuntu 19.04,他们仅提供适用于 SQL Server 的 Microsoft ODBC 驱动程序 17,以下是相关部分:

本文介绍如何在 Linux 和 macOS 上安装 Microsoft ODBC Driver for SQL Server,以及可选的 SQL Server 命令行工具 (bcp 和 sqlcmd) 和 unixODBC 开发标头。

重要的:如果您安装了短暂可用的 v17msodbcsql软件包,则应在安装该 msodbcsql17软件包之前将其删除。这样可以避免冲突。该msodbcsql17 软件包可以与 v13 软件包并排安装msodbcsql

Ubuntu

sudo su 
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -

#Ubuntu 19.04
curl https://packages.microsoft.com/config/ubuntu/19.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
# optional: for bcp and sqlcmd
sudo ACCEPT_EULA=Y apt-get install mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
# optional: for unixODBC development headers
sudo apt-get install unixodbc-dev

笔记

  • Ubuntu 18.04 支持需要驱动程序版本 17.2 或更高版本。
  • Ubuntu 18.10 支持需要驱动程序版本 17.3 或更高版本。

相关内容