June 13, 2021

Установка MSSQL драйвера для PHP8 в Ubuntu 20.04 LTS

Все действия выполняются из под пользователя sudo.

Установка PHP8

Если PHP8 еще не установлен, вот надо его поставить:

apt install software-properties-common
add-apt-repository ppa:ondrej/php -y
apt update
apt install php8.0-common
apt install php8.0-cli
apt install -y php8.0 php8.0-dba php8.0-gnupg php8.0-lz4 php8.0-oauth php8.0-readline php8.0-sybase php8.0-yaml php8.0-amqp php8.0-decimal php8.0-grpc php8.0-mailparse php8.0-odbc php8.0-redis php8.0-tidy php8.0-zip php8.0-apcu php8.0-dev php8.0-http php8.0-maxminddb php8.0-opcache php8.0-rrd php8.0-uuid php8.0-zmq php8.0-ast php8.0-ds php8.0-igbinary php8.0-mbstring php8.0-pcov php8.0-smbclient php8.0-vips php8.0-zstd php8.0-bcmath php8.0-enchant php8.0-mcrypt php8.0-pgsql php8.0-snmp php8.0-bz2 php8.0-fpm php8.0-imap php8.0-memcache php8.0-phpdbg php8.0-soap php8.0-xhprof php8.0-cgi php8.0-gd php8.0-inotify php8.0-memcached php8.0-protobuf php8.0-solr php8.0-xml php8.0-cli php8.0-gearman php8.0-interbase php8.0-pspell php8.0-sqlite3 php8.0-xmlrpc php8.0-common php8.0-gmagick php8.0-intl php8.0-msgpack php8.0-psr php8.0-ssh2 php8.0-xsl php8.0-curl php8.0-gmp php8.0-ldap php8.0-mysql php8.0-raphf php8.0-swoole

Установка ODBC драйвера

Прежде чем ставить драйвер для PHP, сначала в систему ставим ODBC

curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list > /etc/apt/sources.list.d/mssql-release.list
apt-get update
ACCEPT_EULA=Y apt-get install -y msodbcsql17

Устанавливаем sqlsrv и php_mssql

pecl install sqlsrv
pecl install pdo_sqlsrv
printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.0/mods-available/sqlsrv.ini
printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.0/mods-available/pdo_sqlsrv.ini
phpenmod -v 8.0 sqlsrv pdo_sqlsrv