mirror of
https://github.com/php/doc-de.git
synced 2026-03-24 15:22:14 +01:00
179 lines
5.5 KiB
XML
179 lines
5.5 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: f88b2cc042d1045e9b106e43bf882df781ad8687 Maintainer: samesch Status: ready -->
|
|
<!-- Reviewed: no -->
|
|
|
|
<chapter xml:id="mysql-xdevapi.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
&reftitle.setup;
|
|
|
|
<section xml:id="mysql-xdevapi.requirements">
|
|
&reftitle.required;
|
|
<para>
|
|
Für diese Erweiterung wird ein MySQL 8+-Server benötigt, auf dem das
|
|
X-Plugin aktiviert ist (Standard).
|
|
</para>
|
|
<para>
|
|
Folgende Bibliotheken werden benötigt, um diese Erweiterung zu kompilieren:
|
|
Boost (1.53.0 oder höher), OpenSSL und Protobuf.
|
|
</para>
|
|
|
|
</section>
|
|
|
|
<section xml:id="mysql-xdevapi.installation">
|
|
&reftitle.install;
|
|
|
|
<para>
|
|
&pecl.moved;
|
|
</para>
|
|
|
|
<para>
|
|
Ein Beispiel für die Installation auf Ubuntu 18.04 mit PHP 7.2:
|
|
</para>
|
|
<programlisting>
|
|
<![CDATA[
|
|
// Abhängigkeiten
|
|
$ apt install build-essential libprotobuf-dev libboost-dev openssl protobuf-compiler liblz4-tool zstd
|
|
|
|
// PHP mit den gewünschten Erweiterungen; php7.2-dev wird zum Kompilieren benötigt
|
|
$ apt install php7.2-cli php7.2-dev php7.2-mysql php7.2-pdo php7.2-xml
|
|
|
|
// Kompilieren der Erweiterung
|
|
$ pecl install mysql_xdevapi
|
|
]]>
|
|
</programlisting>
|
|
|
|
<para>
|
|
Der Befehl <literal>pecl install</literal> aktiviert keine
|
|
PHP-Erweiterungen (standardmäßig). Die Aktivierung kann auf verschiedene
|
|
Arten erfolgen. Hier ein weiteres Beispiel für PHP 7.2 auf Ubuntu 18.04:
|
|
</para>
|
|
|
|
<programlisting>
|
|
<![CDATA[
|
|
// Eine eigene ini-Datei erstellen
|
|
$ echo "extension=mysql_xdevapi.so" > /etc/php/7.2/mods-available/mysql_xdevapi.ini
|
|
|
|
// Den Befehl 'phpenmod' verwenden (Achtung: ist Debian/Ubuntu-spezifisch)
|
|
$ phpenmod -v 7.2 -s ALL mysql_xdevapi
|
|
|
|
// Alternativ zu 'phpenmod' kann der Symlink auch manuell gesetzt werden
|
|
// $ ln -s /etc/php/7.2/mods-available/mysql_xdevapi.ini /etc/php/7.2/cli/conf.d/20-mysql_xdevapi.ini
|
|
|
|
// Schauen wir uns an, welche MySQL-Erweiterungen nun aktiviert sind
|
|
$ php -m |grep mysql
|
|
|
|
mysql_xdevapi
|
|
mysqli
|
|
mysqlnd
|
|
pdo_mysql
|
|
]]>
|
|
</programlisting>
|
|
|
|
<para>
|
|
&pecl.info;
|
|
<link xlink:href="&url.pecl.package;mysql_xdevapi">&url.pecl.package;mysql_xdevapi</link>.
|
|
</para>
|
|
</section>
|
|
|
|
<!-- {{{ Configuration -->
|
|
&reference.mysql-xdevapi.ini;
|
|
<!-- }}} -->
|
|
|
|
<section xml:id="mysql-xdevapi.build">
|
|
<title>Erstellen/Kompilieren aus dem Quellcode</title>
|
|
<para>
|
|
Hinweise zum Kompilieren dieser Erweiterung aus dem Quellcode:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
Der Name der Erweiterung ist 'mysql_xdevapi', also muss
|
|
<literal>--enable-mysql-xdevapi</literal> verwendet werden.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Boost: erforderlich; verwenden Sie wahlweise die Konfigurationsoption
|
|
--with-boost=DIR oder setzen Sie die Umgebungsvariable
|
|
MYSQL_XDEVAPI_BOOST_ROOT. Benötigt werden nur die Boost-Header-Dateien,
|
|
nicht die Binärdateien.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Google Protocol Buffers (protobuf): erforderlich; verwenden Sie die
|
|
Konfigurationsoption --with-protobuf=DIR oder setzen Sie die
|
|
Umgebungsvariable MYSQL_XDEVAPI_PROTOBUF_ROOT.
|
|
</para>
|
|
<para>
|
|
Verwenden Sie optional <literal>make protobufs</literal>, um die
|
|
Protobuf-Dateien (*.pb.cc/.h) zu erstellen, und <literal>make
|
|
clean-protobufs</literal>, um die erstellten Protobuf-Dateien zu löschen.
|
|
</para>
|
|
<para>
|
|
Windows-spezifischer protobuf-Hinweis: Je nach Umgebung kann die
|
|
statische Bibliothek mit einer Multi-Threaded-DLL-Laufzeit erforderlich
|
|
sein. Zur Vorbereitung verwenden Sie die folgenden Optionen:
|
|
<emphasis>-Dprotobuf_MSVC_STATIC_RUNTIME=OFF
|
|
-Dprotobuf_BUILD_SHARED_LIBS=OFF</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Google Protocol Buffers / Protocol-Compiler (protoc): erforderlich;
|
|
stellen Sie sicher, dass während des Erstellens das korrekte 'protoc' in
|
|
PATH vorhanden ist. Dies ist besonders wichtig, weil Windows PHP SDK
|
|
Batch-Skripte die Umgebung überschreiben können.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Bison: erforderlich und im PATH vorhanden.
|
|
</para>
|
|
<para>
|
|
Windows-spezifischer Bison Hinweis: Wir empfehlen dringend, dass das mit
|
|
dem verwendeten PHP SDK gelieferte Bison verwendet wird, da andernfalls
|
|
ein Fehler ähnlich wie "zend_globals_macros.h(39): error C2375:
|
|
'zendparse': redefinition; different linkage
|
|
Zend/zend_language_parser.h(214): note: see declaration of 'zendparse'"
|
|
die Folge sein kann. Außerdem können Windows PHP SDK Batch-Skripte die
|
|
Umgebung überschreiben.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Windows-spezifische Hinweise: Um die Umgebung vorzubereiten, siehe die
|
|
offizielle Windows-Build-Dokumentation für
|
|
<link xlink:href="&url.php.win.build2;">das aktuelle SDK</link>.
|
|
</para>
|
|
<para>
|
|
Wir empfehlen, bei allen Pfaden den Backslash '\\' anstelle eines
|
|
Schrägstrichs '/' zu verwenden.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</section>
|
|
</chapter>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|