总之,我需要在 Elastic Beanstalk PHP 实例上更新 unixODBC,最好使用 yum,因为通过 .ebextensions 进行管理非常容易。
- AWS Linux:运行 PHP 7.0 的 64 位 Amazon Linux 2017.03 v2.4.2
- 所需 unixODBC:2.3.1
sudo yum info unixODBC
Installed Packages
Name : unixODBC
Arch : x86_64
Version : 2.2.14
Release : 14.7.amzn1
Size : 1.1 M
Repo : installed
From repo : amzn-main
Summary : A complete ODBC driver manager for Linux
URL : http://www.unixODBC.org/
License : GPLv2+ and LGPLv2+
Description : Install unixODBC if you want to access databases through ODBC.
: You will also need the mysql-connector-odbc package if you want to access
: a MySQL database, and/or the postgresql-odbc package for PostgreSQL.
Available Packages
Name : unixODBC
Arch : i686
Version : 2.2.14
Release : 14.7.amzn1
Size : 460 k
Repo : amzn-main/2017.03
Summary : A complete ODBC driver manager for Linux
URL : http://www.unixODBC.org/
License : GPLv2+ and LGPLv2+
Description : Install unixODBC if you want to access databases through ODBC.
: You will also need the mysql-connector-odbc package if you want to access
: a MySQL database, and/or the postgresql-odbc package for PostgreSQL.
我在 serverfault 上找到了 2 个与此相关的帖子,但它们不再起作用。其中一个建议我禁用 yum 优先级,我照做了,但情况并没有改变。
答案1
v2.3.1unixODBC
可作为unixODBC-utf16
。
以下是具有 sudo 访问权限的用户所执行的 shell 命令:
curl -s https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/msprod.repo
sudo yum update
sudo yum info unixODBC*
sudo yum remove unixODBC*
sudo yum install unixODBC-utf16