GNU/Linux >> Linux の 問題 >  >> Linux

Oracle データベースの SID を変更できますか?

制御ファイルを再作成する必要があります

Kaunain Ahmed によるこの投稿では、必要な手順について説明しています。

<ブロック引用> <オール>
  • do:データベースのバックアップ制御ファイルを trace に変更します;
  • background-dump-destination トレースファイルから「create controlfile」コマンドを抽出します。
  • DB をシャットダウンします。
  • init.ora の DB 名を変更し、init.ora を変更します
  • /etc/oratab または /var/opt/oracle/oratab の SID を変更します
  • お使いの環境で SID を変更し、それを取得します
  • データベースを起動して mount-statusstartup マウントする
  • 位置 2 のステートメントで制御ファイルを再作成します。
  • alter database rename global_name を 10 に変更します。それに応じて TNS 構成を変更します$ORACLE_HOME/network/admin/*.ora SID と GLOBAL_NAME を探します
  • スレッドで参照されている他のツールがあります。

    これは、プロセスをより詳細に参照する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 を変更する必要があるクローン操作の後に必要です。


    Linux
    1. Ubuntu でホスト名を変更する方法

    2. GDB は実行中のプログラムのアセンブリ コードを変更できますか?

    3. システムがロックされるまでの時間を変更するにはどうすればよいですか?

    1. NFS エクスポートの名前を変更できますか

    2. 既存のアレイのメタデータ バージョンを変更できますか?

    3. updatedb データベースはどこにありますか?

    1. LinuxシステムのIDを変更する方法

    2. ホスト名を変更する方法は?

    3. Geditでタブの色を変更できますか?