PHP Doku:: Installation - pdo.installation.html

Verlauf / Chronik / History: (1) anzeigen

Sie sind hier:
Doku-StartseitePHP-HandbuchFunktionsreferenzDatenbankerweiterungenAbstraktionsebenenPHP Data ObjectsInstallation/KonfigurationInstallation

Ein Service von Reinhard Neidl - Webprogrammierung.

Installation/Konfiguration

<<Anforderungen

Laufzeit-Konfiguration>>

Installation

PHP 5.1 und höher auf Unix-Systemen
  1. Wenn Sie ein PHP 5.1-Release verwenden, sind PDO und PDO_SQLITEbereits enthalten. Es wird automatisch angeschaltet, wenn Sie configure ausführen. Es wird empfohlen, PDO als shared module zu kompilieren, da Sie so die durch PECL bereitgestellen Updates nutzen können. Das empfohlene configure-Kommando, um PHP mit PDO zu kompilieren, sollte auch die zlib-Unterstützung (für den PEAR-Installer) aktivieren. Sie müssen eventuell auch den PDO-Treiber für die Datenbank Ihrer Wahl aktivieren. Ziehen Sie die Dokumentation für datenbankspezifische PDO-Treiber zu Rate, um mehr darüber herauszufinden, aber beachten Sie, dass Sie, wenn Sie PDO als Shared Extension bauen, Sie auch die PDO-Treiber als Shared Extensions bauen müssen. Die SQLite-Extension ist abhängig von PDO, das bedeutet, wenn Sie PDO als Shared Extension bauen, benötigt SQLite die gleichen Build-Einstellungen

     ./configure --with-zlib --enable-pdo=shared
    

  2. Nach der Installation von PDO als Shared Module müssen Sie Ihre php.ini-Datei bearbeiten, damit die PDO-Erweiterung automatisch geladen wird, wenn PHP ausgeführt wird. Sie müssen dort auch alle datenbankspezifischen Treiber aktivieren. Versichern Sie sich, dass diese nach der Zeile mit pdo.so stehen, da PDO initialisiert werden muss, bevor die datenbankspezifischen Erweiterungen geladen werden können. Wenn Sie PDO und die datenbankspezifischen Erweiterungen statisch kompiliert haben, können Sie diesen Schritt überspringen.

    extension=pdo.so
    

  3. PDO als Shared Module zu benutzen erlaubt Ihnen, pecl upgrade pdo auszuführen, wenn neue Versionen von PDO veröffentlicht werden, ohne dass Sie PHP komplett neu kompilieren müssen. Beachten Sie, dass Sie in diesem Fall gleichzeitig auch die datenbankspezifischen Treiber aktualisieren müssen.

PHP 5.0 und höher auf Unix-Systemen
  1. PDO ist als PECL-Erweiterung verfügbar auf » http://pecl.php.net/package/pdo. Die Installation kann mit Hilfe des pecl-Tools durchgeführt werden. Dies ist standardmäßig aktiviert, wenn sie PHP konfigurieren. Sie sollten sich vergewissern, dass PHP mit --with-zlib erstellt wurde, damit pecl mit der komprimierten Paketdatei umgehen kann.

  2. Führen Sie den folgenden Befehl aus, um die neueste stabile Version von PDO herunterzuladen, zu kompilieren und zu installieren:

    pecl install pdo
    

  3. Der pecl-Befehl installiert das PDO-Modul automatisch in Ihr PHP-Extensionsverzeichnis. Um die PDO-Erweiterung auf Linux oder Unix-Betriebssystemen zu aktivieren, müssen Sie die folgende Zeile an Ihre php.ini anfügen:

    extension=pdo.so
    

    Für weitere Informationen über das Erstellen von PECL-Paketen lesen Sie am besten das Kapitel PECL-Installation des Handbuchs.

