Oracle Database Express Edition (XE) Downloads | Oracle 日本 公式サイトでインストーラーをダウンロード
圧縮を展開しSetupを進めると管理者用パスワードを聞いてくるので設定し、インストールをすすめる。
- リスナーを確認
SQL> lsnrctl status;
Enterprise Managerへ接続
※パスワードはインストール時に設定したパスワード
とりあえず、ここまでこれば、A5SQL Mk-2などで接続可能になる。
一旦、パスワードの有効期間を無制限に設定する。(開発用のため)
sqlplus sys/{password} as sysdba SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
ORA-65096: 共通ユーザーまたはロール名が無効です
ユーザー追加時、このエラーになる場合の対策。 ※Oracle 12以降はコンテナ・データベース(CDB)とプラガブル・データベース(PDB)と呼ばれる子DBが存在するため、sysなどのユーザーはCDBに接続した状態となり、common userしか追加できない状態となる。
- 現在接続中のCDBを確認
SQL> show con_name;
CON_NAME
------------------------------
CDB$ROOT
- PDBのリストとOPEN_MODEを確認
SQL> select name, open_mode from v$pdbs; NAME OPEN_MODE ------------------------------ PDB$SEED READ ONLY XEPDB1 READ WRITE
-> PDB名は「XEPDB1」
- PDBを変更する
SQL> alter session set container = XEPDB1; セッションが変更されました。 SQL> show con_name; CON_NAME ------------------------------ XEPDB1
- ユーザーを追加
SQL> CREATE USER my_db IDENTIFIED BY "password" DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp;
- 権限などを設定
SQL> GRANT UNLIMITED TABLESPACE TO my_db; SQL> GRANT "DBA" TO my_db; SQL> ALTER USER my_db DEFAULT ROLE ALL;
作ったユーザーでDB接続
注意:サービス名は「lsnrctl status」で確認出来る正しい名にしないとエラーにある。
「ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。」このエラーになり、少し時間を浪費してしまった。
これで、開発用DBが準備できた。