OracleDatabaseをインストールしたら、テスト用にデータベースを作成する。一応OracleMasterを狙っているので、DatabaseConfigurationAssistantなんてものは使わず、CREATE DATABASEコマンドを発行して作りたい。
Oracleの操作は全てoracleユーザで行うため、oracleユーザでログインする。
次のようなデータベースを作成する。各ファイルの分散などは一切考えず、とりあえず1つのディレクトリに全て配置する。
ORACLE_SID orcl901 初期データベース格納先 /opt/oracle/product/9.0.1/oradata/ora901 SYSTEM表領域 system01.dbf 100MB Redoログファイル 2グループ作成し、各グループにファイルは1つ
/opt/oracle/oradata/ora901/log1a.rdo、/opt/oracle/oradata/ora901/log2a.rdoUNDO表領域 undotbs01.dbf 50MB TEMPORARY表領域 temp01.dbf 100MB キャラクタセット JA16EUC ※ 各国語キャラクタ・セット AL16UTF16 ※OSがLINUXなので、内部データをEUCに統一する。クライアント側はEUCでもSJISでもOK。
上記の要件を満たすCREATE DATABASE文は次のようになる。
CREATE DATABASE orcl901 DATAFILE '/opt/oracle/product/9.0.1/oradata/ora901/system01.dbf' SIZE 100M LOGFILE GROUP 1 ('/opt/oracle/oradata/ora901/log1a.rdo') SIZE 1M, GROUP 2 ('/opt/oracle/oradata/ora901/log2a.rdo') SIZE 1M UNDO TABLESPACE undotbs DATAFILE '/opt/oracle/product/9.0.1/oradata/ora901/undotbs01.dbf' SIZE 50M DEFAULT TEMPORARY TABLESPACE temp TEMPFILE '/opt/oracle/product/9.0.1/oradata/ora901/temp01.dbf' SIZE 100M CHARACTER SET ja16euc NATIONAL CHARACTER SET al16utf16;SQL*Plusを起動してこのコマンドを入力してもよいが、面倒なのでファイルとして保存する。(例、$ORACLE_HOME/createdb_orcl901.sql)
Oracleの起動にはパラメータファイルが必要である。init.oraファイルを、作成したいインスタンス用に用意する。
$ cd $ORACLE_HOME/dbs
$ cp init.ora initorcl901.ora作成したパラメータファイルをviで開き、編集する。
$ vi initorcl901.ora 変更するパラメータは次のとおり。
パラメータ 変更後 変更前 補足 db_name orcl901 DEFAULT db_domain サーバのドメイン名 us.acme.com コメントもはずすこと control_files ('/opt/oracle/oradata/ora901/control01.ctl') (ora_control1, ora_control2) compatible 9.0.1 8.1.0 コメントもはずすこと また、UNDOセグメントを作成するため、次の行を追加する。
# UNDO Segment
undo_management = AUTO
undo_tablespace = undotbs
初期データベースファイルおよびREDOログファイル、制御ファイルをを格納するディレクトリを作成する。
$ mkdir $ORACLE_HOME/oradata
$ mkdir $ORACLE_HOME/oradata/ora901
$ mkdir $ORACLE_BASE/oradata
$ mkdir $ORACLE_BASE/oradata/ora901
SQL*Plusを次のように起動する。
# sqlplus /nolog SYSDBA権限でOracleに接続する。
SQL> connect / as sysdba インスタンスをNOMOUNTで起動させる。
SQL> startup nomount 「ORACLEインスタンスが起動しました」というメッセージが出れば成功。CREATE DATABASE文を発行する。
SQL> @$ORACLE_HOME/createdb_orcl901 「データベースが作成されました」というメッセージが出れば成功。作成と同時にオープンされているので、パラメータを確認してみよう。
SQL> show parameter
・・・パラメータファイルの変更が反映されていることが確認できる・・・
データベースは作成しただけでは使えず、データ・ディクショナリ・ビューと標準パッケージを作成しなければならない。
データ・ディクショナリ・ビューはcatalog.sqlを、標準パッケージはcatproc.sqlを実行すると作成されるので、SQL*Plusで次のように実行する。
SQL> @$ORACLE_HOME/rdbms/admin/catalog
SQL> @$ORACLE_HOME/rdbms/admin/catproc