Не удается подключиться к подключаемой базе данных Oracle

Я установил oracle на свой 64-битный компьютер под управлением Windows 10, и я начал выполнять шаги проверки, упомянутые в руководстве, которое приводится на веб-сайте oracle, который можно найти по ссылке ниже.

http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/Windows_DB_Install_OBE/Installing_Oracle_Db12c_Windows.html

Когда я пытаюсь подключиться к моей подключаемой базе данных с помощью этой команды

C:\Users\Chathura>sqlplus sys/Oracle_1@orclpdb as sysdba;

это дает мне следующее сообщение

SQL*Plus: Release 12.2.0.1.0 Production on Tue Jan 30 19:34:25 2018

Copyright (c) 1982, 2016, Oracle.  All rights reserved.

ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified


Enter user-name:

Но когда я пытаюсь подключиться к базе данных контейнера, она успешно подключается.

Вот как я создал подключаемую базу данных.

Я читал статьи об этом, пытался добавить системную переменную TNS_ADMIN тоже, но ни один из них не работал. Что я здесь не так делаю?

3 ответа

connect to your database ( pluggable database) and make thing configuration
` 
startup mount;
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
ALTER SYSTEM SET AQ_TM_PROCESSES=0;
ALTER DATABASE OPEN;
`
and also that
`
update sys.props$ set VALUE$='WE8MSWIN1252' where NAME='NLS_CHARACTERSET';
 commit;
 shutdown immediate;
 startup;
`
after that just check your tnsnames.ora`enter code here`

ОКНА 10:

Не знаю, точно ли это ваша проблема, но у меня очень похожая. После создания новых пользователей в PDB я не смог подключиться к базе данных. Вот что я сделал (не знаю, нужно ли вам все это, но у меня сработало).

  1. Попробуйте эти параметры в SQL Dev Connection:

связь

  1. На $ORACLE_HOME/network/adminдобавлять:
      ORCLPDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = hostname)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orclpdb)
    )
  )
  1. На network/admin/sqlnet.oraфайл добавить:
      SQLNET.ALLOWED_LOGON_VERSION_CLIENT = 8

SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8

Вы должны использовать имя службы для вашего подключаемого модуля, вы не можете использовать SID. Это будет работать только для контейнера.

Так что узнайте название сервиса

[oracle@vbgeneric ~]$ lsnrctl status

LSNRCTL for Linux: Version 12.2.0.1.0 - Production on 30-JAN-2018 10:05:02

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 12.2.0.1.0 - Production
Start Date                25-JAN-2018 12:14:50
Uptime                    4 days 21 hr. 50 min. 12 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Default Service           orcl12c
Listener Parameter File   /u01/app/oracle/product/12.2/db_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/vbgeneric/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=0.0.0.0)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=vbgeneric)(PORT=8081))(Presentation=HTTP)(Session=RAW))
Services Summary...
Service "49b6c41a4c152576e0530100007feda7" has 1 instance(s).
  Instance "orcl12c", status READY, has 1 handler(s) for this service...
Service "4bb765ec28ff1109e0530100007f49e5" has 1 instance(s).
  Instance "orcl12c", status READY, has 1 handler(s) for this service...
Service "app_con" has 1 instance(s).
  Instance "orcl12c", status READY, has 1 handler(s) for this service...
Service "orcl" has 1 instance(s).
  Instance "orcl12c", status READY, has 1 handler(s) for this service...
Service "orcl12c" has 2 instance(s).
  Instance "orcl12c", status UNKNOWN, has 1 handler(s) for this service...
  Instance "orcl12c", status READY, has 1 handler(s) for this service...
Service "orcl12cXDB" has 1 instance(s).
  Instance "orcl12c", status READY, has 1 handler(s) for this service...
The command completed successfully
[oracle@vbgeneric ~]$ 

Затем подключитесь, используйте @servicename против @SID

в моем случае это @orcl

Или подключитесь к вашему контейнеру, затем переключитесь на свой PDB

oracle@vbgeneric oracle]$ sqlplus  sys/oracle@orcl12c as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Tue Jan 30 10:09:28 2018

Copyright (c) 1982, 2016, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL> ALTER SESSION SET container = orcl;

Session altered.

SQL> 

Тим говорит об этом здесь.

Другие вопросы по тегам