Instalando PDO SQL Server em Máquinas com cPanel em VPS/Cloud ou dedicados
Í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.