Bài toán đặt ra yêu cầu phải cài đặt ứng dụng web php (laravel) và kết nối với CSDL Microsoft SQL Server trên CentOS 7. Bắt buộc chúng ta phải cài đặt
Microsoft Drivers PHP cho SQL Server trên CentOS 7 để có thể kết nối laravel với SQL Server.
Microsoft Drivers PHP cho SQL Server trên CentOS 7
Bước 1: Cài đặt PHP
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm
subscription-manager repos --enable=rhel-7-server-optional-rpms
yum install yum-utils
yum-config-manager --enable remi-php74
yum update
yum install php php-pdo php-xml php-pear php-devel re2c gcc-c++ gcc
Có thể cài đặt bổ sung ext php cho laravel
yum --enablerepo=remi-php73 install -y php php-common php-fpm php-mcript php-mbstring php-xml php-curl php-gd php-opcache php-zlib php-zip php-pdo php-json php-imap php-pecl-memcache php-bcmath php-pgsql php-process
Thay đổi remi-php73 bằng phiên bản php bạn mong muốn
Bước 2: Cài đặt ODBC driver
sudo su
#Download appropriate package for the OS version
#Choose only ONE of the following, corresponding to your OS version
#RedHat Enterprise Server 6
curl https://packages.microsoft.com/config/rhel/6/prod.repo > /etc/yum.repos.d/mssql-release.repo
#RedHat Enterprise Server 7
curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssql-release.repo
#RedHat Enterprise Server 8 and Oracle Linux 8
curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/mssql-release.repo
exit
sudo yum remove unixODBC-utf16 unixODBC-utf16-devel #to avoid conflicts
sudo ACCEPT_EULA=Y yum install msodbcsql17
# optional: for bcp and sqlcmd
sudo ACCEPT_EULA=Y yum install mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
# optional: for unixODBC development headers
sudo yum install unixODBC-devel
Bước 3: Cài PHP drivers cho Microsoft SQL Server
Cách 1:
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
echo extension=pdo_sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/30-pdo_sqlsrv.ini
echo extension=sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/20-sqlsrv.ini
exit
Cách 2: (khuyên dùng)
sudo yum install php-sqlsrv
Bước 4: Cài đặt web server và triển khai ứng dụng web php
Đến bước này bạn cài đặt web server theo nhu cầu của bạn, apache, nginx, litespeed đều có thể được. Kết nối laravel php với CSDL Microsoft SQL Server trên
Linux