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
Conexoes de Rede - Blog oracle error ,net work, ora code, pl sql for, security it, firebird, mysql,router and switch cisco, linux,windows server, wireless, how to, open source, performance oracle, tunning, switching, realtek, certification, ccna
Showing posts with label databse. Show all posts
Showing posts with label databse. Show all posts
Error oracle- Corrigindo ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
Marcadores:
banco de dados,
corrigindo,
databse,
error oracle,
ora,
ORA-32001,
oracle,
oracle error,
oracode
ORA-01031: insufficient privileges- Login remoto como Sysdba Oracle database server
Resolvendo o insuficiente priveleges, basta criar o arquivo de senha do banco com o comando orapwd:
Veja um exemplo:
Criando o arquivo de password:
No linux/unix através do shell:
oracle@databsever:~ orapwd file=$ORACLE_HOME/dbs/orapw password=senhadosysdba
No windows via (Command Prompt) orapwd file=%ORACLE_HOME%\database\PWDsid_name.ora password=password_for_sys
Step 2. coloque a linha abaixo initservice_name.ora in UNIX, or init.ora in Windows:
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
Step 3. Restart a instancia
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.
Após isso conect no banco.
connect sys/senha_do_sys@nome_da_instancia as sysdba
Veja um exemplo:
Criando o arquivo de password:
No linux/unix através do shell:
oracle@databsever:~ orapwd file=$ORACLE_HOME/dbs/orapw password=senhadosysdba
No windows via (Command Prompt) orapwd file=%ORACLE_HOME%\database\PWDsid_name.ora password=password_for_sys
Step 2. coloque a linha abaixo initservice_name.ora in UNIX, or init.ora in Windows:
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
Step 3. Restart a instancia
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.
Após isso conect no banco.
connect sys/senha_do_sys@nome_da_instancia as sysdba
Marcadores:
banco de dados,
corrigindo,
databse,
error oracle,
insufficient privileges,
ora,
ora-01031,
ORA-32001,
oracle,
oracle error,
oracode
Error oracle- Corrigindo ORA-32001: write to SPFILE requested but no SPFILE specified at startup
Esse erro acontece quando o spfile não está sendo usado no banco vejamos um exemplo abaixo:
sql> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
*
ERROR at line 1:
ORA-32001: write to SPFILE requested but no SPFILE is in use
Para resolver esse problema primeiro vamos verificar se o spfile esta ou não sendo usado:
sqlplus /nolog
sql>Conn sys / as sysdba
sql>show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string
No exemplo acima vemos que o value está em branco o que significa que não está sendo usado.
Criando o spfile:
sql> create spfile from pfile;
Após isso iremos desativar e ativar novamente a instancia para que a mesma carregue as informações do spfile:
sql> shutdown immediate
sql> startup
agora iremos ver se o spfile foi carregado:
sql> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u01/app/oracle/product/11.2.0
/db_1/dbs/spfileprodnew.ora
Agora basta rodar o comando novamente para que a opção seja alterada:
sql> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
System altered.
sql> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
*
ERROR at line 1:
ORA-32001: write to SPFILE requested but no SPFILE is in use
Para resolver esse problema primeiro vamos verificar se o spfile esta ou não sendo usado:
sqlplus /nolog
sql>Conn sys / as sysdba
sql>show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string
No exemplo acima vemos que o value está em branco o que significa que não está sendo usado.
Criando o spfile:
sql> create spfile from pfile;
Após isso iremos desativar e ativar novamente a instancia para que a mesma carregue as informações do spfile:
sql> shutdown immediate
sql> startup
agora iremos ver se o spfile foi carregado:
sql> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u01/app/oracle/product/11.2.0
/db_1/dbs/spfileprodnew.ora
Agora basta rodar o comando novamente para que a opção seja alterada:
sql> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
System altered.
Marcadores:
banco de dados,
corrigindo,
databse,
error oracle,
ora,
ORA-32001,
oracle,
oracle error,
oracode
Subscribe to:
Posts (Atom)