制御ファイルを再作成する必要があります
Kaunain Ahmed によるこの投稿では、必要な手順について説明しています。
<ブロック引用> <オール>スレッドで参照されている他のツールがあります。
これは、プロセスをより詳細に参照するAskTomによる投稿です。 10g 用ですが、まだ動作するはずです。
9i 以降、dbnewid ユーティリティ (nid) を使用してデータベース名 (および必要に応じて DBID) を変更できます。データベース名のみを変更する場合は、resetlogs は必要ありません:
-
マウント モードの 1 つの起動データベース
shutdown immediate startup mount
-
2 nid を実行してデータベース名を変更します:
nid target=sys/[email protected] dbname=newname setname=YES
-
3 マウント モードでデータベースをシャットダウンして起動します:
shutdown immediate startup mount
-
4 変更
db_name
spfile (またはファイルを編集する pfile):alter system set db_name=newname scope=spfile;
-
5 パスワードファイルを再作成:
orapwd file=orapwnewname password=syspassword
-
6 データベースの起動
startup
-
名前変更後の 7 つの手順:
change SID in listener.ora correct tnsnames.ora remove old trace directories change /etc/oratab (UNIX) or rename windows service using oradim
はい、できますし、とても簡単です。
Oracle では、ORACLE_SID は Oracle インスタンスの単なる名前であり、DBNAME とはあまり関係がありません。 PROD という名前のデータベースは、任意の有効な名前のインスタンスを使用して提供できます。 SID と DBNAME の間に直接の接続はありません。この接続は、パラメーターを使用して行われます。
パラメータ ファイルは、init${ORACLE_SID}.ora または spfile${ORACLE_SID}.ora として識別されます。パラメータ ファイルには、パラメータ db_name があります。これは、Oracle インスタンスとデータベース間の接続が行われる場所です。
そのため、制御ファイルを再作成する必要はありません。nid を使用する必要はありません。パラメータ ファイルの名前が正しいことを確認し、古い Oracle インスタンスを停止して、ORACLE_SID を設定した後に新しい Oracle インスタンスを起動するだけです。を新しい Oracle インスタンス名に変更します。パラメーター ファイルとパスワード ファイルはどちらも、名前の一部として ${ORACLE_SID} を使用して検出されます。
制御ファイルの再作成は、DBNAME を変更する必要がある場合にのみ必要です。nid は、ソース データベースのバックアップに損害を与える可能性のある事故を防ぐために DBID を変更する必要があるクローン操作の後に必要です。