Oracle 21c XE 構築手順
Oracle Database Express Edition(Oracle XE)は、無料で利用可能なOracleのデータベースです。開発中のアプリケーションの動作確認や、個人開発で利用したりします。
この記事では、Windows PCへのインストールからデータベースの利用開始までの手順を解説します。
Oracle XE とは
- 無償かつ本番環境でOracle Database XEを使用可能
- 最大12GBのユーザー・データ
- 最大2GBのデータベースRAM
- 最大2つのCPUスレッド
ステップ
1. ダウンロード
下記のリンク先から「Oracle Database XE」をダウンロードします。
「Oracle Database 21c Express Edition for Windows x64」をクリックすると、ダウンロードが開始します。
2. インストール
①ダウンロードした「OracleXE213_Win64.zip」ファイルを解凍
②作成されたフォルダ内の「setup.exe」を管理者として実行
インストーラー起動後は、「次へ」ボタンをクリックしながら、「使用許諾条項を受け入れます」にチェックを入れて進めていきます。
③宛先フォルダ画面でインストール先を設定
宛先フォルダは、例えばC:\oracle\product\21c\
に設定します。
上記の場合、Oracle環境変数は下記となります。
-
ORACLE_HOME:
C:\oracle\product\21c\dbhomeXE\
-
ORACLE_BASE:
C:\oracle\product\21c\
④データベース・パスワードを設定
Oracle Database情報で、データベース・パスワードを設定します。
このパスワードは、SYS、SYSTEM、PDBADMINスキーマのパスワードになります。
- パスワードの設定例:
sys
最後にDB関連情報が表示されれば、インストール完了です。
3. ユーザー作成
ターミナル(PowerShell)で以下のコマンドを実行していきます。
Oracle 21c XEに接続します。
sqlplus / as sysdba
接続先を確認します。
sqlshow con_name
CON_NAME
------------------------------
CDB$ROOT
CDB$ROOT
、つまりコンテナデータベース(CDB)に接続されているため、プラガブルデータベース(PDB)に接続を切り替えていきます。
初めに、存在するプラガブルデータベースを確認します。
show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 XEPDB1 READ WRITE NO
既に存在する「XEPDB1」を利用する事とします。
ALTER SESSION SET CONTAINER=XEPDB1;
セッションが変更されました。
show con_name
CON_NAME
------------------------------
XEPDB1
「XEPDB1」に接続されています。
続いてユーザーを作成します。例えば、下記とします。
- ユーザー: atman
- パスワード: atman
プロファイルは「DEFAULT」を設定し、パスワード期限を無期限に設定します。
CREATE USER atman IDENTIFIED BY atman;
GRANT CONNECT, RESOURCE TO atman;
ALTER USER atman QUOTA UNLIMITED ON users;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
プロファイルを確認してみます。
select username, profile from dba_users
where username = 'ATMAN';
プロファイルは「DEFAULT」となっていました。
SELECT * FROM DBA_PROFILES
WHERE RESOURCE_NAME = 'PASSWORD_LIFE_TIME';
プロファイルDEFAULTのパスワードが無期限となっていることを確認できればOKです。
これでユーザー作成は完了です。
補足ですが、表領域は下記になっています。
- 表領域: USERS
- 一時表領域: TEMP
確認用のSQLです。
SELECT username,default_tablespace,temporary_tablespace
FROM DBA_USERS WHERE username='ATMAN';
4. tnsnames.ora 編集
最後に、今回利用したプラガブルデータベースに接続するために、tnsnames.ora
を編集します。
tnsnames.ora
の保存場所を確認するには、tnsping
コマンドを用いてパラメータ・ファイルの保存先を調べます。
tnsping XEPDB1
TNS Ping Utility for 64-bit Windows: Version 21.0.0.0.0 - Production on 11-3月 -2023 22:52:44
Copyright (c) 1997, 2021, Oracle. All rights reserved.
パラメータ・ファイルを使用しました:
C:\oracle\product\21c\homes\OraDB21Home1\network\admin\sqlnet.ora
TNS-03505: 名前の解決に失敗しました。
上記のパラメータファイル(sqlnet.ora)と同ディレクトリに、tnsnames.ora
が保存されています。
次に、tnsnames.ora
を開いて、ファイルの最後に以下の記述を追加します。
XEPDB1=
(DESCRIPTION=
(LOAD_BALANCE=off)
(ADDRESS=
(PROTOCOL=tcp)
(HOST=localhost)
(PORT=1521)
)
(CONNECT_DATA=
(SERVICE_NAME=XEPDB1)
(FAILOVER_MODE=
(TYPE=select)
(METHOD=basic)
)
)
)
コマンドプロンプトで、tnspingで接続確認します。
tnsping XEPDB1
OKと表示されれば、問題無しで完了です。
Discussion