//구글광고

각종 보안 점검 후,

오라클 기동 불가 해결방법 모음


각종 보안 조치를 하다보면 오라클이 기동이 안될때가 있다

이러한 케이스들을 쭈욱 모아서 업데이트 할 예정이다.


케이스 1. 리스너(listener) 기동 불가


보통 보안점검 후 한참 있다가 DB 내릴일 있어서 내렸다가 올리면

리스너가 기동 안되는 경우가 많다.


대부분 바로 알아채기는 어려움


다음의 명령어를 oracle 유저로 수행해본다.

cat /etc/hosts 


해당 명령어의 결과가 나오면 다음으로 넘어가고 권한이 없다고 안열리면 권한을 풀어주자.




케이스 2. 아카이브 로그 full 


매우 드물게 아카이브 경로 권한을 뺏어서 안되는 경우가 있다.

아카이브 공간이 읽고쓰기가 잘 되는지 확인해보자


이 경우는 작업하고 잠시 있다가, 로그스위치가 발생할 때 hang 이 걸려있을 것이다.


해당 케이스는 bdump 에 alert_$ORACLE_SID.log 파일을 열어보면 archiver fail.. 등의 에러메세지가 나와있을 것이다.



df -k 

 


등의 명령어로 일단 여유공간이 충분한지 보고, 


alert log 에서 archive 관련 오류메세지가 없는지 확인해보자.




케이스 3. 사용자 기간 만료


데이터베이스 유저의 기간을 만료시키게 설정 할 경우 기간 만료로 서비스 하다가 중단되는 경우가 있다.
was로 커넥션 풀로 설정되어 있다면, 내리기 전까진 모르고 다시 기동할때 안된다던지
페이지에서 다이렉트 커넥트 부분에서 안된다던지의 증상이 나타난다.

sqlplus "/as sysdba" 로 접속한다.


select username, account_status from dba_users;

 

쿼리로 조회를 해본다.

사용자다 expired 혹은 lock 등의 상태로 나오면 풀어준다


lock 의 경우


alter user 유저명 account unlock;

 




케이스 4. 사용자 패스워드 대소문자 구분


보안을 강화 하다보면 오라클 parameter 에 case sensitive 를 true 로 해놓는 경우도 있다.

이럴경우 패스워드 대소문자를 가린다.


기존에 안해놓다가, 보안 강화후 해놓으면 접속이 안된다.


다음의 커멘드로 파라미터를 확인한다.

true 로 되어있으면 false로 바꾸던지 어플리케이션에서 대소문자 가려서 접속하자.


sqlplus "/as sysdba" 로 관리자로 접속하자.


show parameter case 

로 파라미터를 조회 하면


 

parameter                value

==========        =======

case_sensitive           true


로  나올것이다. 11g 기본값이 true 이기 때문에 무조건 true가 나쁜건 아니다.

password 대소문자 때문에 접속이 안될때 해주는 것이다.




케이스 5. 사용자 패스워드 실패 잠금


암호 10번 틀리면 잠기게 되어 있어서, 암호 틀려서 잠기는 경우도 많다.
낮은버전에서 그냥쓰다가 업그레이드 하거나 잘 쓰다가 보안지적사항 나와서 걸어놓고 처음 걸리면
이런 문제가 생길수 있다.

증상은 이전껀 잘되고 새로운건 안되는 경우
이미 커넥션 맺혀져 있는건 잘되고 새로 커넥션 맺는건 안될때 사용자 계정이 잠겼습니다 라는 에러메시지가 나온다

sqlplus "/as sysdba" 로 접속한다.


select username, account_status from dba_users;

 

쿼리로 조회를 해본다.

사용자다 expired 혹은 lock 등의 상태로 나오면 풀어준다


암호를 바꿔주거나 풀어주면 된다.



계속 케이스 나올때마다 업데이트 할 예정이다.

+ Recent posts