오라클 배경이 필요 처리

 

오라클 배경이 필요 처리

(1) 개요

oralce 모든 주요 버전 변화는 백그라운드 프로세스가 일부 변경하고, 새로운 프로세스가 될 것입니다, 또는 원래의 분할 과정에서 사망 할 수 없습니다. 킬 데이터베이스 충돌의 원인이 될 수 있습니다. 어떤 프로세스가 명확하고 분명해야합니다 죽일 수 없습니다.

2 개 필요한 프로세스

 

2.1 기본 시작 데몬

  • 11G

    [오라클 @ 보면 test1 ~] $ SQLPLUS -v 
    
    의 SQL * 플러스 : 11.2.0.4.0 생산 해제 
    
    [오라클 @ 보면 test1 ~] $ 추신 -ef | 그렙 오라 | 그렙 -v 스와 | 그렙 -v 그렙 | 그렙 -v 강타를 | 그렙 -v 추신 | 그렙 더 -v 
    오라클 23144 1 0 22:16? 0시 0분 0초 ora_pmon_wtdb 
    오라클 23152 1 2 22시 16분? 0시 0분 12초 ora_vktm_wtdb 
    오라클 23156 1 0 22시 16분? 0시 0분 0초 ora_gen0_wtdb 
    오라클 23158 1 0 22시 16분? 0시 0분 0초 ora_diag_wtdb 
    오라클 23160 1 0 22시 16분? 0시 0분 0초 ora_dbrm_wtdb 
    오라클 23165 1 0 22시 16분? 0시 0분 0초 ora_dia0_wtdb 
    오라클 23167 1 0 22시 16분? 0시 0분 0초 ora_mman_wtdb 
    오라클 23169 1 0 22시 16분? 0시 0분 0초 ora_dbw0_wtdb
    오라클 23171 1 0 22시 16분? 00:00:00 ora_lgwr_wtdb 
    오라클 23173 1 0 22:16? 0시 0분 0초 ora_ckpt_wtdb 
    오라클 23175 1 0 22시 16분? 0시 0분 0초 ora_smon_wtdb 
    오라클 23177 1 0 22시 16분? 0시 0분 0초 ora_reco_wtdb 
    오라클 23179 1 0 22시 16분? 0시 0분 0초 ora_mmon_wtdb 
    오라클 23181 1 0 22시 16분? 0시 0분 0초 ora_mmnl_wtdb 
    오라클 23183 1 0 22시 16분? 0시 0분 0초 ora_d000_wtdb 
    오라클 23185 1 0 22시 16분? 0시 0분 0초 ora_s000_wtdb 
    오라클 23237 1 0 22시 16분? 0시 0분 0초 ora_arc0_wtdb 
    오라클 23242 1 0 22시 16분? 0시 0분 0초 ora_arc1_wtdb 
    오라클 23244 1 0 22시 16분? 0시 0분 0초 ora_arc2_wtdb
    오라클 23246 1 0 22시 16분? 0시 0분 0초 ora_arc3_wtdb 
    오라클 23249 1 0 22시 16분? 0시 0분 0초 ora_qmnc_wtdb
    오라클 23266 1 0 22시 16분? 0시 0분 0초 ora_cjq0_wtdb 
    오라클 23317 1 0 22시 16분? 0시 0분 0초 ora_q000_wtdb 
    오라클 23319 1 0 22시 16분? 0시 0분 0초 ora_q001_wtdb 
    오라클 24533 1 0 22시 21분? 0시 0분 0초 ora_smco_wtdb 
    오라클 24546 1 0 22시 21분? 0시 0분 0초 ora_w000_wtdb 
    오라클 25095 1 0 22시 23분? 0시 0분 0초 ora_j000_wtdb 
    오라클 25097 1 0 22시 23분? 0시 0분 0초 ora_j001_wtdb
    

    기본 백그라운드 프로세스가 시작 : PMON vktm GENn DIAG DBRM 다이애나 MMAN DBWn는 LGWR CKPT SMON RECO MMON mmnl Dnnn Snnn의 ARCn qmnc CJQn Qnnn SMCO Wnnn Jnnn 23 종.

이러한 프로세스, 운영 메커니즘, 트리거 메커니즘의 역할은 다시 프로세스가 필요한 것을에서, 첫번째보기에 대한 정보를 얻으실 수 있습니다.

