本記事ではWindows11にOracleXE(Oracle Database 21c Express Edition)をインストール、セットアップする方法を紹介します。
OracleXEは無償で利用できます。
- 環境
- Windows11にOracleDB 21c XEをインストールする方法
- OracleDB 21c XEをセットアップする方法
- tnsname.ora ファイルの編集
- OracleXEにA5SQLで接続する
環境
- Windows11 Pro 24H2
- Oracle Database 21c Express Edition (Production Version 21.3.0.0.0)
Windows11にOracleDB 21c XEをインストールします。
Windows11にOracleDB 21c XEをインストールする方法
1.以下リンクから「Oracle Database Express Editon」のサイトにアクセスします。
Oracle Database Express Edition | Oracle 日本
2.「Oracle Database XEをダウンロード」を選択します。

3.「Oracle Database 21c Express Edition for Windows x64」を選択します。

4.「OracleXEXXX_Win64.zip」を展開(解凍)し、「OracleXEXXX」の中に移動します。
※OracleXEXXXのXXX部分はProduction Versionになっているようです。今回はProduction Version 21.3.0.0.0なので、213表示になっています。

5.「setup.exe」を右クリックし、「管理者として実行」を選択します。
※ユーザーアカウント制御画面が表示されたら「はい」を選択します。

6.「次へ」を選択します。

7.「使用許諾条項を受け入れる」を選択し、「次へ」を選択します。

8.インストール用の宛先フォルダを設定し、「次へ」を選択します。
※デフォルトは「C:¥app¥{ユーザー名}¥product¥21c¥」です。
今回、私は事前にDドライブにproductフォルダ、21cフォルダを作成し、宛先フォルダを変更しましたが、基本はデフォルトのままでいいと思います。
※宛先フォルダをデフォルトの「C:¥app¥{ユーザー名}¥product¥21c¥」にした場合のORACLE環境変数 ORACLE_HOME、ORACLE_BASEは、以下の通りです。
ORACLE_HOME→C:¥app¥{ユーザー名}¥product¥21c¥dbhomeXE¥
ORACLE_BASE→C:¥app¥{ユーザー名}¥product¥21c¥

9.「データベース・パスワードの入力」「データベース・パスワードの確認」にパスワードを入力し、「次へ」を選択します。
※SYS、SYSTEM、PDBADMINのパスワードになります。必ずメモなどにひかえておきましょう。

10.サマリー画面の情報を確認し、「インストール」を選択します。

11.インストールが完了するまで待ちます。

※インストール中に「OracleXEリスナーの構成がスキップされました」と表示がありましたが、「OracleXEリスナーを構成しています...」から「完了」となりました。

12.インストール完了画面で「完了」を選択します。

13.スタートメニューに「Oracle - OraDB21Home1」が表示されます。

OracleDB 21c XEをセットアップする方法
コマンドプロンプトを開きなおすと、再度CDB$ROOTからXEPDB1への接続先の変更が必要になります。
「OracleDB 21c XEをセットアップする方法」の内容については、同じコマンドプロンプトですべて実施することをおすすめします
1.SQL*PlusでOracle Database 21c Express EditionのPDBに接続する
1.コマンドプロンプトを「管理者として実行」から開きます。
2.以下コマンドを実行し、Oracle Database 21c Express Editionに接続します。
sqlplus / as sysdba
3.以下コマンドを実行し、現在の接続先を確認します。
show con_name
CDB$ROOT(コンテナデータベース)に接続されています。

4.以下コマンドを実行し、PDB(プラガブルデータベース)の一覧を表示します。
show pdbs

5.以下SQLを実行し、PDBの「XEPDB1」に接続先を変更します。
alter session set container = XEPDB1;
6.以下コマンドを実行し、接続先が「XEPDB1」に変わっていることを確認します。
show con_name

