mirror of
https://github.com/php/doc-pt_br.git
synced 2026-03-24 07:02:09 +01:00
168 lines
5.6 KiB
XML
168 lines
5.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- EN-Revision: f88b2cc042d1045e9b106e43bf882df781ad8687 Maintainer: leonardolara Status: ready --><!-- CREDITS: leonardolara -->
|
|
|
|
<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>
|
|
Esta extensão requer um Servidor MySQL 8+ com o plugin X
|
|
habilitado (padrão).
|
|
</para>
|
|
<para>
|
|
Bibliotecas que são pré-requisitos para esta extensão:
|
|
Boost (1.53.0 ou superior), OpenSSL e Protobuf.
|
|
</para>
|
|
|
|
</section>
|
|
|
|
<section xml:id="mysql-xdevapi.installation">
|
|
&reftitle.install;
|
|
|
|
<para>
|
|
&pecl.moved;
|
|
</para>
|
|
|
|
<para>
|
|
Um procedimento de exemplo de instalação no Ubuntu 18.04 com PHP 7.2:
|
|
</para>
|
|
<programlisting>
|
|
<![CDATA[
|
|
// Dependências
|
|
$ apt install build-essential libprotobuf-dev libboost-dev openssl protobuf-compiler liblz4-tool zstd
|
|
|
|
// PHP com as extensões desejadas; php7.2-dev é requerido para compilação
|
|
$ apt install php7.2-cli php7.2-dev php7.2-mysql php7.2-pdo php7.2-xml
|
|
|
|
// Compila a extensão
|
|
$ pecl install mysql_xdevapi
|
|
]]>
|
|
</programlisting>
|
|
|
|
<para>
|
|
O comando <literal>pecl install</literal> não habilita as extensões PHP (por padrão)
|
|
e as habilitações de extensões podem ser feitas de várias formas.
|
|
Um outro exemplo do PHP 7.2 no Ubuntu 18.04:
|
|
</para>
|
|
|
|
<programlisting>
|
|
<![CDATA[
|
|
// Cria o seu próprio arquivo ini
|
|
$ echo "extension=mysql_xdevapi.so" > /etc/php/7.2/mods-available/mysql_xdevapi.ini
|
|
|
|
// Usa o comando 'phpenmod' (nota: específico para Debian/Ubuntu)
|
|
$ phpenmod -v 7.2 -s ALL mysql_xdevapi
|
|
|
|
// Uma alternativa ao 'phpenmod' é criar uma ligação simbólica manualmente
|
|
// $ ln -s /etc/php/7.2/mods-available/mysql_xdevapi.ini /etc/php/7.2/cli/conf.d/20-mysql_xdevapi.ini
|
|
|
|
// Vejamos agora que extensões do MySQL estão habilitadas
|
|
$ 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>Construindo / Compilando a Partir da Fonte</title>
|
|
<para>
|
|
Considerations for compiling this extension from source.
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
O nome da extensão é 'mysql_xdevapi', portanto use <literal>--enable-mysql-xdevapi</literal>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Boost: requerido, opcionalmente use a opção de configuração --with-boost=DIR
|
|
ou defina a variável de ambiente MYSQL_XDEVAPI_BOOST_ROOT. Somente os arquivos de cabeçalho
|
|
Boost são necessários, não os binários.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Google Protocol Buffers (protobuf): requerido, opcionalmente use a opção de configuração
|
|
--with-protobuf=DIR ou defina a variável de ambiente MYSQL_XDEVAPI_PROTOBUF_ROOT.
|
|
</para>
|
|
<para>
|
|
Opcionamente, use <literal>make protobufs</literal> para gerar arquivos protobuf (*.pb.cc/.h),
|
|
e <literal>make clean-protobufs</literal> para remover os arquivos protobuf gerados.
|
|
</para>
|
|
<para>
|
|
Nota do protobuf específica para Windows: dependendo do ambiente,
|
|
a biblioteca estática com um DLL multi-thread pode ser necessária.
|
|
Para preparar, use as seguintes opções:
|
|
<emphasis>-Dprotobuf_MSVC_STATIC_RUNTIME=OFF -Dprotobuf_BUILD_SHARED_LIBS=OFF</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Google Protocol Buffers / compilador de protocolo (protoc): requerido, deve-se garantir que
|
|
o 'protoc' apropriado esteja disponível na variável de ambiente PATH durante a construção. É especialmente
|
|
importante porque os scripts em lote do Windows PHP SDK podem sobrescrever o ambiente.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Bison: requerido, e disponível a partir do PATH.
|
|
</para>
|
|
<para>
|
|
Nota do bison específica para o Windows: recomenda-se fortemente o uso do bison fornecido com o
|
|
SDK do PHP escolhido, ou pode resultar em um erro similar a "zend_globals_macros.h(39):
|
|
error C2375: 'zendparse': redefinition; different linkage
|
|
Zend/zend_language_parser.h(214): note: see declaration of 'zendparse'".
|
|
Além disso, os scripts em lote do Windows PHP SDK podem sobrescrever o ambiente.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Notas específicas para Windows: Para preparar o ambiente, consulte a documentação de compilação
|
|
oficial do Windows para
|
|
<link xlink:href="&url.php.win.build2;">o SDK atual</link>.
|
|
</para>
|
|
<para>
|
|
Recomenda-se usar a barra invertida '\\' ao invés da barra normal '/' para todos os caminhos.
|
|
</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
|
|
-->
|