サーバーはOracle Database 11g Enterprise Editionリリース11.1.0.7.0-64ビットです
サーバー上のテストデータベースのSIDを変更する簡単で迅速な方法はありますか?
データベースの削除と再作成は、私にとってはオプションです。でも、もっと時間がかからないものを探しています。
クライアントtnsnames.oraで名前を割り当てる他のオプションは、集中管理されていないため、エラーが発生しやすくなります。
SQL-Serverにデータベースをドロップして作成する時間と比較すると、新しいOracleデータベースを作成するのに必要な時間は非常に長くなります。さらにSQL-Serverでは、SQL-Serverインスタンスの名前を変更できます。 [通常、SQL-Serverが実行されているサーバーの名前を変更し、サーバーの名前も変更するまで問題が発生します]。
9i以降、dbnewidユーティリティ(nid)を使用してデータベース名(および必要に応じてDBID)を変更できます。データベース名のみを変更する場合、resetlogsは不要です。
マウントモードの1つの起動データベース
shutdown immediate
startup mount
2 nidを実行してデータベース名を変更します。
nid target=sys/syspassword@dbtns dbname=newname setname=YES
3マウントモードでデータベースをシャットダウンして起動します。
shutdown immediate
startup mount
4変更db_name
in 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
制御ファイルを再作成する必要があります
この post Kaunain Ahmedによる必要な手順について説明します。
- 実行:トレースするデータベースバックアップ制御ファイルを変更します。
- background-dump-destination tracefileから「create controlfile」コマンドを抽出します。
- dBをシャットダウンします。
- Init.oraのDB名を変更し、init.oraを変更します。
- / etc/oratabまたは/ var/opt/Oracle/oratabでSIDを変更します
- ご使用の環境でSIDを変更し、それを入手します
- データベースを起動して、マウント状態の起動マウントを行います。
- 位置2のステートメントを使用して制御ファイルを再作成します。
- Alter database rename global_nameを10に変更します。それに応じてTNS構成を変更します$ Oracle_HOME/network/admin/*。ora SIDとGLOBAL_NAMEを探します
スレッドで参照されている他のツールがあります。
これは、プロセスをより詳細に参照するAskTomによる post です。 10gですが、動作するはずです。
はい、できますし、それも非常に簡単です。
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を変更する必要がある場合にのみ必要です。ソースデータベースのバックアップに悪影響を与える可能性のある事故を防ぐためにDBIDを変更する必要があるクローン操作の後に、nidが必要です。