Oracle でデータベースを手動で作成してみた。環境は Oracle10gR2(10.2.0.4) on Solaris10。
細かいことは気にせずにとりあえず作ってみる。わかちこわかちこ〜
- ディレクトリを作成する。
$ mkdir -p $ORACLE_BASE/admin/matrix/scripts $ mkdir -p $ORACLE_BASE/oradata/matrix
- 初期化パラメータファイルを作成する。
$ vi $ORACLE_HOME/dbs/initmatrix.ora control_files = (/export/home/oracle/oradata/matrix/control01.ctl) db_name = matrix db_block_size = 8192 undo_management = AUTO undo_tablespace = undotbs compatible = 10.2.0 shared_pool_size = 100M
- データベース作成スクリプトを作成する。
$ vi $ORACLE_BASE/admin/matrix/scripts/create_database.sql CREATE DATABASE matrix LOGFILE GROUP 1 ('/export/home/oracle/oradata/matrix/redo01.log') SIZE 100M, GROUP 2 ('/export/home/oracle/oradata/matrix/redo02.log') SIZE 100M, GROUP 3 ('/export/home/oracle/oradata/matrix/redo03.log') SIZE 100M MAXLOGFILES 5 MAXLOGMEMBERS 5 MAXLOGHISTORY 1 MAXDATAFILES 100 MAXINSTANCES 1 CHARACTER SET JA16SJISTILDE NATIONAL CHARACTER SET AL16UTF16 DATAFILE '/export/home/oracle/oradata/matrix/system01.dbf' SIZE 50M REUSE AUTOEXTEND ON SYSAUX DATAFILE '/export/home/oracle/oradata/matrix/sysaux01.dbf' SIZE 50M REUSE AUTOEXTEND ON DEFAULT TEMPORARY TABLESPACE temp TEMPFILE '/export/home/oracle/oradata/matrix/temp01.dbf' SIZE 20M REUSE AUTOEXTEND ON UNDO TABLESPACE undotbs DATAFILE '/export/home/oracle/oradata/matrix/undotbs01.dbf' SIZE 50M REUSE AUTOEXTEND ON;
- データベースを作成する。
$ cd /export/home/oracle/admin/matrix/scripts $ export ORACLE_SID=matrix $ sqlplus / as sysdba SQL> spool create_database.log SQL> startup nomount SQL> @create_database SQL> spool off
- 動的パフォーマンスビュー、データ・ディクショナリビューと標準PL/SQLパッケージを作成する。
SQL> spool build.log SQL> @?/rdbms/admin/catalog SQL> @?/rdbms/admin/catproc
SQL> conn system/manager SQL> @?/sqlplus/admin/pupbld SQL> spool off
- 表領域を作成する。
SQL> create bigfile tablespace users datafile '/export/home/oracle/oradata/matrix/user01.dbf' size 5m; SQL> alter database default tablespace users;
- REDOロググループを追加する。
SQL> alter database add logfile group 4('/export/home/oracle/oradata/matrix/redo04.log') size 10m;
- REDOロググループを多重化する。
SQL> alter database add logfile member '/export/home/oracle/oradata/matrix/redo11.log' to group 1, '/export/home/oracle/oradata/matrix/redo12.log' to group 2, '/export/home/oracle/oradata/matrix/redo13.log' to group 3, '/export/home/oracle/oradata/matrix/redo14.log' to group 4;
- 制御ファイルを多重化する。
SQL> shutdown immediate SQL> exit $ vi $ORACLE_HOME/dbs/initmatrix.ora control_files=(/export/home/oracle/oradata/matrix/control01.ctl,/export/home/oracle/oradata/matrix/control02.ctl,/export/home/oracle/oradata/matrix/control03.ctl) $ cd /export/home/oracle/oradata/matrix $ cp control01.ctl control02.ctl $ cp control01.ctl control03.ctl $ sqlplus / as sysdba SQL> startup
- ユーザを作成する。
SQL> create user scott identified by tiger default tablespace users temporary tablespace temp quota unlimited on users; SQL> grant create session, create table to scott;
- SPFILEに変更する。
SQL> create spfile from pfile='?/dbs/initmatrix.ora'; SQL> shutdown immediate SQL> quit $ cd $ORACLE_HOME/dbs $ mv initmatrix.ora initmatrix.ora.org $ sqlplus / as sysdba SQL> startup SQL> show parameter spfile NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ spfile string /export/home/oracle/product/10 .2.0/db_1/dbs/spfilematrix.ora
[参考]
Oracle Databaseの作成