2016-06-08 8 views
0

Oracle 데이터베이스에서 매일 반복되는 문제가 발생합니다. 최근에 연결했는데 다시 시작할 때 잃어 버릴 것 같습니다. 그것을 잃어 버리면 일반 사용자로 로그인하려고 할 때 ORA-01034 오류와 ORA-27101 오류가 발생합니다. SYS 사용자를 시도 할 때 오류가 발생합니다 (ORA-01031).다시 시작한 후 Oracle 데이터베이스에 로그인 할 수 없습니다.

서비스를 제거하고 다시 만들면 다시 로그인 할 수 있다는 것을 알았습니다. 그러나 이것은 로컬 환경이므로 일반적으로 야간에 종료되는 경향이 있습니다. 내 상자를 계속 보관할 수는 있지만 주간마다 할 수는 있지만 여전히 실현 가능한 아이디어처럼 보이지는 않습니다.

다음은 TNSNames 및 Listener 파일입니다.

의 tnsnames.ora

ORACLR_CONNECTION_DATA = 
    (DESCRIPTION = 
    (ADDRESS_LIST = 
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) 
    ) 
    (CONNECT_DATA = 
     (SID = CLRExtProc) 
     (PRESENTATION = RO) 
    ) 
) 

BRACMIS = 
    (DESCRIPTION = 
    (ADDRESS_LIST = 
     (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.x.xx)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
     (SERVER = DEDICATED) 
     (SERVICE_NAME = BRACMIS) 
     (INSTANCE_NAME = BRACMIS) 
    ) 

listener.ora를

SID_LIST_LISTENER = 
    (SID_LIST = 
    (SID_DESC = 
     (SID_NAME = CLRExtProc) 
     (ORACLE_HOME = C:\app\chad.johnson\product\11.2.0\dbhome_1) 
     (PROGRAM = extproc) 
     (ENVS = "EXTPROC_DLLS=ONLY:C:\app\chad.johnson\product\11.2.0\dbhome_1\bin\oraclr11.dll") 
    ) 
    (SID_DESC = 
     (ORACLE_HOME = C:\app\chad.johnson\product\11.2.0\dbhome_1) 
     (SID_NAME = BRACMIS) 
    ) 
) 

LISTENER = 
    (DESCRIPTION_LIST = 
    (DESCRIPTION = 
     (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.x.xx)(PORT = 1521)) 
     (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) 
     (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) 
    ) 
) 

ADR_BASE_LISTENER = C:\app\chad.johnson\product\11.2.0\dbhome_1\log 
) 

는 내가 오늘 아침 시작했을 때 11g 및 OracleInstanceBRACMIS 서비스를 모두 내 Oracle 서비스가 꺼져 있었다 통지를했다. 그것과 관련이 있는지 아닌지 확실하지 않습니다. 감사.

편집 : DB를 시작하는 방법을 찾았습니다. 명령 프롬프트에서, I 입력 명령 :

oradim -STARTUP -sid이 날 차례 나에서 오래 그것으로 로그인 할 수 내 데이터베이스를 시작할 수

BRACMIS. 이것은 재시작 후 처음에 로그인 할 수 없다는 전반적인 문제를 해결하지 못하지만 Oracle Service Instance를 제거하고 다시 추가하기보다는 DB를 빠르게 시작할 수있는 방법을 제공합니다 .

답변

1

다시 시작할 때 Oracle 서비스가 시작되지 않는 것처럼 보입니다. (이는 기본적으로 Oracle Database가 시작되지 않았 음을 의미합니다.)

Windows 서비스로 이동하여 Oracle 서비스를 찾고 서비스의 시작 유형을 자동으로 변경하십시오. 이렇게하면 재시작 후에 Oracle 데이터베이스가 시작됩니다.

한편

+0

는 이미 자동으로 내 오라클 인스턴스 서비스를 변경 ...

C:\> set oracle_sid=your_sid C:\>sqlplus/as sysdba SQL>Startup; 

가 인스턴스를 시작합니다 .. ... 당신의 명령 프롬프트를 열고 다음을 수행합니다. 명령 프롬프트와 관련해서는 문제의 일부입니다. sysdba로 로그인을 시도 할 때 "사용 권한이 충분하지 않습니다"라는 메시지가 나타납니다. 오라클이 sys/system 용으로 DB를 제공 한 자격 증명을 사용하려고합니다. 이러한 자격 증명을 사용할 때도 여전히 동일한 응답을 얻습니다. – IyaTaisho

+0

ORACLE_HOME 및 ORACLE_SID가 설정 되었습니까? – cableload

+0

예, 둘 다 설정했습니다. DB를 시작하도록 강제하는 방법을 찾았습니다. oradim -STARTUP -SID BRACMIS 명령을 사용하여 DB가 부팅되었고 지금 입력 할 수 있습니다. – IyaTaisho