#oracle #oracle11g
#Oracle #oracle11g
Вопрос:
У меня установлен Oracle 11g XE на компьютере A. Я могу подключиться через командную строку sql с помощью команды connect username/password
. Я также могу отправлять инструкции SQL в демонстрационную базу данных: Select * from demo_customers;
База данных запущена на локальном хостинге компьютера A.
Я хочу, чтобы компьютер B подключался к базе данных компьютера A на localhost. Как я могу это сделать?
Ответ №1:
Вам нужно будет запустить утилиту lsnrctl на сервере A, чтобы запустить прослушиватель. Затем вы должны подключиться с компьютера B, используя следующий синтаксис:
sqlplus username/password@hostA:1521 /XE
Информация о порту необязательна, если используется значение по умолчанию 1521.
Документация по конфигурации прослушивателя здесь.
Документация по удаленному подключению здесь.
Ответ №2:
Я устанавливаю сервер Oracle, и он позволяет подключаться с локального компьютера без проблем. Но с другого Maclaptop в моей домашней сети он не может подключиться с помощью Sql Developer или Sql Plus. После проведения некоторых исследований я выяснил, что вам нужно выполнить этот дополнительный шаг:
Используйте Oracle net manager. Выберите прослушиватель. Добавьте IP-адрес (в моем случае это 192.168.1.12) помимо адреса 127.0.0.1 или localhost.
В конечном итоге будет добавлена запись в [OracleHome] product 11.2.0dbhome_1 network admin listener.ora
-
перезапустите службу прослушивания. (примечание: для меня я перезагружаю компьютер один раз, чтобы он заработал)
-
Используйте статус lsnrctl для проверки
Обратите внимание, что отображается дополнительный ХОСТ = 192.168.1.12, и это то, что нужно для обеспечения работы удаленного подключения.C:WindowsSystem32 >статус lsnrctl
LSNRCTL для 64-разрядной версии Windows: версия 11.2.0.1.0 — Выпуск 05 сентября 2015 13:51:43
Авторские права (c) 1991, 2010, Oracle. Все права защищены.
Подключение к (ОПИСАНИЕ =(АДРЕС =(ПРОТОКОЛ = IPC) (КЛЮЧ = EXTPROC1521)))
СТАТУС ПРОСЛУШИВАТЕЛЯ
Прослушиватель ПСЕВДОНИМОВ
Версия TNSLSNR для 64-разрядной Windows: Версия 11.2.0.1.0 —
Дата начала производства 05 сентября 2015 13:45:18
Время безотказной работы 0 дней 0 часов 6 минут. На 24 секунды
отключен уровень трассировки
, включена безопасность: Проверка подлинности локальной ОС,
SNMP отключен,
Файл параметров прослушивателя
D:oracle11gr2product11.2.0dbhome_1networkadmin listener.Файл журнала прослушивателя ora
d:oracle11gr2diagtnslsnreagleiilisteneralertlog.xml
Краткое описание конечных точек прослушивания…
(ОПИСАНИЕ =(АДРЕС=(ПРОТОКОЛ = ipc)(ИМЯ канала =.pipe EXTPROC1521ipc)))
(ОПИСАНИЕ=(АДРЕС=(ПРОТОКОЛ = tcp) (ХОСТ = 127.0.0.1) (ПОРТ = 1521)))
(ОПИСАНИЕ=(АДРЕС =(ПРОТОКОЛ = tcp) (ХОСТ = 192.168.1.12) (ПОРТ = 1521)))
Краткое описание служб…
Служба «CLREEXTPROC» имеет 1 экземпляр (ы).
Экземпляр «CLREEXTPROC», статус НЕИЗВЕСТЕН, имеет 1 обработчик (ы) для этой службы…
Служба «xe» имеет 1 экземпляр (ы).
Экземпляр «xe», состояние ГОТОВНОСТИ, имеет 1 обработчик (ы) для этой службы… Служба «xeXDB» имеет 1 экземпляр (ы).
Экземпляр «xe», состояние ГОТОВНОСТИ, имеет 1 обработчик (ы) для этой службы… Команда успешно завершена -
используйте tnsping для проверки соединения,
пропингуйте IPv4-адрес, а не localhost или 127.0.0.1
C:WindowsSystem32 >tnsping 192.168.1.12
Утилита TNS Ping для 64-разрядной версии Windows: версия 11.2.0.1.0 — Выпуск 05 сентября 2015 14:09:11
Авторское право (c) 1997, 2010, Oracle. Все права защищены.
Используемые файлы параметров:
D:oracle11gr2product 11.2.0dbhome_1networkadminsqlnet.oraИспользовался адаптер EZCONNECT для разрешения псевдонима,
пытающегося связаться (ОПИСАНИЕ =(CONNECT_DATA=(SERVICE_NAME =))(АДРЕС =(ПРОТОКОЛ = TCP) (ХОСТ = 192.168.1.12)(ПОРТ = 1521)))
Нормально (0 мс)
Комментарии:
1. Великолепно и максимально просто.
Ответ №3:
Во-первых, убедитесь, что слушатель на базе сервере (компьютере), который принимает клиентские запросы на подключение работает. Для этого выполните lsnrctl status
команду.
В случае, если вы получите TNS:no listener
сообщение (см. Изображение ниже), это означает, что служба прослушивания не запущена. Чтобы запустить ее, выполните lsnrctl start
команду.
Во-вторых, для работы с базой данных и подключения с удаленных клиентов в список исключений брандмауэра Windows необходимо добавить следующие исполняемые файлы: (см. Изображение)
Oracle_homebinoracle.exe — Исполняемый файл базы данных Oracle
Oracle_homebintnslsnr.exe — Прослушиватель Oracle
Наконец, установите Oracle instant client на клиентском компьютере (компьютер B) и запустите:
sqlplus user/password@computerA:port/XE
Ответ №4:
Это довольно просто на компьютере, вам не нужно ничего делать, просто убедитесь, что обе системы подключены к одной сети, если у нее нет доступа в Интернет (для этого вам нужен статический ip). Хорошо, теперь на компьютере b перейдите в меню Пуск, найдите конфигурацию в папке oracle, нажмите Помощник по настройке сети в этой папке, когда появится окно, выберите параметр конфигурации локальной сети, это должен быть третий вариант.
Теперь нажмите добавить и нажмите далее на следующем экране будет запрошено имя службы здесь вам нужно добавить имя глобальной базы данных oracle для компьютера A (обычно я использую oracle86 для своей установки) теперь нажмите далее на следующем экране выберите протокол, обычно это tcp нажмите далее в поле имя хоста введите имя компьютера A, вы можете найти это в свойствах моего компьютера. Нажмите далее не меняйте порт, пока не измените его на компьютере A нажмите далее и выберите проверить подключение теперь здесь вы можете проверить, работает ваше соединение или нет, если ошибка заключается в неправильном имени пользователя и пароле, затем нажмите кнопку «Учетные данные для входа» и введите правильные имя пользователя и пароль. Если он говорит, что не удается достичь целевого компьютера ot, не найден, вы должны добавить исключение в брандмауэр для порта 1521 или просто отключить брандмауэр на компьютере A.
Ответ №5:
Первый.Необходимо добавить статический IP-адрес для компьютеров A И B. Например, в моем случае Компьютер A (172.20.14.13) и B (172.20.14.78).
Второе.На компьютере A с помощью Net Manager добавьте для прослушивателя новый адрес (172.20.14.13) или вручную добавьте новую запись в listener.ora
# listener.ora Network Configuration File: E:appuserproduct11.2.0dbhome_1NETWORKADMINlistener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = E:appuserproduct11.2.0dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:E:appuserproduct11.2.0dbhome_1binoraclr11.dll")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.14.13)(PORT = 1521))
)
)
ADR_BASE_LISTENER = E:appuser
Третье.
С помощью Net Manager создайте имя службы с IP-адресом компьютера B (172.20.14.78) или вручную добавьте новую запись в tnsnames.ora
# tnsnames.ora Network Configuration File: E:appuserproduct11.2.0dbhome_1NETWORKADMINtnsnames.ora
# Generated by Oracle configuration tools.
ALINADB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = alinadb)
)
)
LISTENER_ALINADB =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
LOCAL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.14.13)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = alinadb)
)
)
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.14.78)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
Четвертое.
На компьютере B (172.20.14.78) установите win64_11gR2_client (например, для меня это 64-разрядная версия Windows 10 Pro)
Пять. Создайте с помощью Net Configuration Assistant прослушиватель (localhost) или вручную добавьте запись в listener.ora
# listener.ora Network Configuration File: F:appalinasoftproduct11.2.0client_1networkadminlistener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = myserver)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = F:appalinasoft
Шесть.
С помощью Net Manager создайте имя службы с IP-адресом компьютера
A (172.20.14.13) или вручную добавьте новую запись в tnsnames.ora.
SERVER-DB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.20.14.13)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = alinadb)
)
)
Семь
(Компьютер A — (172.20.14.13)) для работы с базой данных и подключения с удаленных клиентов в список исключений брандмауэра Windows необходимо добавить следующие исполняемые файлы: (см. Изображение)
Oracle_homebinoracle.exe — Исполняемый файл базы данных Oracle
Oracle_homebintnslsnr.exe — Прослушиватель Oracle
Восемь Разрешают подключения к порту 1158 (компьютер A — (172.20.14.13)) для Oracle Enterprise Manager (https://172.20.14.13:1158/em/console/logon/logon )
Девятое Разрешить подключения к порту 1521 (вход и выход) (компьютер A — (172.20.14.17))
Десятый на компьютере B 172.20.14.78 sqlplus /NOOG CONNECT system/oracle@//172.20.14.13:1521/alinadb
Ответ №6:
# . /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh
# sqlplus /nolog
SQL> connect sys/password as sysdba
SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);
SQL> CONNECT sys/password@hostname:1521 as sysdba