Skill Note

平凡なエンジニアがメモ代わりにプログラミング, インフラ, ネットワークを書き綴るブログ

[Oracle]データベースを再構築してOracle Expressのキャラクタセットを変更する

   

oracle

前回の記事でCSALTERを使用したキャラクタセットの変更方法を記載しましたが、サブセットのキャラクタセットからスーパセットへの変更のみ可能でした。

この記事では、データベースを再構築するキャラクタセットの変更方法を記載していきます。
データベースを再構築する方法では全てのキャラクタセットへ変更できます。

キャラクタセットの変更手順

Oracle Expressでは1つのデータベースしか作成できないので、キャラクタセットを変更するには既存のデータベースを再作成する必要があります。
Oracle Express以外の場合はDBCAなどで新規のデータベースを作成する際にキャラクタセットを指定してください。

変更手順は以下の流れで実施します。

  1. インスタンスの削除
  2. 不要ファイルの削除
  3. 初期化パラメータファイルの作成
  4. インスタンスの作成
  5. インスタンスの起動
  6. データベースの作成
  7. ユーザ表領域の作成

環境

Oracle Database Express Edition 11g Release 2

キャラクタセットの調べ方

変更手順には含まれませんが、変更前に現在のキャラクタセットを確認します。
sqlplusなどで以下のコマンドを実行します。

インスタンスの削除

データベースの停止とインスタンスの削除を行います。
コマンドプロンプトで以下のコマンドを実行します。

不要ファイルの削除

削除したインスタンス関連のファイルを削除します。

初期化パラメータファイルの作成

初期化パラメータファイルを$ORACLE_HOME/database/initXE.oraとして作成します。
インストールディレクトリを変更している場合はパスを修正してください。

インスタンスの作成

ORADIMユーティリティを使用してインスタンスを作成する。

インスタンスの起動 

作成したインスタンスを起動します。

データベースの作成

キャラクタセットとナショナルキャラクタセットを指定してデータベースを作成します。

ユーザ表領域の作成

ユーザ表領域を再作成します。

キャラクタセットの確認

データベースの作成時に指定したキャラクタセットになっているか確認します。

Google AdSense PC

Google AdSense PC

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事

sqlserer
[SQL Server]IDENTITYの値を初期化する

ID値の初期化(リセット)方法 IDENTITYプロパティを設定した列のID値を初期化(リセット)する方法を記載します。 現在のID値を確認する ID値を確認す …

sqlserer
[SQL Server]再帰SQLで集計する

WITH(共通テーブル式)を使って集計する WITH句とは 共通テーブル式 (CTE) は、単一の SELECT、INSERT、UPDATE、DELETE、CR …

sqlserer
[SQLServer]日付文字列 + 時刻文字列をDATETIME型に変換する方法

SQLServerで日付文字列 + 時刻文字列をDATETIME型に変換する方法 日付と時刻を別のカラムに格納している場合に日時データとして扱いたい場合はCON …

oracle
[Oracle]OracleからWebサービスを利用する方法

SOAPリクエストを送信してレスポンスを表示する 前回はOracleからWebサイトにアクセスする方法を記載しましたが、今回はOracleからSOAP形式のWe …

oracle
Oracle12cのPDBを自動起動にする方法

Oracle12cのプラガブル・データベース(PDB)は初期設定のままでは、毎回、手動で起動させる必要があります。 この記事ではOS起動時やOracle再起動時 …

oracle
Oracleで文字列を全角大文字に変換する(ひらがな・カタカナの小文字(捨て仮名)対応)

Oracleの文字列検索で全角半角、大文字小文字、ひらがなカタカナを区別しないであいまい検索する場合は比較対象の文字列形式を統一する必要があります。 文字列形式 …

oracle
ODP.NETをNuGetからインストールする

ODP.NETのインストール手順 Oracle 12cから公式のODP.NETがNuGetに追加されました。 この記事ではODP.NETをNuGetからインスト …

db
[Database]データベースのバージョン/エディションを確認する方法

OracleとSQLServerのバージョン/エディションを確認 Oracle

SQLServ …

oracle
Oracle12cでユーザを作成する方法

SQLコマンドを使用したユーザ作成 Oracle12cからマルチテナント・アーキテクチャが採用されており、以前までの手順ではユーザが作成できません。 ここではP …

oracle
[Oracle]トリガーの実行順序を設定する方法

FOLLOWS句を使用して実行順序を設定する 1つの表に対して同レベル(タイミング)のトリガーを複数作成することはできますが、実行順序は保証されていません。 実 …