日期:2014-05-16  浏览次数:20441 次

oracle10g 手工建库 (非OMF)

oracle10g 手工建库 (非OMF)



平台:RHEL4.8,Oracle10.2.0.1
规划:db_name = dndn, db_unique_name/ORACLE_SID = dndn
上面这两个参数也可以设置成不一样。


1. 设置环境变量

$ export ORACLE_BASE=/u01/app/oracle
$ export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
$ export ORACLE_SID=dndn




2. 建初始化参数文件
$ vi $ORACLE_HOME/dbs/init$ORACLE_SID.ora
#以下为建库必需参数
control_files = (/u01/app/oracle/oradata/control1.ctl,/u01/app/oracle/oradata/control2.ctl,/u01/app/oracle/oradata/control3.ctl)
undo_management = AUTO
undo_tablespace = UNDOTBS1
db_name = dndn
db_unique_name = dndn
db_block_size = 8192
sga_max_size = 320M
sga_target = 320M


#以下为一般建库需设置的参数,不设置就采用默认值
audit_file_dest = /u01/app/oracle/admin/dndn/adump #不设置默认$ORACLE_HOME/rdbms/adump
background_dump_dest = /u01/app/oracle/admin/dndn/bdump #不设置默认$ORACLE_HOME/rdbms/log
core_dump_dest = /u01/app/oracle/admin/dndn/cdump #不设置默认$ORACLE_HOME/rdbms/dbs
user_dump_dest = /u01/app/oracle/admin/dndn/udump #不设置默认$ORACLE_HOME/rdbms/log
db_domain =jsu.com #不设置默认为空
open_cursors = 1500 #不设置默认50
processes = 500 #不设置默认40
log_archive_dest_1 = 'LOCATION=/u01/app/oracle/arch/dndn' #不设置默认为空,归档存储在$ORACLE_HOME/rdbms/dbs/arch
log_archive_format = 'log_%t_%s_%r.arc' #不设置默认为%t_%s_%r.dbf
job_queue_processes = 10 #不设置默认为0
undo_retention = 10800 #不设置默认为900


#如果需要开通审计功能,设置如下参数
audit_sys_operations = TRUE
audit_trail = db,extended #这里注意,如果将来会转换成物理备库,这里就不能设置db,否则将来物理备库没法打开read only模式




3. 建立密码文件
$ $ORACLE_HOME/bin/orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=runner force=y
--force——是否重写现有的文件(可选)


4. 建立需要的目录
$ rm -rf $ORACLE_BASE/admin/$ORACLE_SID
$ mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/adump
mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/bdump
mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/cdump
mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/dpdump
mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/udump
mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/pfile




#如果采用OMF管理数据库文件,则无需建立下面的目录
$ rm -rf  $ORACLE_BASE/oradata/dndn
mkdir -p $ORACLE_BASE/oradata/dndn
$ rm -rf  $ORACLE_BASE/arch/dndn
mkdir -p  $ORACLE_BASE/arch/dndn




5. 建spfile后启动实例并开始建库
$ sqlplus '/as sysdba'
SQL> create spfile from pfile; (会自动读取pfile:$ORACLE_HOME/dbs/init$ORACLE_SID.ora)
SQL> startup nomount
SQL> create database dndn CONTROLFILE REUSE 
MAXINSTANCES 8 MAXDATAFILES 100
MAXLOGHISTORY 1 MAXLOGFILES 16 MAXLOGMEMBERS 5 
character set ZHS16GBK national character set AL16UTF16
logfile group 1 ('/u01/app/oracle/oradata/dndn/redo1.log') size 50M reuse,
group 2 ('/u01/app/oracle/oradata/dndn/redo2.log') size 50M reuse,
group 3 ('/u01/app/oracle/oradata/dndn/redo3.log') size 50M reuse
datafile '/u01/app/oracle/oradata/dndn/system.dbf' size 500M reuse autoextend on next 10M maxsize unlimited extent management local
sysaux datafile '/u01/app/oracle/oradata/dndn/sysaux.dbf' size 100M autoextend on next 10M maxsize unlimited
default temporary tablespace temp tempfile '/u01/app/oracle/oradata/dndn/temp01.dbf' size 100M reuse autoextend on next 10M maxsize unlimited
undo tablespace undotbs1 datafile '/u01/app/oracle/oradata/dndn/undotbs1.dbf' size 100M reuse autoextend on next 10M maxsize unlimited
USER SYS IDENTIFIED BY "runner" USER SYSTEM IDENTIFIED BY "runner";


建库还可以考虑如下参数:
SET TIMEZONE = 'time_zone_region'
SET TIMEZONE = '{+|-} hh:mm'
FORCE LOGGING


建完库,数据库就自动open了。