фон
Недавно, потому что проект изучил PHP-интеграцию Oracle, хотя эта комбинация очень замечательная, но в случае использования не копайте ямы.~
Наука об окружающей среде
- CentOS Linux выпуска 7.3.1611 (ядро)
- PHP7.1.1
Установка компонентов Oracle
скачать http://www. oracle .com/technet… oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.об | мин |/oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.об | мин |/PS: Оба должны быть установлены. Версия для разработки-SDK. установить
# rpm -i oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm # rpm -i oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm
Успешная установка приведет к созданию следующих каталогов, 64-разрядная система должна быть мягко подключена к старой версии (в противном случае версия компилятора не поддерживает ошибку, должна быть историческая проблема. Ндфл 1 )
# ln /usr/lib/oracle/12.2 /usr/lib/oracle/10.2.0.1 # ln /usr/include/oracle/12.2 /usr/include/oracle/10.2.0.1
Добавление переменных среды
# vi etc/profile
присоединиться
export ORACLE_HOME=/usr/lib/oracle/11.2/client64/ export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client64:$LD_LIBRARY_PATH export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
Вступают в силу
# source /etc/profile
Скомпилируйте и установите oci8 и pdo_oci
Загрузите последний пакет Oci8-2.1.8.tgz и PDO_OCI-1.0.tgz Скомпилируйте и установите oci8
# tar -zxf oci8-2.1.8.tgz # cd oci8-2.1.8 # phpize # ./configure --with-php-config=/usr/local/php/bin/php-config --with-oci8=shared,instantclient,/usr/lib/oracle/12.2/client64/lib # make # make install
Поколение oci8.so является успешным
Скомпилируйте и установите pdo_oci
# tar -zxf PDO_OCI-1.0.tgz # cd PDO_OCI-1.0 # phpize # ./configure --with-php-config=/usr/local/php/bin/php-config --with-pdo-oci=instantclient,/usr,10.2.0.1 # make # make install
Создание pdo_oci.so является успешным
Откройте расширение PHP
В частности, в зависимости от среды PHP, моей среде не нужно изменять путь к файлу so, просто используйте сгенерированный путь по умолчанию, просто добавьте дополнительные файлы.ini в/usr/local/php/etc/php.d/, перезагрузите для вступления в силу.
Подтверждение действительного статуса
# php -m | grep -e oci8 -e PDO_OCI oci8 PDO_OCI
Быть совершенным
PS Поскольку pdo_oci, загруженный компилятором, установка и загрузка всегда сообщают об ошибках( Pit 2 Поэтому загрузите соответствующую версию PHP (например http://us1.php.net/get/php-7….), чтобы php.net, скопируйте компиляцию и установку pdo_oci в каталог Ext, как указано выше.