2.2 프로세스를 종료 할 수없는 것은

  • 테스트 스크립트

    # ! / 빈 / 
    함수  시작 () 
    { 
    SQLPLUS가 / SYSDBA로 << EOF 시작 출구 EOF가 
    } 시작 = 그렙 PMON | | 그렙 -v 그렙 |`추신 -ef를 AWK는 '{$ 2 인쇄}'` 테스트 -z "$ "시작 시작 >> / 디바이스 / 널 && 
    슬립 5 prolist = '추신 -ef | 그렙 ORA | egrep을 -v'떠들썩한 파티 | S [아] | PS | 그렙 | 더 | 슬립 | AWK | LOCAL | SYSDBA가 | 로그 '| AWK '{인쇄 $ NF}'` #은 $ prolist 에코 에 대한에서 $의 prolist proc_key을 = 내가`$ 에코 | AWK -F _`{$ 2 인쇄} ' PID =
    
    
    
    
    
    
    
    
    
    
    
    
    PS -ef`| 그렙 $의 proc_key | 그렙 -v 그렙 | AWK는`{$ 2 인쇄} '  
    #은 "오라클은 키워드 $의 proc_key의 $의 PID 프로세스 ID를 처리 $ 내가 처리"에코 
    #은 "킬 (kill) 프로세스 $의 proc_key"에코 
    테스트 -z를 $ PID & & 에코  "존재하지 않는 $의 proc_key" || 킬 (kill) -9 "$ pid에"  
    SLEEP (20) PC = `PS의 -ef를 | 그렙 PMON | 그렙 -v 그렙 | WC -l` 에코 "PMON 프로세스를 PC에 $의 수" IF [$의 PC의 -eq 0]; 다음 메아리 "예를 충돌 $ proc_key에 킬 프로세스가 이어질 것!" 
       시작 >>을 / dev / null 
       SLEEP 5 (가) 다른 에코 "$ proc_key 인스턴스가 충돌에 킬 프로세스가 연결되지 않습니다!"wexists =
    
     
     
        
     
        
       PS -ef`| 그렙 W000 | 그렙 -v 그렙은 | WC -l` 
       smc0exists = `PS의 -ef | 그렙 SMC는 | 그렙 -v 그렙 | WC -l` 
       테스트 -z의 $의 wexists & & 에코  "W000 프로세스가 존재하지 않습니다" 
       테스트를 -z $ smc0exists을 && 에코  "SMC 프로세스가 존재하지 않는" 
    Fi를  
    DONE을
    
  • 결과

    ! 인스턴스 충돌을 PMON으로 이어질 것입니다 프로세스를 종료 
    충돌 인스턴스 프로세스 vktm 리드를 죽여라! 
    인스턴스에 대한 프로세스 gen0 리드를 죽여 충돌! 
    DIAG 인스턴스에 연결되지 않는 프로세스를 종료 충돌! 
    인스턴스에 대한 프로세스 DBRM 리드를 죽여 충돌! 
    충돌 dia0 인스턴스에 연결되지 않는 프로세스를 종료! 
    인스턴스 프로세스 MMAN 리드를 죽여 충돌! 
    인스턴스로 이어질 DBW0 프로세스를 종료 충돌! 
    과정을 LGWR 죽여 인스턴스로 이어질 것입니다 충돌! 
    CKPT 프로세스를 종료 인스턴스으로 이어질 것입니다 충돌! 
    SMON 인스턴스 충돌로 이어질 것입니다 프로세스를 종료합니다! 
    RECO 예를 충돌로 이어질하지 않는 프로세스를 종료! 
    죽여 MMON 프로세스! 인스턴스 충돌로 이어질하지 않습니다 
    충돌! 인스턴스에 연결되지 않습니다 mmnl 프로세스를 종료 
    D000은 인스턴스에 연결되지 않는 프로세스가 충돌! 죽여 
    ! S000이 경우 충돌로 이어질하지 않는 프로세스를 종료 
    충돌! 인스턴스에 연결되지 않습니다 프로세스 P000 죽여 
    P001으로 이어질하지 않는 프로세스를 종료 예! 충돌 
    충돌 ARC0 인스턴스에 연결되지 않는 프로세스를 종료합니다! 
    arc1 인스턴스 충돌로 이어질하지 않는 프로세스를 종료합니다! 
    충돌 arc2 인스턴스에 연결되지 않는 프로세스를 종료합니다! 
    arc3 인스턴스가 충돌로 이어질하지 않는 프로세스를 종료!
    qmnc 인스턴스 충돌로 이어질하지 않는 프로세스를 종료합니다! 
    충돌 cjq0 인스턴스에 연결되지 않는 프로세스를 종료합니다! 
    q000 인스턴스에 연결되지 않는 프로세스를 종료 충돌! 
    충돌 Q001 인스턴스에 연결되지 않는 프로세스를 종료!
    

할 초 마무리, 우리는 볼 수 있습니다 PMON, vktm, gen0, DBRM, 오라클 11G를 SMON, MMAN, DBW0, LGWR, CKPT 이 9 개 프로세스를 죽일 수 없습니다 . 이 데이터베이스 다운 타임 발생합니다.

스크립트 위, 시험 중에, 짧은 조정 수면 시간은 때때로 중단의 인스턴스로 이어질 것입니다 dia0 프로세스를 종료 것으로 나타났습니다 . 그래서이가 빠질 수 있습니다주의 함정 아니다.

오라클 11G 프로세스의 프로세스 9 + 1 위험성이 높은 프로세스를 포함해야합니다에 즉 필요하다.

 

주의 어린이의 신발은 다시 시작할 때까지 시작되지 않은 w000, smc0을 프로세스처럼되지 않습니다 테스트 프로세스의 일부 결과가 있다는 것을 발견 할 것이다. 이 현상은 이러한 프로세스가 필요하지 않습니다 보여줍니다.

저자 : 미 늘

만든 사람 : 2019년 6월 22일 토 2시 25분

유효성 검사

추천

출처www.cnblogs.com/halberd-lee/p/11067592.html