PHP 5.1 und höher unter Windows
  1. PDO und alle gängigen Treiber werden mit PHP als Shared Module mitgeliefert und müssen nur durch Bearbeiten der Datei php.ini aktiviert werden:

    extension=php_pdo.dll
    

  2. Als nächstes wählen Sie die datenbankspezifischen DLL-Dateien und laden sie entweder per dl() zur Laufzeit oder aktivieren sie in der Datei php.ini unterhalb von php_pdo.dll. Zum Beispiel:

    extension=php_pdo.dll
    extension=php_pdo_firebird.dll
    extension=php_pdo_informix.dll
    extension=php_pdo_mssql.dll
    extension=php_pdo_mysql.dll
    extension=php_pdo_oci.dll
    extension=php_pdo_oci8.dll
    extension=php_pdo_odbc.dll
    extension=php_pdo_pgsql.dll
    extension=php_pdo_sqlite.dll
    

    Diese DLLs sollten im extension_dir des Systems vorhanden sein. Beachten Sie bitte, dass PDO_INFORMIX nur als PECL-Erweiterung verfügbar ist.


2 BenutzerBeiträge:
- Beiträge aktualisieren...
gerrywastaken
13.11.2009 21:13
This page states
"You may need to enable the PDO driver for your database of choice; consult the documentation for [database-specific PDO drivers]  to find out more about that."

With the term "database-specific PDO drivers" being a link to this information. However you will no find this information on that or any of the pages that it in turn links to.

The appropriate config options seems to be only available by running ./config --help from the source directory after running autoconf.

Here is the related output from running that command:
=====================
  --with-pdo-dblib[=DIR]    PDO: DBLIB-DB support.  DIR is the FreeTDS home directory
  --with-pdo-firebird[=DIR] PDO: Firebird support.  DIR is the Firebird base
                            install directory [/opt/firebird]
  --with-pdo-mysql[=DIR]    PDO: MySQL support. DIR is the MySQL base directoy
                                 If mysqlnd is passed as DIR, the MySQL native
                                 native driver will be used [/usr/local]
  --with-zlib-dir[=DIR]       PDO_MySQL: Set the path to libz install prefix
  --with-pdo-oci[=DIR]      PDO: Oracle OCI support. DIR defaults to $ORACLE_HOME.
                            Use --with-pdo-oci=instantclient,prefix,version
                            for an Oracle Instant Client SDK.
                            For Linux with 10.2.0.3 RPMs (for example) use:
                            --with-pdo-oci=instantclient,/usr,10.2.0.3
  --with-pdo-odbc=flavour,dir
                            PDO: Support for 'flavour' ODBC driver.
                            include and lib dirs are looked for under 'dir'.
                           
                            'flavour' can be one of:  ibm-db2, iODBC, unixODBC, generic
                            If ',dir' part is omitted, default for the flavour
                            you have selected will used. e.g.:
                           
                              --with-pdo-odbc=unixODBC
                             
                            will check for unixODBC under /usr/local. You may attempt
                            to use an otherwise unsupported driver using the "generic"
                            flavour.  The syntax for generic ODBC support is:
                           
                              --with-pdo-odbc=generic,dir,libname,ldflags,cflags

                            When build as shared the extension filename is always pdo_odbc.so
  --with-pdo-pgsql[=DIR]    PDO: PostgreSQL support.  DIR is the PostgreSQL base
                            install directory or the path to pg_config
  --without-pdo-sqlite[=DIR]
                            PDO: sqlite 3 support.  DIR is the sqlite base
                            install directory [BUNDLED]
=====================

So if you wish for instance to install the PostgreSQL PDO driver, then you should add the --with-pdo-pgsql config option before compiling PHP. I may have made mistakes in my explination, however it appears to work and was my best guess given the absence of the mentioned documentation.
it at lanar dot com dot au
7.06.2009 23:06
To add from windows, simply use add/remove programs to change the PHP installation and select the PDO features required.



PHP Powered Diese Seite bei php.net
The PHP manual text and comments are covered by the Creative Commons Attribution 3.0 License © the PHP Documentation Group - Impressum - mail("TO:Reinhard Neidl",...)