【问题标题】:Is Ubuntu 21.04 compatible with PHP sqlsrv driver?Ubuntu 21.04 是否与 PHP sqlsrv 驱动程序兼容?
【发布时间】:2021-09-22 02:20:59
【问题描述】:

我有一个使用 PHP + MS Sql Server 开发的网络系统,我在 Windows 环境下进行维护。但我更喜欢在 Linux 环境下工作,Ubuntu 更准确。

但我找不到安装此数据库驱动程序的方法。我用谷歌搜索,但找不到任何解决方案。有些教程显示了如何在 20.04、18.04 版本中安装,但即使按照字母的步骤,我也无法安装。

一些没用的教程。

有什么建议吗?

【问题讨论】:

  • 你能详细解释一下为什么不能安装吗?您收到错误消息了吗?
  • 您是否尝试过按照他们的指示进行操作?你s/16.04|18.04|20.04|20.10/21.04/他们提到的来源网址了吗?
  • 根据 Microsoft 的文档,它不兼容。 docs.microsoft.com/en-us/sql/connect/php/… 表示“支持 Ubuntu 版本 16.04、18.04 和 20.04。”。

标签: php sql-server ubuntu pdo


【解决方案1】:

至少在今天看来,msodbcsql17 mssql-tools 在 Ubuntu 21.04 存储库中不可用...

$ curl -s https://packages.microsoft.com/config/ubuntu/21.04/prod.list
deb [arch=amd64,armhf,arm64] https://packages.microsoft.com/ubuntu/21.04/prod hirsute main
$ curl -s https://packages.microsoft.com/ubuntu/21.04/prod/dists/hirsute/Contents-amd64.gz | gzip -d | grep -E "msodbcsql|mssql"
# No output.

因此,当您尝试通过apt-get 安装它们时会出现错误:

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

$ sudo bash -c "curl -s https://packages.microsoft.com/config/ubuntu/21.04/prod.list > /etc/apt/sources.list.d/mssql-release.list"

$ sudo apt-get update --yes
# ...

$ sudo ACCEPT_EULA=Y apt-get --verbose-versions --yes install msodbcsql17 mssql-tools
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package msodbcsql17
E: Unable to locate package mssql-tools

【讨论】:

    【解决方案2】:

    更新 我已经编写了一个 bash 脚本来自动安装适用于 Ubuntu 或 Debian 的驱动程序:https://github.com/sfinktah/bash/blob/master/add_sqlsrv_repo_combined.sh

    我无法测试对其他 Linux 供应商的支持,但如果有人想发送 PR,则可以提供此功能。

    原帖

    21.04 驱动程序现已推出。

    按照说明进行

    https://docs.microsoft.com/en-us/sql/connect/php/installation-tutorial-linux-mac?view=sql-server-ver15https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-ver15#ubuntu17

    或如上:

    sudo su
    curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
    
    #Download appropriate package for the OS version
    #Choose only ONE of the following, corresponding to your OS version
    
    # Automatic version selection (does not work for 21.10, but 20.10 or 21.04 are fine)
    curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -r -s)/prod.list > /etc/apt/sources.list.d/mssql-release.list
    
    # Manual specification: Ubuntu 21.04
    curl https://packages.microsoft.com/config/ubuntu/21.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
    
    
    sudo apt-get update
    sudo ACCEPT_EULA=Y apt-get install -y msodbcsql17
    # optional: for bcp and sqlcmd
    sudo ACCEPT_EULA=Y apt-get install -y mssql-tools
    echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
    source ~/.bashrc
    # optional: for unixODBC development headers
    sudo apt-get install -y unixodbc-dev
    

    【讨论】:

      猜你喜欢
      • 2023-02-13
      • 1970-01-01
      • 2017-11-02
      • 2012-07-21
      • 2018-02-22
      • 2015-05-14
      • 2021-04-17
      • 1970-01-01
      • 2019-02-16
      相关资源
      最近更新 更多