MS có bài hướng dẫn, nhưng thực hiện không thành công, làm xong khi chạy php -v máy báo không load được dynamic extensions là 2 cái mới cài:
sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/7.3/mods-available/sqlsrv.ini
printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/7.3/mods-available/pdo_sqlsrv.ini
exit
sudo phpenmod -v 7.3 sqlsrv pdo_sqlsrv
Hóa ra là do 1 lỗi của PECL, theo đó nó cài đặt nhưng không đưa vào thư mục extension mặc định của nó (mà cài ở đâu không rõ).
Do đó xác định folder extension của PHP ở đâu (trường hợp của mình là /usr/lib/php/20180731/), rồi download trực tiếp từ Github của MS về giải nén ra rồi copy vào thư mục extension trên.
wget https://github.com/microsoft/msphpsql/releases/download/v5.6.1/Ubuntu18-7.3.tar
untar -zvf Ubuntu18-7.3.tar
Vào thư mục này chọn 2 file Non Thread Save, copy và đổi tên thành pdo_sqlsrv.so và sqlsrv.so là xong.