Oracle その他

DBCA でアンダースコアを含む SID でシングルDB を作成しようとしたら、DBT-10322 が発生する

SID にアンダースコアを含ませたいんだけどできないのかな?

アンダースコアを含む SID で Oracle シングル環境を作成しようとしたら、以下のようなエラーがでる。

DBT-10322: 指定されたstringに英数字以外が含まれています。

エラーメッセージの通りなのだが、SID に記号を含めることができないのだ。

RAC の場合アンダースコアを SID に含めることができるが、シングルでは含めることができない。

これは仕様であり、もしもシングル環境で SID にアンダースコアを含めた環境が作成できたとしても、サポート対象外となってしまうので SID に記号を含めることはやめておこう。

データベース名とORACLE_SID

Oracle Service Identifier (SID)接頭辞はデータベース名の最初の8文字です。SID接頭辞には、a-z、A-Zおよび0-9の文字のみを使用できます。SID接頭辞には、オペレーティング・システムの特殊文字を含めることはできないため、データベース名の最初の8文字に特殊文字を使用した場合、この特殊文字はSID接頭辞では省略されます。各データベースに1つのSID接頭辞があります。データベースのSID接頭辞は、クラスタ内で一意である必要があります。

Oracle RACデータベースの場合、各インスタンスに、SID接頭辞とインスタンス番号で構成される一意の識別子(ORACLE_SID)があります。ORACLE_SID接頭辞に使用できるのは、12文字までです。Oracle RACデータベース・インスタンスのORACLE_SIDは、そのデータベースに選択した管理方法に応じて異なる方法で生成されます。ポリシー管理型のデータベースを選択した場合、Oracleはname_# (nameはDB_UNIQUE_NAMEの最初の8文字の英数字で、#はインスタンス番号)という形式のSIDを生成します。管理者管理データベースを選択した場合、Oracle Database Configuration Assistantは、name# (nameはDB_UNIQUE_NAMEの最初の8文字の英数字で、#はインスタンス番号)という形式を使用して、インスタンス名のデフォルトSIDを生成します。ただし、インストール中またはデータベース作成中に、SIDのデフォルト以外の値を指定できます。インスタンスごとに、インスタンス番号がこの文字列の末尾に自動的に追加されます。

Oracle RAC One Nodeデータベースの場合、インスタンス名はORACLE_SID_1で、これはSID接頭辞に「_1」を加えて構成されています。オンライン再配置の際には、2番目のインスタンスORACLE_SID_2が起動し、再配置の完了後にはそれが唯一のインスタンスになります。次のオンライン再配置では、新しいインスタンスとしてORACLE_SID_1が使用されます。

https://docs.oracle.com/cd/F19136_01/riwin/selecting-a-database-name.html#GUID-3C954866-8375-4319-9184-CAA5F3B299D4
データベース名の選択
データベース名の選択

docs.oracle.com

この記事が役に立ったという方は
ボタンをポチッとしてくれたら喜びます

-Oracle, その他
-