DB 접속이 안되는 5가지 이유

[ DB에 접근 안되는 5가지 이유 ]
 : 개인적인 테스트 DB라면 아래 1, 2번도 사유에 해당 되겠지만, 프로젝트에 투입된 상태라면 3,4,5 번 문제로 인해 접속을 못하는 경우입니다. 그러므로 개발자분이시면 3,4,5번으로 접속못하는 상황이므로 확인을 해보면 됩니다.


1. DB 기동
   - 서버 터미널 ORACLE 접속하여 DB 상태 확인 
    ex) sqlplus / as sysdba

2. LISTENER 
  - 서버 접근 > $lsnrctl status

3. 방화벽 ( 데이터베이스 서버 네트워크 접근 )
  - telnet 172.xx.xx.1 1521 ( telnet dbip port ) 수행하여 검은 화면이 뜨면 방화벽 뚫림 의미   
  * Test DB여서 개발자가 접근가능하다면 아래 관리되는 방화벽에 따라 조회하여 DB에 접속 가능한 상태인지 체크
   - fire-wallds : system status firewalld
   - iptables : system status iptables   

4. DB접근제어 솔루션 ( 데이터베이스 서버 접근 )
  - DB Safer(Pnp Securer), Chakra(WareValley) 등
    DB접근제어 솔루션도 승인이 나야 DB에 접근이 가능하다  
    부여받은 DB접근제어 개인계정에 접속하려는 DB LIST를 추가하여 허가신청을 했을것이고, 
    승인되어야 접속이 가능하다.

5. 기타    
  1) TOOL에 DIRECT 입력시 체크사항
     - HOST, PORT, SERVICE_NAME, INSTANCE_NAME, ID, PASSWORD 

  2) TNS 정보 이용시 아래 정상인지 체크 
   21C =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 172.XX.X.X)(PORT = 1521))
    (CONNECT_DATA =
      (SERVICE_NAME = PDB1)
      (INSTANCE_NAME = ORA21)
    )
  )