MSSQL Treiber in Plesk centOS 7 nachrüsten

Mit PHP 7 sind einige „Standardtreiber“ rausgefallen die von Haus aus nicht mehr installiert werden. Dazu gehören auch sämtliche Erweiterungen für eine Verbindung mit einem MS-SQL Server. Die fehlen auch in den PHP – Erweiterungen des Plesk, was für die Webhostings gilt.
Und weil ich genau dafür ein Shopware Plugin entwickeln sollte stand ich vor dem Problem. Hier eine kurze Übersicht wie die Treiber im Plesk nachgerüstet werden können.

Da verschlüsselte Shopware Plugins (ionCube) derzeit nur in PHP-Version 7 unterstützt werden, dreht sich dieser Beitrag auch um diese Version. Vorausgesetzt du hast die Version 7.0.x in deinem Plesk installiert.

Ab in die Konsole und zuerst die repo von Microsoft mit den passenden Erweiterungen holen:

curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo

Vorhanden ODBC Treiber, die wahrscheinlich nicht von MS sind entfernen, sonst knallt es:

yum remove unixODBC-utf16 unixODBC-utf16-devel

Nun den Originalen ODBC von Microsoft installieren:

ACCEPT_EULA=Y yum install msodbcsql

Jetzt die Devel + Konfiguration installieren:

yum install unixODBC-devel gcc-c++ gcc plesk-php70-devel autoconf automake

Den ersten pdo_sqlsrv Treiber direkt ins Plesk installieren:

/opt/plesk/php/7.0/bin/pecl install pdo_sqlsrv

Nachdem eine ganze Menge Text durch die Konsole gehuscht ist, legen wir noch die *.ini dazu an, damit Plesk den Treiber auch „kennt“:

/opt/plesk/php/7.0/etc/php.d/pdo_sqlsrv.ini

Genau das gleiche machen wir noch mit dem sqlsrv

/opt/plesk/php/7.0/bin/pecl install sqlsrv

echo "extension=sqlsrv.so" > /opt/plesk/php/7.0/etc/php.d/sqlsrv.ini

Nun sagen wir Plesk noch das er die PHP Konfig neu einlesen soll:

plesk bin php_handler --reread

Meist reicht das aber noch nicht. Ich starte dann immer den Server einmal neu um wirklich alles frisch zu laden. Denn „Nur booten führt zum Guten…

reboot

Das war’s. Die Webspaces vom Plesk verstehen nun auch

new MSSQL_PDO('sqlsrv:Server='...

und sämtliche andere Befehle dieser Kategorie.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

+ 15 = 22