Oracle Apex — дублированная виртуальная машина, которая теперь не работает

мы запускаем сервер Oracle (12C). Мы хотим протестировать разнородные сервисы.

Я создал новую виртуальную машину, используя резервную копию производственного сервера, дал ей новый MAC-адрес и IP-адрес. Я обновил MAC-адрес в /etc/sysconfig/network-scritps/ifcfg-eth0, сделал start_udev, а затем service network restart. Это дало мне сеть.

Я дал ему имя хоста myServerName-test.local, а также запись DNS для того же адреса.

Затем я изменил $ORACLE_HOME/network/admin/tnsnames.ora, чтобы иметь обновленный хост.

Для переменной env ORACLE_SID ничего не установлено, хотя запуск set ORACLE_SID="RECORDSDB" не меняет ее, что, как мне кажется, для меня проблема.

Я запустил ./bin/lsnrctl и выполнил команду reload, хотя она все еще пытается подключиться к производственному серверу. Как изменить этот параметр конфигурации?

Когда я пытаюсь запустить ./bin/sqlplus с правильным именем пользователя и паролем, он говорит - "ERROR: ORA-12162: TNS:net service name is incorrectly specified".

Каковы мои действия, чтобы решить эту проблему? Я также перезагрузил его много, так что это ничего не поможет. Спасибо, Гарри.

редактировать: добавление моего файла tnsnames.ora;

RECORDSDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = myHostname-test.ap.local)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = recordsdb.local)
    )
)

edit 2: добавлен вывод tnsping

[oracle@ap-ora-records-test dbhome_1]$ ./bin/tnsping 192.168.1.150

TNS Ping Utility for Linux: Version 12.1.0.1.0 - Production on 20-AUG-2014 10:11:54

Copyright (c) 1997, 2013, Oracle.  All rights reserved.

Used parameter files:
/u01/app/oracle/product/12.1.0/dbhome_1/network/admin/sqlnet.ora

Used EZCONNECT adapter to resolve the alias
Attempting to contact (DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.150)(PORT=1521)))
TNS-12541: TNS:no listener

Я помню, как читал об утилите, которую я мог бы использовать для сортировки чего-то подобного, она называлась netmgr, хотя для нее требовался xserver, который у меня не установлен. Полезно ли это для решения проблемы?

редактировать 3: вывод состояния lsnrctl

[oracle@ap-ora-records-test dbhome_1]$ ./bin/lsnrctl status

LSNRCTL for Linux: Version 12.1.0.1.0 - Production on 21-AUG-2014 11:34:44

Copyright (c) 1991, 2013, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 111: Connection refused
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=myProductionServer.local)(PORT=1521)))
TNS-01189: The listener could not authenticate the user

TWO_TASK не было установлено, поэтому я также установил RECORDSDB, что изменило мою ошибку при попытке использовать sqlplus на ORA-12541: TNS:no listener.

редактировать 4:

Поэтому изначально я изменил имя хоста на $ORACLE_HOME/network/admin/tnsnames.ora, а не на /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora, так как не знал, что оно существует. Это результат lsnrctl reload

[oracle@ap-ora-records-test dbhome_1]$ ./bin/lsnrctl reload

LSNRCTL for Linux: Version 12.1.0.1.0 - Production on 21-AUG-2014 11:41:25

Copyright (c) 1991, 2013, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 111: Connection refused
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=myDevMachine.local)(PORT=1521)))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 111: Connection refused

Итак, я все еще получаю сообщение об ошибке «нет слушателя», но теперь я получаю его дважды?

При попытке подключиться к sqlplus я все еще получаю ORA-12541: TNS:no listener.

Редактировать 5:

Я думал, что перезагрузка запустит его, я думаю, нет. Это просто перезагружает конфигурацию?

Запуск /u01/app/oracle/product/12.1.0/dbhome_1//bin/tnslsnr: подождите...

