내부적으로 Oracle에 연결하려고 시도하거나 유휴 인스턴스를 얻으려고 합니까?
Oracle 인스턴스가 있고, 이 시스템에서 실행되고 있다는 것을 알고 있으며, Oracle 사용자에게 suff를 했고, "/ as sysdba"를 사용하여 연결하려고 합니다.그러나 연결하면 인스턴스가 유휴 상태로 표시됩니다.제 애플리케이션이 데이터베이스와 통신하고 있기 때문에 데이터베이스가 열려 있다는 것을 알고 있습니다.경로(ORACLE_HOME 등)가 잘못되었을 수 있습니다. 어떤 설정이 잘못되어 이 문제가 발생할 수 있는지 알고 계십니까?
% sqlplus "/ as sysdba"
SQL*Plus: Release 10.2.0.3.0 - Production on Mon Dec 8 09:23:22 2008
Copyright (c) 1982, 2006, Oracle. All Rights Reserved.
Connected to an idle instance.
09:23:22 SQL> Disconnected
% ps -ef | grep smon
oracle 6961 1 0 Nov 05 ? 1:24 ora_smon_ORA003
%
서버를 시작할 때와 동일하게 Oracle_HOME을 설정해야 합니다. Solaris에서 Oracle 9.2.0.5.0에서 이 문제를 발견했습니다.
ORACLE_HOME=/opt/oracle
ORACLE_HOME=/opt/oracle/
두 가지 다른 문제가 있으며 로컬로 연결하는 문제가 발생할 수 있습니다.
즉, 데이터베이스 인스턴스가 마운트되거나 열려 있지 않습니다.시작 명령을 실행하고 오류가 나타나는지 확인합니다.
감사합니다. ORACLE_HOME 변수의 끝에 있는 추가 앞 슬래시였습니다.
나의 경우, 이상함을 참고하세요 - 서버에 로그인하여 연결을 시도했지만 위의 오류가 발생했습니다.인스턴스가 실행되고 DB가 열려 있다는 것을 알고 있었습니다.ORACLE_HOME을 확인한 이유는 이러한 가능성을 어느 정도 알고 있었기 때문입니다.제가 본 것은 ORACLE_HOME이 괜찮다는 것입니다(마지막에 추가적인 전면 슬래시가 없음).그러다가 이 글을 읽었을 때 많은 노력을 한 끝에 문득 생각이 났습니다.DB는 추가 슬래시가 있는 ORACLE_HOME 세트로 시작되었습니다.그래서 DB는 ORACLE_HOME=/u01/app/oracle/product/10.2.0.3/로 시작했고, 그동안 ORACLE_HOME=/u01/app/oracle/product/10.2.0.3 :(
다시한번 감사합니다.
데이터베이스는 유휴 상태일 수 없으며 응용프로그램에서 동시에 사용 중일 수 없습니다.sqlplus 세션이 애플리케이션과 다른 인스턴스에 연결되어 있어야 하는 것 같습니다.다음과 같이 connect 문에서 connect 식별자를 지정해 보십시오.
sqlplus "/@ConnectIdentifier as sysdba"
*nix 시스템에서는 대소문자가 중요하므로 ORACLE_SID가 인스턴스 이름과 정확히 일치하는지 확인하십시오.이 경우 ORA003은 ora003과 다릅니다.
시스템 콘솔에서 시도
export ORACLE_SID=your sid here
sqlplus /nolog
startup
Windows에서 인스턴스를 시작하기 위한 서비스를 생성하거나 admin -new -sid %ORACLE_SID% -intpwd %oracle_pwd% -startmode A를 생성하는 명령이 있는 것으로 알고 있습니다.
저도 같은 문제가 있었습니다.ORACLE_HOME 끝에 있는 여분의 "/"를 제거함으로써 해결되었습니다.
공유해 주셔서 감사합니다. 이 블로그가 없었다면 이 문제를 진단하고 해결하기가 정말 어려웠을 것입니다.
로그인을 사용해 .sqlplus sys/sys as sysdba
SQL> startup
출력은 다음과 같아야 합니다.\n
Total System Global Area 467652608 bytes
Fixed Size 2214416 bytes
Variable Size 352323056 bytes
Database Buffers 104857600 bytes
Redo Buffers 8257536 bytes
Database mounted.
Database opened.
네, 인스턴스 유휴에 대해 알게 된 것은 spfile과 관련이 있습니다.때때로 당신의init.ora
해 있습니다.
.init.ora
당신이 때, 단일당위찾때았을를치신이▁once때찾.
그 코드를 시험해 보세요.startup spfile="C:\location";
인스턴스가 시작되었다고 표시됩니다.
글쎄, 하나는 나를 위해 일했습니다.
잘못된 SID(XE 대신 xe)를 지정하는 동안 동일한 문제가 발생했습니다.rpm으로 데이터베이스를 설치하는 경우 /etc/inid.d/oracle에서 모든 환경을 확인합니다.
데이터베이스 사용량이 너무 많아 세션을 열 수 없는 경우가 문제일 수 있습니다.이 경우 모든 사용자를 사용하는 연결 심지어 더미 연결.
sqlplus 더미/스캐너
실제 문제를 제공하지만 유휴 인스턴스는 제공하지 않습니다.
sqlplus dummy/dummy를 사용해봤는데 실제 문제(메모리 부족)가 발생했습니다.나는 메모리를 사용할 수 있게 했고 문제 없이 로그인할 수 있었습니다.
그냥 입력:
shutdown abort
그리고나서
startup
언급URL : https://stackoverflow.com/questions/349886/trying-to-connect-internally-to-oracle-getting-an-idle-instance
'programing' 카테고리의 다른 글
ORA-01654: 인덱스를 확장할 수 없습니다. (0) | 2023.07.05 |
---|---|
mongo DB에 Java 8 LocalDate 저장 (0) | 2023.07.05 |
'#' 링크를 클릭하면 페이지 맨 위로 이동하지 않도록 하려면 어떻게 해야 합니까? (0) | 2023.07.05 |
MongoDB에서 인덱스를 다시 작성해야 하는 이유와 시기는 무엇입니까? (0) | 2023.07.05 |
객체 지향 설계 워크북(객체 모델 도메인, 시스템 시퀀스 다이어그램, 상호 작용 다이어그램) (0) | 2023.07.05 |