CSS for code highlight

29 июля 2022

Установка Oracle InstantClient 11.2 на Linux Mint 18 / Ubuntu 16

Понадобился Oracle InstantClient для скриптов на Python/Perl, да и вообще чтобы был, т.к. со своего ноутбука запускал SQL/PLSQL скрипты в "самосборном lite" клиенте Oracle 9i для Windows через Wine. Извращение подумаете Вы? Но работает! :)

Итак, Oracle 9i поставить на Linux Mint 18 скорее всего уже невозможно (из-за сильной несовместимости библиотек, версии ядра и пр. пр.), да даже честно говоря и не охота пробовать, есть на что время потратить. Максимальная версия клиента Oracle который может работать с сервером Oracle 9i это - версия 11.2, вот ее и будем ставить.

Скачиваем собственно сам клиент и sqlplus с сайта Oracle, файлы:
instantclient-basic-linux.x64-11.2.0.4.0.zip
instantclient-sqlplus-linux.x64-11.2.0.4.0.zip

Ну или ищем в интернете, например есть на github.com/f00b4r/oracle-instantclient

Далее ставим:

## вроде как необходимо установить, у меня уже стояла
sudo apt install libaio1

## создаем директорию и распаковывем в нее instantclient и sqlplus
sudo mkdir -p /opt/oracle
sudo unzip -x instantclient-basic-linux.x64-11.2.0.4.0.zip -d /opt/oracle/  
sudo unzip -x instantclient-sqlplus-linux.x64-11.2.0.4.0.zip -d /opt/oracle/

## копируем свой файл tnsnames.ora в папку instantclient
sudo mkdir -p /opt/oracle/instantclient_11_2/network/admin/
sudo cp tnsnames.ora /opt/oracle/instantclient_11_2/network/admin/

## настраивем переменные окружения
echo export ORACLE_HOME=/opt/oracle/instantclient_11_2 >> ~/.bashrc
echo export LD_LIBRARY_PATH=/opt/oracle/instantclient_11_2 >> ~/.bashrc
echo export PATH=$ORACLE_HOME:$PATH >> ~/.bashrc

source ~/.bashrc

## проверка
sqlplus -S /nolog <<EOF
conn my_schema/my_schema_password@my_ora9tns
select banner from v\$version;
EOF


BANNER
----------------------------------------------------------------
Oracle9i Enterprise Edition Release 9.2.0.7.0 - Production
PL/SQL Release 9.2.0.7.0 - Production
CORE	9.2.0.7.0	Production
TNS for Linux: Version 9.2.0.7.0 - Production
NLSRTL Version 9.2.0.7.0 - Production


PS: Вроде так, восстанавливал ход событий по .bash_history


UPDATE: Иногда для компиляции каких-то программ или пакетов требуются заголовчные файлы, установим InstantClient 11.2 SDK

# Устанавливем InstantClient 11.2 SDK
mkdir /tmp/orasdk && cd $_
wget https://github.com/f00b4r/oracle-instantclient/raw/master/instantclient-sdk-linux.x64-11.2.0.4.0.zip
sudo unzip instantclient-sdk-linux.x64-11.2.0.4.0.zip *include* -d /opt/oracle

# Делаем симлинки на библиотеки
cd $ORACLE_HOME
sudo ln -s libclntsh.so.11.1 libclntsh.so
sudo ln -s libocci.so.11.1 libocci.so

Ссылки:
- Oracle InstantClient

Комментариев нет:

Отправить комментарий

Последнее...

CURL вместо Postman / Swagger