Instalando PDO SQL Server em Máquinas com cPanel em VPS/Cloud ou dedicados

De Wiki Integrator do Brasil
Edição feita às 19h31min de 28 de agosto de 2018 por Integratorhost (disc | contribs)

(dif) ← Edição anterior | ver versão atual (dif) | Versão posterior → (dif)
Ir para: navegação, pesquisa
Banner-wiki-promocoes.gif





Índice

Antes de começar

Os passos informados exigem que haja seu acesso root ( via acesso SSH ) e que tenha o cPanel com EasyApache4. Se você possui cPanel na Integrator e máquinas Cloud/VPS, peça suporte a nossa equipe para realizar estes passos.

Para compilar o EasyApache4 para trabalhar com o PHP

O EasyApache 4 é a versão mais atual de máquinas recentes. Porém, se a sua máquina é de antes de Julho/2016, é possível que esteja com uma versão anterior. Se sua máquina é anterior a esta data, possivelmente está na versão do EasyApache 3. Neste caso, peça ajuda ao suporte da Integrator para verificar e realizar a mudança, caso ainda não o tenha feito.


As versões do EasyApache4 para trabalhar com o PHP

O EasyApache 4 possui várias versões, especificamente da 5.4 até a 7.2 ( o mais atual na criação deste artigo). O caminho onde fica cada executável é :

 /opt/cpanel/ea-phpX/root/usr/bin/

Onde o X é a versão: 54, 55, 56, 70, 71, 72.


Baixando e instalando o driver ODBC do SQL Server

Como é usado o CentOS na execução do cPanel, temos duas versões: CentOS 6 e CentOS 7.

Baixando a versão do CentOS 6

No terminal SSH, execute este comando:

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

Baixando a versão do CentOS 7

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

Instalando o Driver ODBC

Execute os comandos abaixo na sequência informada. Aceite quaisquer informações que aparecer na tela com a letra Y ou S, dependendo se estiver em inglês ou português o seu SO:

ACCEPT_EULA=Y yum -y install msodbcsql17
# optional: for bcp and sqlcmd
ACCEPT_EULA=Y yum -y install mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
yum install unixODBC-devel


Compilando o driver PDO do SQL Server

Siga os passos abaixo compreendendo que há diferenças entre versões. O PDO somente pode ser instalado da versão 7.x em diante.
1. Baixe o PDO, onde XX é a versão que deve ser substituída por 70, 71 ou 72:

/opt/cpanel/ea-phpXX/root/usr/bin/pecl download sqlsrv
/opt/cpanel/ea-phpXX/root/usr/bin/pecl download pdo_sqlsrv

Por exemplo, se for baixar para a versão 72 do PHP, seria:

/opt/cpanel/ea-php72/root/usr/bin/pecl download sqlsrv
/opt/cpanel/ea-php72/root/usr/bin/pecl download pdo_sqlsrv

2. Digamos que baixou a versão 5.3.0, a mais atual no momento deste artigo. Descompacte:

tar xvzf sqlsrv-5.3.0.tgz
tar xvzf pdo_sqlsrv-5.3.0.tgz

Compilando o PDO

3. Entre no diretório descompactado:

cd pdo_sqlsrv-5.3.0/

4. Configure seguindo a regra de versão que deve ser substituída por 70, 71 ou 72:

/opt/cpanel/ea-phpXX/root/usr/bin/phpize 
./configure --with-php-config=/opt/cpanel/ea-phpXX/root/usr/bin/php-config

Compilando o SQLSRV

3.1. Entre no diretório descompactado:

cd sqlsrv-5.3.0/

4.1. Configure seguindo a regra de versão que deve ser substituída por 70, 71 ou 72:

/opt/cpanel/ea-phpXX/root/usr/bin/phpize 
./configure --with-php-config=/opt/cpanel/ea-phpXX/root/usr/bin/php-config

Nos passos 1 e 4, cabe novamente a observação da versão. O EasyApache 4 possui várias versões do PHP e cada qual em um caminho de seus executáveis:

  • PHP 7.0:
/opt/cpanel/ea-php70/root/usr/bin/phpize
/opt/cpanel/ea-php70/root/usr/bin/php-config
/opt/cpanel/ea-php70/root/usr/bin/pecl
  • PHP 7.1:
/opt/cpanel/ea-php71/root/usr/bin/phpize
/opt/cpanel/ea-php71/root/usr/bin/php-config

/opt/cpanel/ea-php71/root/usr/bin/pecl

  • PHP 7.2:
/opt/cpanel/ea-php72/root/usr/bin/phpize
/opt/cpanel/ea-php72/root/usr/bin/php-config
/opt/cpanel/ea-php72/root/usr/bin/pecl


5. Compile cada um que foi baixado:

make

Instalando e Configurando

6. Para instalar, faça o comando:

make install

Observe que o módulo é instalado no caminho destinado a versão que compilou. Por exemplo, se foi na versão 72 do PHP, teremos no terminal o resultado:

Installing shared extensions:     /opt/cpanel/ea-php72/root/usr/lib64/php/modules/


7. Configure o PHP.INI. Por exemplo, se estiver usando a versão 72, seria:

echo "extension=pdo_sqlsrv.so" >>  /opt/cpanel/ea-php72/root/etc/php.d/pdo_sqlsrv.ini
echo "extension=sqlsrv.so" >>  /opt/cpanel/ea-php72/root/etc/php.d/sqlsrv.ini

Lembrando que cada versão deve ter a compilação realizada novamente, caso queira em todas as versões disponíveis.

  • PHP 7.0:
/opt/cpanel/ea-php70/root/usr/lib64/php/modules/
/opt/cpanel/ea-php70/root/etc/php.d/pdo_sqlsrv.ini
/opt/cpanel/ea-php70/root/etc/php.d/sqlsrv.ini
  • PHP 7.1:
/opt/cpanel/ea-php71/root/usr/lib64/php/modules/
/opt/cpanel/ea-php71/root/etc/php.d/pdo_sqlsrv.ini
/opt/cpanel/ea-php71/root/etc/php.d/sqlsrv.ini
  • PHP 7.2:
/opt/cpanel/ea-php72/root/usr/lib64/php/modules/
/opt/cpanel/ea-php72/root/etc/php.d/pdo_sqlsrv.ini
/opt/cpanel/ea-php72/root/etc/php.d/sqlsrv.ini


8. Reinicie o Apache:

/scripts/restartsrv_apache

9. Teste a compilação após o término, onde XX deve ser substituído por 70, 71 ou 72:

/opt/cpanel/ea-phpXX/root/usr/bin/php -m |grep sqlsrv


Fontes

Sites da Microsoft:
Instalando PDO
Driver JDBC


IMPORTANTE: Este tutorial não possui suporte da Integrator para uso de serviços SQL Server e programação de uso do mesmo em PHP. O SQL Server não faz parte do portfólio oficial da hospedagem e quaisquer perguntas a respeito de seu uso serão ignorados.