ボールを蹴りたいシステムエンジニア

ボール蹴りが大好きなシステムエンジニア、ボールを蹴る時間確保の為に時間がある時には勉強する。

LinuxへのOracleXE11インストール(さくらVPS)

今回はOracleの勉強って事で、LinuxOracleXEをインストールします。

Oracle XEとは?

個人や小規模環境向けの制限付き無料版のOracleです。

制限
  • CPU: 最大1CPU使用
  • メモリ: 最大1GBが使用
  • DBインスタンス数: 1
  • データベースサイズ: 最大11GBが使用可能(10gXE最大4GB)
  • OS: Windows32bit, Linux64bit


商用利用可能みたいですが、制限がありますし
無償なのでサポートも無いみたいなので、
実質的には個人の小規模システムや勉強用として利用するのがメインでしょう。

【速報】Oracle無償版:Oracle Database 11g Express Edition(XE)がリリースされました! (オラクルエンジニア通信 - 技術資料、マニュアル、セミナー)

Oracle Database XEの知名度 | OracleのQ&A【OKWave】

環境

今回のインストール環境は以下の通りです

さくらVPS
Linux
CentOS release 6.4 (Final) 64bit
Oracle Database Express Edition 11g (XE)

1.ダウンロード

ユーザー登録

OracleXEのダウンロードの為にはOracleのユーザー登録が必要です。
まずはユーザー登録を済ませましょう

ダウンロード

Oracleアカウントログイン後
以下のページにアクセスし「ライセンスに同意する」にチェックして
Oracle Database Express Edition 11g Release 2 for Linux x64」をクリック
※最新バージョンしかないようです

Oracle Database Express Edition 11g Release 2のダウンロード

2.必要パッケージのインストール

公式ドキュメントにもありますが、glibc, binutils, gcc, libaioを入れる必要があります。
とりあえずyumで入れます

yum install glibc
yum install binutils
yum install gcc
yum install glibc

Oracle® Database Express Edition

3.インストール

サーバーアップロード

ダウンロードした圧縮ファイルをWinSCPとかでサーバーにアップロードします。
今回は/usr/local/src/にアップロードしました
約300MBが30分掛かった、、回線のせい?

解凍
cd /usr/local/src/
unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip 

ls Disk1
oracle-xe-11.2.0-1.0.x86_64.rpm  response  upgrade

Disk1ってディレクトリが展開され、そのなかにrpmファイルがあります

インストール
cd Disk1/
rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm

Preparing...                ########################################### [100%]
   1:oracle-xe              ########################################### [100%]
Executing post-install steps...
You must run '/etc/init.d/oracle-xe configure' as the root user to configure the database.

configureを実行せよってメッセージが出ますので実行

/etc/init.d/oracle-xe configure

途中、色々とポートやアカウントやらの設定があります。
↓↓↓

Oracle Application Expressを立ち上げるために使用するポート番号です。
デフォルトは8080ですが、8080はTomcatに使用していますので7070に設定しました。
Oracle Application Express(Oracle APEX)は、Oracleデータベース用の宣言型高速Webアプリケーション開発ツールです。 完全にサポートされた無償のオプションとして、Oracle Databaseのすべてのエディションで使用できます。

Specify the HTTP port that will be used for Oracle Application Express [8080]:

Oracleリスナーのポート番号です。
デフォルト通り1521に設定しました。

Specify a port that will be used for the database listener [1521]:

DBのアカウントのパスワードです(sysとsystemもこのパスワードになる)
適用にoracleってしました

Specify a password to be used for database accounts.  Note that the same
password will be used for SYS and SYSTEM.  Oracle recommends the use of 
different passwords for each database account.  This can be done after 
initial configuration:

Oracleインストールの最終確認ですyを入力エンター

Do you want Oracle Database 11g Express Edition to be started on boot (y/n) [y]:

インストール完了!でいいのかな・・・?

Configuring database...Done
Starting Oracle Database 11g Express Edition instance...Done
Installation completed successfully.

4.環境変数設定

sqlplusを使う為の設定です。
ORACLE_HOMEなどの環境変数が定義されているスクリプトを読み込むように設定します。
Oracleを使うユーザの.bashrcに以下の1行を追加します。

vi ~/.bashrc 

↓最終行に追加↓
. /u01/app/oracle/product/11.2.0/xe/bin/oracle_env.sh

再読み込み

source ~/.bashrc 

これでsqlplusが利用できます。


5.動作確認

systemユーザーでsqlplusログイン

パスワードは先程設定したものを入力します

sqlplus

SQL*Plus: Release 11.2.0.2.0 Production on Sat Sep 28 23:22:41 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Enter user-name: system
Enter password: 

Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production

ログインできました!
インストール成功です。

ってあれ、メッセージが日本語じゃないんですけど・・

ユーザー作成

ユーザー名・パスワードがtestのユーザーを作成

SQL> create user test identified by test;

User created.

ユーザーを作成しただけではログインができません。
ログインする為にログイン権限を付与します。

SQL> GRANT CONNECT TO test;

Grant succeeded.

権限を付与しないとログイン時に以下の様なエラーが出てログインできません

ERROR:
ORA-01045: user TEST1 lacks CREATE SESSION privilege; logon denied

systemユーザーでログアウトしてtestユーザーでログインできればOKです

Enter user-name: test
Enter password: 

Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production


以上でOracleのインストールは終了です。
思っていたよりスムーズにできました。
次回はOracleの操作を色々とやってみようと思います。