Ответ 1
Есть несколько файлов, доступных для загрузки. Из перечисленных вами файлов вы только загрузили и распакули пакет "basic".
Чтобы запустить CLI (по которому я предполагаю, что вы имеете в виду SQL * Plus), вам также нужен этот пакет - четвертый в списке под названием "Instant Client Package - SQL * Plus: дополнительные библиотеки и исполняемый файл для запуска SQL * Plus с Instant Client".
Пакеты организованы таким образом, что если вы распакуете все те, которые вам нужны, с одного места, все они помещают свои файлы в один каталог. К сожалению, это не совсем сработает, если вы используете Safari и имеете возможность открывать определенные загруженные файлы; каждый zip файл расширяется в отдельную папку с увеличенными именами. И после этого он удаляет zip файлы.
Вы можете отключить автоматическую распаковку и сделать это вручную или скопировать файлы из отдельных папок в общий.
Возможно, вам также понадобится создать символическую ссылку для основной клиентской библиотеки; изнутри этой папки (в терминале) вы бы сделали:
ln -s libclntsh.dylib.12.1 libclntsh.dylib
Вы можете поместить эту комбинированную папку в любом месте. Затем вам нужно добавить полный путь к этой папке в переменную PATH и среды - вы можете добавить это в свой .bash_profile, чтобы вам не нужно было делать это вручную.
Как только вы это сделаете, вы можете выполнить sqlplus
из любого места.
Итак, суммируем:
-
Если вы используете Safari, отключите автоматическое открытие zip файлов; из Safari- > Preferences- > General отключите флажок "Открывать" безопасные "файлы после загрузки".
-
Загрузить instantclient-basic-macos.x64-12.1.0.2.0.zip и instantclient-sqlplus-macos.x64- 12.1.0.2.0.zip
-
В терминале перейдите в каталог "Загрузки".
-
Разархивируйте оба файла:
MacBook:Downloads alex$ unzip instantclient-basic-macos.x64-12.1.0.2.0.zip Archive: instantclient-basic-macos.x64-12.1.0.2.0.zip inflating: instantclient_12_1/BASIC_README inflating: instantclient_12_1/adrci inflating: instantclient_12_1/genezi inflating: instantclient_12_1/libclntsh.dylib.12.1 inflating: instantclient_12_1/libclntshcore.dylib.12.1 inflating: instantclient_12_1/libnnz12.dylib inflating: instantclient_12_1/libocci.dylib.12.1 inflating: instantclient_12_1/libociei.dylib inflating: instantclient_12_1/libocijdbc12.dylib inflating: instantclient_12_1/libons.dylib inflating: instantclient_12_1/liboramysql12.dylib inflating: instantclient_12_1/ojdbc6.jar inflating: instantclient_12_1/ojdbc7.jar inflating: instantclient_12_1/uidrvci inflating: instantclient_12_1/xstreams.jar MacBook:Downloads alex$ unzip instantclient-sqlplus-macos.x64-12.1.0.2.0.zip Archive: instantclient-sqlplus-macos.x64-12.1.0.2.0.zip inflating: instantclient_12_1/SQLPLUS_README inflating: instantclient_12_1/glogin.sql inflating: instantclient_12_1/libsqlplus.dylib inflating: instantclient_12_1/libsqlplusic.dylib inflating: instantclient_12_1/sqlplus
-
При необходимости переименуйте и/или переместите каталог
instantclient_12_1
куда-то более постоянным. -
Добавьте местоположение в свой путь в текущем сеансе, а также в файл/файл профиля оболочки, чтобы он вступил в силу для каждого входа:
export PATH=$HOME/Downloads/instantclient_12_1:$PATH
-
Enjoy.
MacBook:Downloads alex$ export PATH=$HOME/Downloads/instantclient_12_1:$PATH MacBook:Downloads alex$ which sqlplus /Users/alex/Downloads/instantclient_12_1/sqlplus MacBook:Downloads alex$ sqlplus SQL*Plus: Release 12.1.0.2.0 Production on Thu Jun 9 16:29:49 2016 Copyright (c) 1982, 2016, Oracle. All rights reserved. Enter user-name:
El Capitan добавила защиту целостности системы (SIP), и один из побочных эффектов заключается в том, что экспорт DYLD_LIBRARY_PATH не работает. Это может повлиять на запуск SQL * Plus из оболочки script, например. обходные пути для мгновенного клиента 11g. Замечания по установке в нижней части страницы загрузки изменились с тех пор, как я последний раз это сделал, и теперь он говорит, что жестко связывает файлы библиотеки с пользовательским каталогом ~/lib
, чтобы избежать этой проблемы. К счастью, похоже, что вам не нужно беспокоиться об этом с клиентом 12c - они исправили способ его создания.