Oracleでのデータベースの手動削除チュートリアル
5452 ワード
多くの場合、dbcaツールが使用できない場合、データベースを手動で削除する必要があります.これはdrop databaseコマンドを使用して実現でき、以下の説明ではデータベースを手動で削除します.ファイルシステムデータベースおよびASMデータベースを含む、特定のステップ.環境:Oracle Enterprise Linux 5.4+Oracle 10 g R 2.一、手動でファイルシステムデータベース1を削除する.OEMとの傍受停止
2.データファイル、ログファイル、および制御ファイルに関する情報を取得し、アーカイブを含む
3.mountステータスに起動(exclusive restartを使用)
4.制限されたセッション・モードを許可するパラメータの変更
5.drop databaseコマンドを使用してデータベースを消去
6.関連ファイルを手動でクリア
7.リスニング関連ファイルのパージ(推奨)
8.oratabファイルの変更と.bash_profile
二、ASMデータベースのクリア
ASMデータベースの削除とファイルシステムデータベースの違いは、データファイル、制御ファイル、ログファイル、パラメータファイルなどがASMシステムに格納されていることであるため、ASMインスタンスで対応する動作をしてデータベースを完全に消去する必要がある. 1.ファイルシステムデータベース消去手順3-4を実行する(shutdownを先に行う).drop databaseコマンドを使用してデータベースを消去します(このコマンドはデータファイル、ログファイル、tempファイルを消去します).
3.ASMインスタンスへの接続
4.残存ファイルの消去
残りのファイルを削除するには、次の方法(asmcmdコマンド)を使用します.
ディスクグループの下に直接存在するファイルについてもrmコマンドを使用してファイルを直接削除できます.
5.その他のファイルをクリア
データファイル、アーカイブログ、オンラインログ、一時ファイル、パラメータファイルはすべてASMディスクに保存されていますが、dumpファイル、アラームログは依然としてディスクにあり、手動でクリアする必要があります.
6.ファイルシステムデータベース消去手順7-8を実行する
$ 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を実行する