January 11, 2021
Установка OCI8 + pdo_oci8 в Ubuntu 20.04 (Это драйвер для работы с Oracle для PHP)
Пошаговая инструкция. В этой статье я устанавливаю instantclient 21.1, если будете ставить другую версию - ссылки надо будет скорректировать.
Что нужно откорректировать - начинается на [!]
Страница на сайте Oracle: https://www.oracle.com/database/technologies/instant-client/downloads.html
Входим на сервер как sudo, далее делаем следующее:
cd /opt
mkdir oracle
cd oracle
[!] wget https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-basiclite-linux.x64-21.1.0.0.0.zip
[!] wget https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-sdk-linux.x64-21.1.0.0.0.zip
[!] unzip instantclient-basiclite-linux.x64-21.1.0.0.0.zip
[!] unzip instantclient-sdk-linux.x64-21.1.0.0.0.zip
apt install libaio1
sh -c "echo /opt/oracle/instantclient_21_1 > \ /etc/ld.so.conf.d/oracle-instantclient.conf" ldconfig - чтобы после установки oci8 видел библиотеки
apt install php-dev -y
pecl install oci8-2.2.0
pecl install oci8
В процессе установки он спросит путь до instanclient, вписываем:
[!] Вписать: instantclient,/opt/oracle/instantclient_21_1
cd ~
wget http://be.php.net/distributions/php-7.4.3.tar.gz
Если версия PHP не 7.4.3, то замените в ссылке на вашу версию
tar -xf php-7.4.3.tar.gz
cd php-7.4.3/ext/pdo_oci
phpize
[!] ./configure --with-pdo-oci=instantclient,/opt/oracle/instantclient_21_1
make
make install
nano /etc/php/7.4/apache2/php.ini
extension=oci8.so extension=pdo_oci.so
nano /etc/php/7.4/cli/php.ini
extension=oci8.so extension=pdo_oci.so