2.表領域、一時表領域の作成
1.以下SQLを実行し、表領域を作成します。
※赤文字部分は適宜変更してください。
デフォルトの場合は、「C:\app\※ユーザー名※\product\21c\oradata\XE\※任意指定※.dbf」になると思います。「C:\app\※ユーザー名※\product\21c\oradata\XE\」のパスが存在することを確認した上で、指定してください。
CREATE TABLESPACE AURORATEST DATAFILE 'D:\product\21c\oradata\XE\auroratest.dbf' SIZE 100M SEGMENT SPACE MANAGEMENT AUTO;
2.以下SQLを実行し、一時表領域を作成します。
※赤文字部分は適宜変更してください。
デフォルトの場合は、「C:\app\※ユーザー名※\product\21c\oradata\XE\※任意指定※.dbf」になると思います。「C:\app\※ユーザー名※\product\21c\oradata\XE\」のパスが存在することを確認した上で、指定してください。
CREATE TEMPORARY TABLESPACE AURORATEMP TEMPFILE 'D:\product\21c\oradata\XE\auroratemp.dbf' SIZE 100M AUTOEXTEND ON;

3.ユーザーの作成、権限付与、パスワード無期限の設定
1.以下SQLでユーザーを作成します。
※IDENTIFIED BY 部分がパスワードになります。
※default tablespaceに作成した表領域、temporary tablespaceに作成した一時表領域を指定しています。
CREATE USER aurora IDENTIFIED BY aurora default tablespace AURORATEST temporary tablespace AURORATEMP;
2.以下SQLで作成したユーザーに権限を付与します。
GRANT CONNECT, RESOURCE, DBA TO aurora;

3.以下SQLで作成したユーザーの表領域を確認します。
select username,default_tablespace,temporary_tablespace FROM DBA_USERS where username='AURORA';
4.作成したユーザーのプロファイルを確認します。
SELECT username,profile from dba_users where username = 'AURORA';
プロファイルはDEFAULTであることが分かります。
5.以下SQLでDEFAULTプロファイルのパスワード期限を確認します。
select * from dba_profiles where resource_name = 'PASSWORD_LIFE_TIME' and profile = 'DEFAULT';
パスワード期限が180日に設定されています。
6.DEFAULTプロファイルのパスワード期限を無期限に設定します。
ALTER PROFILE DEFAULT LIMIT password_life_time unlimited;
7.パスワード期限が無期限「UNLIMITED」になっていることを確認します。
select * from dba_profiles where resource_name = 'PASSWORD_LIFE_TIME' and profile = 'DEFAULT';
コマンドプロンプトは閉じて大丈夫です。
tnsname.ora ファイルの編集
1.tnsname.ora ファイルがあるフォルダまで移動します。
※デフォルトの設定の場合は、「C:¥app¥{ユーザー名}¥product¥21c¥dbhomeXE¥」(ORACLE_HOME)配下のnetwork¥admin¥にあると思います。
※tnsname.ora ファイルの場所は、以下コマンドをPowerShellで実行することで確認できます。
tnsping a
2.tnsnames.oraをコピーして、バックアップとして残しておきます。
3.すでにあるXEの接続先情報をコピーし、ファイルの末尾に貼り付けます。XEの2カ所をXEPDB1に変更して、保存します。

4.コマンドプロプロンプトを開き、作成したユーザーでデータベースに接続します。
sqlplus ユーザー/パスワード@XEPDB1
OracleXEにA5SQLで接続する
SQL*Plusよりも便利なA5SQLでOracleXEに接続をします。
1.A5SQL-mk2を起動します。
2.「データベース」、「データベースの追加と削除」を順番選択します。
3.「追加」を選択します。
4.「Oracle Database (OCI経由 or 直接接続)」を選択します。
5.接続文字列、ユーザーID、パスワードを入力し、「パスワードを保存する」にチェック。「テスト接続」を選択し、接続に成功することを確認後、「OK」を2回選択します。
※接続文字列にはXEPDB1を指定します。ユーザーID、パスワードはSQLで作成したユーザー、パスワードを設定します。
※データベースの名前を設定する画面が表示されたら「XEPDB1」のまま変更しないでOKです。
6.「閉じる」を選択し、設定画面を閉じます。
7.「XEPDB1」をダブルクリックし、ユーザーID、パスワードを入力。「接続」を選択して、データベースに接続できることを確認します。
※「パスワードを保存する」にチェックは任意で設定してください。
以上、お読みいただきありがとうございました。