Error oracle- Corrigindo ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

Esse erro acontece ao tentar conectar no banco com o usuário sys.

Isto acontece porque o parametro  O7_DICTIONARY_ACCESSIBILITY está setado como falso FALSE e para resolve-lo basta seta-lo pra TRUE.

Vejamos abaixo um exemplo:

SQL> conn sys/a
ERROR:
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
Warning: You are no longer connected to ORACLE.

2)Conectando como sysdba e alterando o parametro O7_DICTIONARY_ACCESSIBILITY
SQL> conn / as sysdba
Connected.

Verificando a situação do parametro:

SQL> SHOW PARAMETER O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean FALSE

Alterando o parametro no spfile:

SQL> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
System altered.

Feito isso é necessário desativar e reativar a instancia para que as configurações sejam ativadas:

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup
ORACLE instance started.
Total System Global Area 167772160 bytes
Fixed Size 2019288 bytes
Variable Size 109051944 bytes
Database Buffers 50331648 bytes
Redo Buffers 6369280 bytes
Database mounted.
Database opened.

Agora tente novamente a conexão com o usuario sys.

SQL> conn sys/a
Connected.

SQL> show parameter O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean TRUE

No comments:

Post a Comment