
Instalação da biblioteca de Banco de Dados MS-SQL no PHP com Linux
2023-06-16
Voltar
Para incluir os drivers do MS-SQL no PHP rodando em Linux devemos acessar o repositório no GitHub do projeto.
Para a instalação é necessário primeiramente instalar o driver ODBC para Ubuntu (verificar para outras distribuições).
Instalar os pacotes da Microsoft (veja documentação Install the Microsoft ODBC driver for SQL Server (Linux))
Para a instalação é necessário primeiramente instalar o driver ODBC para Ubuntu (verificar para outras distribuições).
Instalar os pacotes da Microsoft (veja documentação Install the Microsoft ODBC driver for SQL Server (Linux))
$ if ! [[ "18.04 20.04 22.04 22.10" == *"$(lsb_release -rs)"* ]]; $ then $ echo "Ubuntu $(lsb_release -rs) is not currently supported."; $ exit; $ fi $ sudo su $ curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - $ curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list > /etc/apt/sources.list.d/mssql-release.list $ exit $ sudo apt-get update $ sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18 # optional: for bcp and sqlcmd $ sudo ACCEPT_EULA=Y apt-get install -y mssql-tools18 $ echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc $ source ~/.bashrc # optional: for unixODBC development headers $ sudo apt-get install -y unixodbc-dev
Em seguida instalamos os pacotes dos drivers (esses pacotes devem ser instalados com o PECL).
Primeiramente atualizar os protocolos do PECL
Primeiramente atualizar os protocolos do PECL
$ sudo pecl channel-update pecl.php.net
Em seguida podemos instalar os pacotes dos drivers:
$ sudo pecl install sqlsrv $ sudo pecl install pdo_sqlsrv
ou (versão instalada na criação dessa nota)
$ sudo pecl install sqlsrv-5.11.0 $ sudo pecl install pdo_sqlsrv-5.11.0 $ sudo su $ printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini $ printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini $ exit $ sudo phpenmod -v 8.1 sqlsrv pdo_sqlsrv
Fazer isso para todas as versões do PHP desejadas.
Para informações sobre essa instalação consultar a documentação da Microsoft nesse link.
Para testar a conexão do SQLServer verificar essa documentação.
Para comunicação em linha de comando com o DB podemos utilizar o sqlcmd tanto via PowerShell como com o Terminal Linux utilizado.
Linux:
Para testar a conexão do SQLServer verificar essa documentação.
Para comunicação em linha de comando com o DB podemos utilizar o sqlcmd tanto via PowerShell como com o Terminal Linux utilizado.
Linux:
$ sqlcmd -S192.168.0.60 -Usa -Paczf0704 -C -ddbphp7 -Q "SELECT * FROM tb_usuarios"
PowerShell:
C:\> sqlcmd -S 192.168.0.60 -Usa -Paczf0704 -ddbphp7 -Q "SELECT * FROM tb_usuarios"
Veja que quando utilizamos o Linux é necessário a opção -C(trust the server certificate) para indicar que o comando é confiável. Quando utilizamos o numero do IP do servidor no PowerShell devemos colocar um espaço após a opção -S o que não é necessário no Linux.
Obs: Não esquecer de verificar as configurações de acesso via TCP no MS-SQL
Obs: Não esquecer de verificar as configurações de acesso via TCP no MS-SQL