Skip to content

Instantly share code, notes, and snippets.

@seraphy
Created January 4, 2012 11:18
Show Gist options
  • Select an option

  • Save seraphy/1559620 to your computer and use it in GitHub Desktop.

Select an option

Save seraphy/1559620 to your computer and use it in GitHub Desktop.
データベース「orclutf8」の構築手順
データベース「orclutf8」の構築手順
cat $ORACLE_HOME/dbs/initorclutf8.ora
################
aq_tm_processes=0
audit_file_dest='/export/oracle/admin/orclutf8/adump'
audit_trail ='db'
compatible ='11.1.0'
control_files = (/export/oracle/oradata/orclutf8/ora_control1, /export/oracle/oradata/orclutf8/ora_control2)
db_block_size=8192
db_domain=''
db_name='orclutf8'
processes = 150
db_recovery_file_dest='/export/oracle/flash_recovery_area'
db_recovery_file_dest_size=2147483648
diagnostic_dest='/export/oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=orclutf8XDB)'
memory_target=876609536
nls_length_semantics=BYTE
open_cursors=300
processes=150
remote_login_passwordfile='EXCLUSIVE'
resource_manager_plan=""
undo_retention=900
undo_tablespace='UNDOTBS1'
################
sqlplus /nolog
connect / as sysdba
create spfile='/export/oracle/product/11.1.0/db_1/dbs/spfileorclutf8.ora' from pfile='/export/oracle/product/11.1.0/db_1/dbs/initorclutf8.ora';
shutdown
sqlplus / as sysdba
CREATE DATABASE orclutf8
USER SYS IDENTIFIED BY systemmanager
USER SYSTEM IDENTIFIED BY systemmanager
LOGFILE GROUP 1 ('/export/oracle/oradata/orclutf8/redo01.log') SIZE 100M,
GROUP 2 ('/export/oracle/oradata/orclutf8/redo02.log') SIZE 100M,
GROUP 3 ('/export/oracle/oradata/orclutf8/redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
DATAFILE '/export/oracle/oradata/orclutf8/system01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE '/export/oracle/oradata/orclutf8/sysaux01.dbf' SIZE 325M REUSE
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE '/export/oracle/oradata/orclutf8/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE UNDOTBS1
DATAFILE '/export/oracle/oradata/orclutf8/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
connect sys/systemmanager as sysdba
CREATE TABLESPACE users LOGGING
DATAFILE '/export/oracle/oradata/orclutf8/users01.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
CREATE TABLESPACE indx LOGGING
DATAFILE '/export/oracle/oradata/orclutf8/indx01.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
exit
cd $ORACLE_HOME/rdbms/admin
sqlplus sys/systemmanager as sysdba
@catalog.sql
@catproc.sql
alter database default tablespace users;
shutdown immediate
exit
vim /etc/oratab
######
orcl:/export/oracle/product/11.1.0/db_1:N
orclutf8:/export/oracle/product/11.1.0/db_1:Y
######
sudo /sbin/service oracle stop
sudo /sbin/service oracle start
sqlplus system/systemmanager
CREATE TABLESPACE app LOGGING
DATAFILE '/export/oracle/oradata/orclutf8/app01.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
CREATE TABLESPACE appindx LOGGING
DATAFILE '/export/oracle/oradata/orclutf8/appindx01.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
create user app identified by app default tablespace app;
grant connect to app;
grant resource to app;
exit
cd /export/oracle/product/11.1.0/db_1/sqlplus/admin
sqlplus system/systemmanager
@pupbld.sql
exit
sqlplus app/app
exit
[[WindowsでのOracle11gR2データベースの構築手順]]
-- 現時点では、スクリプトの実行あたりが不完全なので注意 --
参考資料:
http://docs.oracle.com/cd/E16338_01/server.112/b56301/toc.htm
[1. 環境変数の設定]
管理者権限でコマンドプロンプトを空き、以下の環境変数を設定する。
set ORACLE_SID=ORCLUTF8
set ORACLE_HOME=D:\oracle\product\11.2.0\dbhome_1
エラーメッセージがまれに文字化けるため、必要ならば、以下も設定しておく。
(日本語が表示できない、エラーメッセージがが英文なら文字化けないので意味は理解できる。)
set NLS_LANG=american_AMERICA.JA16SJIS
[2. フォルダの作成]
あらかじめフォルダを作成しておく。
mkdir D:\ORACLE\ORADATA\ORCLUTF8\
mkdir D:\oracle\admin\ORCLUTF8\
[3. 初期化パラメータの作成]
以下に初期化パラメータファイルを作成する。
初期化パラメータのデフォルト位置とデフォルトの命名規則で設置することで、
データベースインスタンスの起動時に自動的にインスタンス名からpfileを読み込む。
(デフォルト以外の場所に指定した場合はstartup時にオプションでpfile=xxxで明示する必要がある。)
D:\oracle\product\11.2.0\dbhome_1\database\initORCLUTF8.ora
内容
################
db_name='ORCLUTF8'
memory_target=1G
processes = 150
audit_file_dest='D:\oracle\admin\ORCLUTF8\adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='D:\oracle\flash_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='D:\oracle'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLUTF8)'
open_cursors=300
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
control_files = (D:\oracle\oradata\ORCLUTF8\ora_control1, D:\oracle\oradata\ORCLUTF8\ora_control2)
compatible ='11.2.0'
################
ディレクトリはOracleのインストール場所にあわせ、適宜修正のこと。
[3. インスタンスと、そのサービスを作成する]
databaseフォルダに移動
cd D:\oracle\product\11.2.0\dbhome_1\database\
インスタンスとサービスの作成
oradim -NEW -SID ORCLUTF8 -STARTMODE MANUAL -PFILE D:\oracle\product\11.2.0\dbhome_1\database\initORCLUTF8.ora
パスワードファイルの作成
orapwd file=PWDORCLUTF8.ora password=Systemmanager1
[4. サーバー・パラメータファイルの変換]
SQL*Plusを使いDBAでアイドル・インスタンスに接続し、
サーバー・パラメータファイルを初期化パラメータファイルから作成する。
sqlplus /nolog
connect sys as sysdba
create spfile='D:\oracle\product\11.2.0\dbhome_1\database\spfileORCLUTF8.ora'
from pfile='D:\oracle\product\11.2.0\dbhome_1\database\initORCLUTF8.ora';
[5. データベースの作成]
インスタンスを「マウントせず」に起動する。
(まだデータベースがないためマウントできない。)
startup nomount
データベースを作成する。
CREATE DATABASE ORCLUTF8
USER SYS IDENTIFIED BY Systemmanager1
USER SYSTEM IDENTIFIED BY Systemmanager1
LOGFILE GROUP 1 ('D:\oracle\oradata\ORCLUTF8\redo01.log') SIZE 100M,
GROUP 2 ('D:\oracle\oradata\ORCLUTF8\redo02.log') SIZE 100M,
GROUP 3 ('D:\oracle\oradata\ORCLUTF8\redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
MAXINSTANCES 1
CHARACTER SET AL32UTF8
NATIONAL CHARACTER SET AL16UTF16
DATAFILE 'D:\oracle\oradata\ORCLUTF8\system01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL
SYSAUX DATAFILE 'D:\oracle\oradata\ORCLUTF8\sysaux01.dbf' SIZE 325M REUSE
DEFAULT TEMPORARY TABLESPACE temp
TEMPFILE 'D:\oracle\oradata\ORCLUTF8\temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE UNDOTBS1
DATAFILE 'D:\oracle\oradata\ORCLUTF8\undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
[6. APPUSER用の表領域の作成]
-- データ用
CREATE TABLESPACE APPUSER LOGGING
DATAFILE 'D:\oracle\oradata\ORCLUTF8\APPUSER.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
-- インデックス用
CREATE TABLESPACE APPUSER_IDX LOGGING
DATAFILE 'D:\oracle\oradata\ORCLUTF8\APPUSER_IDX.dbf'
SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL;
-- 一時表領域用
create temporary tablespace APPUSER_TMP
tempfile 'D:\oracle\oradata\ORCLUTF8\APPUSER_TMP.dbf'
size 10m reuse
extent management local uniform size 1m
[7. 標準のビューやPLSQLパッケージなどの設定]
インストール中のログをとっておく。
spool c:\TEMP\inst.log
@?/rdbms/admin/catalog.sql
@?/rdbms/admin/catproc.sql
@?/sqlplus/admin/pupbld.sql
spool off
exit
ログを確認する。ORA-04043などのエラーは無視しても良い。
[8. Oracleの再起動]
シャットダウンする。
shutdown immediate
サービスも停止する。
net stop OracleServiceORCLUTF8
再起動する。
net start OracleServiceORCLUTF8
(必要に応じてコンパネでサービスを自動起動にしておく。)
[9. APPUSERスキーマ作成、権限付与]
-- ADMINUSERスキーマ作成
CREATE USER ADMINUSER IDENTIFIED BY mrsystem002;
-- ADMINUSERにはDBA権限付与
GRANT DBA TO ADMINUSER;
-- APPUSERスキーマ作成
CREATE USER APPUSER IDENTIFIED BY APPUSER
default tablespace APPUSER
temporary tablespace APPUSER_TMP;
-- APPUSERには接続とリソース権限付与
grant connect, resource to APPUSER;
[10. SYSTEMユーザとして、スクリプトの追加実行]
cd D:\oracle\product\11.2.0\dbhome_1\sqlplus\admin
sqlplus System/Systemmanager1
@pupbld.sql
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment