Verbindung zu Actian Ingres mit PHP und NGINX
Vor kurzem habe ich auf der Actian Hybrid Data Conference in London darüber gesprochen, wie man Actian Ingres – Actians Kombination aus branchenführenden Transaktions- und Hochgeschwindigkeits-Analysedatenbanken – mit dem Web verbindet. Hier zeigen wir Ihnen, wie Sie dazu einen sehr beliebten Webserver (Reverse-Proxy, Lastenausgleich usw.) unter Linux, nämlich NGINX, einsetzen können. So richten Sie NGINX für den Ingres-ODBC-Treiber und einen generischen Konnektor CentOS ein. Die Anpassung dieser Schritte an andere Linux-Distributionen wie Ubuntu oder SUSE sollte nicht allzu schwierig sein.
Einrichten von PHP mit NGINX
Anleitungen zur Einrichtung von NGINX finden sich an verschiedenen Stellen im Internet. Eine gute Anleitung ist„How To Install the LEMP stack On CentOS 7“. Sie benötigen lediglich NGINX und PHP (MySQL ist nicht erforderlich – stattdessen würden Sie natürlich Actian Ingres verwenden) und zusätzlich muss Ingres installiert sein. Sobald PHP und NGINX vollständig eingerichtet sind, können Sie mit dem nächsten Schritt fortfahren.
Einrichten von Ingres ODBC mit PHP
Damit der Ingres-ODBC-Treiber mit PHP funktioniert, ist ein generisches ODBC-Paket erforderlich. Eine beliebte Wahl ist die Erweiterung „php-odbc “. Diese ist nicht standardmäßig im PHP -Paket enthalten, aber in der Regel in allen gängigen Linux-Distributionen als Zusatzmodul verfügbar und lässt sich leicht installieren. Unter CentOS würden Sie folgenden Befehl ausführen:
yum install php-odbc
Hinweis: Die PHP-Version kann variieren, weshalb sich auch die Namen der Pakete unterscheiden können. So lautet beispielsweise der Name des Pakets für PHP 5.4 „php“, während Sie für PHP 7.0das Paket „php70w“ installieren müssten. Die Namen der zusätzlichen Pakete unterscheiden sich auf die gleiche Weise (z. B. „php-odbc“ gegenüber „php70w-odbc“).
Eine weitere gängige ODBC-PHP-Erweiterung ist PHP Data Objects (PDO).
NGINX-Konfiguration
Wer mit Apache vertraut ist, wird feststellen, dass die Einrichtung von NGINX etwas komplexer ist, da zwei Komponenten miteinander verbunden sein müssen, um PHP für das Web auszuführen. Zum einen ist da die NGINX-Engine, zum anderen wird ein PHP-Prozessmanager benötigt. Aus diesem Grund gibt es zwei Sätze von Einstellungen: einen für den NGINX-Server und einen für php-fpm (PHP-Prozessmanager). Für den Ingres-ODBC-Treiber muss lediglich php-fpm konfiguriert werden.
Wie bereits erwähnt, bezieht sich dieses Beispiel auf CentOS, funktioniert aber bei anderen Distributionen ähnlich, auch wenn sich der Speicherort der Konfigurationsdatei unterscheiden kann. Um diesen herauszufinden, empfehle ich, die Anleitung zur Einrichtung von php-fpm für die gewünschte Distribution zu lesen.
Bearbeiten Sie die PHP-FPM-Konfigurationsdatei (/etc/php-fpm.d/www.conf). Fügen Sie den Wert des Verzeichnisses II_SYSTEM und den Wert der Umgebungsvariablen LD_LIBRARY_PATH als Umgebungsparameter in diese Datei ein, wie im folgenden Beispiel gezeigt.
env[II_SYSTEM] = /opt/Actian/IngresII env[LD_LIBRARY_PATH] = /lib:/usr/lib:/opt/Actian/IngresII/ingres/lib:/opt/Actian/IngresII/ingres/lib/lp32 env[ODBCSYSINI] = /opt/Actian/IngresII/files
Nach diesen Konfigurationsänderungen müsste der php-fpm- Dienst neu gestartet werden.
Weitere Ressourcen
Ausführliche Anleitungen zur Einrichtung von PHP mit dem Ingres-ODBC-Treiber sowie Beispiele finden Sie inder Actian Knowledge Base unter „Ingres ODBC mit PHP“.