ITスキル

【OracleXE】Oracle一般ユーザの設定とDADの立ち上げ

Oracle XEを使った簡易Webアプリ開発。Oracle一般ユーザの設定とDADの立ち上げを行います。

Oracle一般ユーザの設定

前回作成したOracle環境にsqlplusで接続。新規ユーザ「mejiro」を作成し、パスワードを「mejiropass」とします。
続けて、今後の各種作業に必要な権限の付与までを行います。

ユーザ「mejiro」の作成

sqlplus system/OraPassword@XE
ログイン完了後にユーザ「mejiro」を作成。
create user mejiro identified by mejiropass;
ユーザ「mejiro」に各種権限を付与。
GRANT CONNECT TO mejiro;
GRANT UNLIMITED TABLESPACE TO mejiro;
GRANT CREATE TABLE TO mejiro;
GRANT CREATE PROCEDURE TO mejiro;
GRANT CREATE VIEW TO mejiro;

これでユーザー「mejiro」が作成されました。
connect mejiro/mejiropass@XEや、
sqlplus mejiro/mejiropass@XEといったコマンドで接続可能になります。
しかし、まだSYSTEMユーザのまま次の作業をおこないます。

DADの設定

SYSTEMユーザのまま、DADの設定もしてしまいましょう。

DADの作成

EXEC DBMS_EPG.CREATE_DAD('DAD','/DAD_WEB_SERVICE/*');
PL/SQL procedure successfully completed.

これだけでOK。
続けて1521ポートと8081ポートの接続を許容するようにします。
今回はCentOS7を使っているので以下のようになります。

ポートの開放(CentOS7)

firewall-cmd --zone=public --add-port=8081/tcp
firewall-cmd --zone=public --add-port=1521/tcp

8081ポートはWebアクセス用のポート、1521はsqlplusなどで外部からDBインスタンスに接続するためのポートです。
上記は一時設定版です。永続的に設定を反映させる場合は、末尾に「--permanent」を付ければOKです。

CentOS6の場合はこのような方法で。

ポートの開放(CentOS6)

編集画面を起動。
vi /etc/sysconfig/iptables
編集画面で、以下の2行を追加。
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8081 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT
保存完了後、iptablesを再実行。
/etc/init.d/iptables restart

接続の確認

1521ポートの確認

※Oracle Clientがインストールされている前提で。
Tnsnames.oraに以下の記述を追記します。

Tnsnames.oraを上書き保存したら、コマンドプロンプトで以下のように入力。
これでOracleDBに接続できるはずです。

sqlplus mejiro/mejiropass@XE_SAKURA

8081ポートの確認

インターネットブラウザを立ち上げて、以下のURLを入力してみてください。
http://VPSのIPアドレス:8081/DAD_WEB_SERVICE

こんな感じの画面が表示されればひとまずはOKです。
ここではOracleXEのユーザ名とパスワードを入力します。
SYSTEMユーザのものでもいいですし、さっき作ったmejiroでも可。
ただ、何もページを作っていないので、エラーメッセージが表示されるだけですが。
おそらく10回間違えるとロックがかかってしまうので、不安な場合は「キャンセル」を押してください。

おつかれさまでした。今回はここまでです。次回は、DADでカンタンなページをつくってみます。

COMMENT

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください