Oracleでのデータベースの手動削除チュートリアル

5452 ワード

多くの場合、dbcaツールが使用できない場合、データベースを手動で削除する必要があります.これはdrop databaseコマンドを使用して実現でき、以下の説明ではデータベースを手動で削除します.ファイルシステムデータベースおよびASMデータベースを含む、特定のステップ.環境:Oracle Enterprise Linux 5.4+Oracle 10 g R 2.一、手動でファイルシステムデータベース1を削除する.OEMとの傍受停止
     
 
  
        $ lsnrctl stop listener_name
        $ emctl stop dbconsole
   
   
    2.データファイル、ログファイル、および制御ファイルに関する情報を取得し、アーカイブを含む
     
 
  
        $ sqlplus / as sysdba
        SQL> select status,name from v$controlfile;   --
        SQL> select * from v$dbfile;                  --
        SQL> select * from v$logfile;                 --
        SQL> archive log list;                        -- sequence
        SQL> shutdown abort;                          -- , shutdown abort
   
   
    3.mountステータスに起動(exclusive restartを使用)
   
 
  
        SQL> startup mount exclusive restrict;
   
   
    4.制限されたセッション・モードを許可するパラメータの変更
    
 
  
        SQL> alter system enable restricted session;
   
   
    5.drop databaseコマンドを使用してデータベースを消去
    
 
  
        SQL> drop database;
        SQL> exit
   
   
    6.関連ファイルを手動でクリア
    
 
  
        $ echo $ORACLE_SID    -- ORACLE_SID
        $ rm -rf $ORACLE_BASE/admin/$ORACLE_SID         -- oracle base $ORACLE_SID
        $ rm -rf $ORACLE_BASE/oradata/$ORACLE_SID       --oradata , ,
        $ rm -rf $ORACLE_BASE/arch/$ORACLE_SID          -- ,
        $ rm -rf $ORACLE_BASE/flash_recovery_area/$ORACLE_SID   --
        $ rm -rf $ORACLE_HOME/dbs/*$ORACLE_SID*                 --      */
   
   
    7.リスニング関連ファイルのパージ(推奨)
   
 
  
        $ rm $TNS_ADMIN/*.ora    -- $TNS_ADMIN ,    */
        $ rm $ORACLE_HOME/network/admin/*.ora            */
   
  
    8.oratabファイルの変更と.bash_profile
     
 
  
        $ vi /etc/oratab        --
        $ vi ~/.bash_profile    --
   

二、ASMデータベースのクリア
ASMデータベースの削除とファイルシステムデータベースの違いは、データファイル、制御ファイル、ログファイル、パラメータファイルなどがASMシステムに格納されていることであるため、ASMインスタンスで対応する動作をしてデータベースを完全に消去する必要がある.       1.ファイルシステムデータベース消去手順3-4を実行する(shutdownを先に行う).drop databaseコマンドを使用してデータベースを消去します(このコマンドはデータファイル、ログファイル、tempファイルを消去します).
 
  
        SQL> drop database;
        SQL> exit
   
  
    3.ASMインスタンスへの接続
 
 
  
        $ export ORACLE_SID=+ASM
        $ sqlplus / as sysdba
   

4.残存ファイルの消去
        
 
  
        SQL> select name,file_number,group_number,file_incarnation from v$asm_alias; -- , group_number
        SQL> alter diskgroup DG1 drop directory '+DG1/asmdb/file_name';              --
        SQL> alter diskgroup REV drop directory '+REV/asmdb/file_name';
        SQL> select name,file_number,group_number,file_incarnation from v$asm_alias;     --
       

残りのファイルを削除するには、次の方法(asmcmdコマンド)を使用します.
        
 
  
        $ export ORACLE_SID=+ASM
        $ asmcmd
        ASMCMD> ls -l
        State    Type    Rebal  Unbal  Name
        MOUNTED  EXTERN  N      N      DG1/
        MOUNTED  EXTERN  N      N      REV/
        ASMCMD> ls -s
        Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Name
           512   4096  1048576      3067     2974                0            2974              0  DG1/
           512   4096  1048576      2047     1996                0            1996              0  REV/
        ASMCMD> cd +DG1
        ASMCMD> ls
        ASMDB/
        ASMCMD> rm -rf ASMDB
        ASMCMD> ls
        ASMCMD> cd +REV
        ASMCMD> pwd
        +REV
        ASMCMD> ls
        ASMCMD> cd +  
        ASMCMD> ls -s
        Sector  Block       AU  Total_MB  Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Name
           512   4096  1048576      3067     3016                0            3016              0  DG1/
           512   4096  1048576      2047     1996                0            1996              0  REV/
      

ディスクグループの下に直接存在するファイルについてもrmコマンドを使用してファイルを直接削除できます.
 5.その他のファイルをクリア
データファイル、アーカイブログ、オンラインログ、一時ファイル、パラメータファイルはすべてASMディスクに保存されていますが、dumpファイル、アラームログは依然としてディスクにあり、手動でクリアする必要があります.

   $ echo $ORACLE_SID    --     ORACLE_SID 
  
        $ rm -rf $ORACLE_BASE/admin/$ORACLE_SID         -- oracle base $ORACLE_SID
        $ rm -rf $ORACLE_HOME/dbs/*$ORACLE_SID*         --           */
        

6.ファイルシステムデータベース消去手順7-8を実行する