TNSLSNR for Linux: Version 12.1.0.1.0 - Production
System parameter file is /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/product/12.1.0/dbhome_1/log/diag/tnslsnr/ap-ora-records-test/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ap-ora-records-test.ap.local)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 12.1.0.1.0 - Production
Start Date                21-AUG-2014 13:00:24
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/product/12.1.0/dbhome_1/log/diag/tnslsnr/ap-ora-records-test/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ap-ora-records-test.ap.local)(PORT=1521)))
The listener supports no services
The command completed successfully

См. ниже мои файлы конфигурации TNSNAMES.ora и LISTENER.ora, однако я не удалял фактическое имя хоста, это то, что я использовал все это время.

Файлы конфигурации TNSNAMES.ora и LISTENER.ora


person Harry Torry    schedule 20.08.2014    source источник
comment
Вы проверили tnsping docs.oracle.com/cd /E11882_01/сеть.112/e41945/   -  person Exhausted    schedule 20.08.2014
comment
Обновил исходный пост!   -  person Harry Torry    schedule 20.08.2014
comment
Ваш tnsping должен быть связан с псевдонимом RECORDSDB, а не с IP-адресом. Являются ли myHostname-test.ap.local и 192.168.1.150 одним и тем же, и у вашей виртуальной машины несколько IP-адресов? На каком адресе/порте находится слушатель, если он вообще работает? Что показывает lsnrctl status? Вы указываете этот псевдоним TNS как часть команды SQL*Plus или он определен в TWO_TASK?   -  person Alex Poole    schedule 20.08.2014
comment
Я также пытался использовать имя хоста, это дало те же результаты. Это одно и то же. Виртуальная машина не имеет нескольких IP-адресов, я не могу сказать, что показывает статус, до завтра, так как у меня нет VPN на этом компьютере, и я сейчас дома. Я не указывал TNS как часть команды sqlplus, я не знаю, находится ли он в TWO_TASK, не могли бы вы сказать мне, как это проверить, пожалуйста? Спасибо за помощь!   -  person Harry Torry    schedule 20.08.2014
comment
Обновлен исходный пост с более подробной информацией.   -  person Harry Torry    schedule 21.08.2014
comment
Итак... ваш слушатель не работает? Похоже, вы не обновили listener.ora, и он все еще пытается привязаться к IP-адресу серверов prod, а не к IP-адресу вашей виртуальной машины?   -  person Alex Poole    schedule 21.08.2014
comment
Обновлено снова, мне пришлось настроить новый резервный жесткий диск, но я увидел последнее редактирование, которое было решено, но создало новые проблемы.   -  person Harry Torry    schedule 21.08.2014
comment
Вы не можете перезагрузить прослушиватель, если он не запущен. Вы сделали lsnrctl start после изменения адреса в listener.ora?   -  person Alex Poole    schedule 21.08.2014


Ответы (2)


Вы не изменили IP-адрес прослушивания в своем listener.ora. После того, как вы это сделаете, вам нужно запустить прослушиватель с помощью lsnrctl start. Затем вы можете убедиться, что он начался с lsnrctl status.

После того, как прослушиватель запущен, может потребоваться некоторое время, чтобы база данных зарегистрировалась. Вы можете форсировать это с помощью alter system register. Если он не зарегистрируется, проверьте, установлен ли у вас параметр базы данных local_listener, и если да, то на производственный адрес/порт. Если это так, вам нужно будет изменить и это с помощью alter system.

person Alex Poole    schedule 21.08.2014
comment
Большое спасибо за вашу помощь, теперь я наконец-то на связи. Я не понимал, что мне придется ждать, пока БД зарегистрируется. Не обращайте внимания на мое последнее редактирование! Спасибо еще раз! - person Harry Torry; 21.08.2014

У меня была такая же проблема, и проблема заключалась в том, что определенный IP-адрес в файле hosts был ошибочным. Проверьте, доступно ли определенное имя хоста в listener.ora.

person nocookies    schedule 19.06.2016