在Linux平台上手动创建数据库(Oracle 10g)
安装完Oracle软件后,不使用dbca创建数据库,而手动创建数据库,主要目的是了解数据库创建
的过程中主要进行了那些操作。
1.首先设置要创建的ORACLE的SID,如果在.bash_profile文件里设置里该变量,就不用设置了。
$echo $ORACEL_SID
ora10
设置oracle用户环境文件
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=ora10
export ORACLE_TERM=xterm
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
unset USERNAME
"~/.bash_profile" 18L, 469C
如果没有设置,就手动设置,如果一个服务器上要运行多个ORACLE实例,也需要手动设置。
export ORACLE_SID=ora10
2. 创建需要的诊断目录,这些目录都是ORACLE进程遇到错误或用户手动TRACE时需要的。
mkdir -p /oradata/admin/ora10/adump
mkdir -p /oradata/admin/ora10/bdump
mkdir -p /oradata/admin/ora10/cdump
mkdir -p /oradata/admin/ora10/udump
mkdir -p /oradata/admin/ora10/pfile
创建oracle的数据文件目录
mkdir -p /oradata/ora10
3. 创建ORACLE的参数文件$ORACLE_HOME/dbs/initora10.ora 内容如下:
aq_tm_processes=0
audit_file_dest=/oradata/admin/ora10/adump
background_dump_dest=/oradata/admin/ora10/bdump
compatible=10.2.0.1.0
control_files=/oradata/ora10/control01.ctl, /oradata/ora10/control02.ctl,
/oradata/ora10/control03.ctl
core_dump_dest=/oradata/admin/ora10/cdump
db_block_size=8192
db_domain=""
db_file_multiblock_read_count=16
db_name=ora10
instance_name=ora10
dispatchers="(PROTOCOL=TCP) (SERVICE=mydbXDB)"
job_queue_processes=10
nls_length_semantics=BYTE
open_cursors=300
pga_aggregate_target=94371840
processes=150
remote_login_passwordfile=EXCLUSIVE
resource_manager_plan=""
sessions=170
sga_target=285212672
undo_management=AUTO
undo_retention=900
undo_tablespace=UNDOTBS1
user_dump_dest=/oradata/admin/ora10/udump
4.创建密码文件
orapwd file=$ORACLE_HOME/dbs/orapwora10 password=oracle entries=5 force=y
5.创建oracle的建库脚本 createdb.sql,内容如下:
create database ora10
MAXINSTANCES 1
MAXLOGHISTORY 1
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXDATAFILES 100
DATAFILE
'/oradata/ora10/system01.dbf' size 100m reuse autoextend on next 1m maxsize
unlimited extent management local
sysaux datafile
'/oradata/ora10/sysaux01.dbf' size 100m reuse autoextend on next 1m maxsize
unlimited
default temporary tablespace TEMP tempfile
'/oradata/ora10/temp01.dbf' size 20m reuse autoextend on next 640k maxsize unlimited
undo tablespace UNDOTBS1 datafile
'/oradata/ora10/undo01.dbf' size 20m reuse autoextend on next 5M maxsize unlimited
logfile
GROUP 1 ('/oradata/ora10/redo1.dbf') size 10m,
GROUP 2 ('/oradata/ora10/redo2.dbf') size 10m,
GROUP 3 ('/oradata/ora10/redo3.dbf') size 10m
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16
;
启动数据库到nomount状态,执行创建数据库脚本 createdb.sql
6.数据库创建完成后,再创建ORACLE的数据字典。
sys用户登录
SQL>@?/rdbms/admin/catalog.sql
SQL>@?/rdbms/admin/catproc.sql
SQL>@?/rdbms/admin/catexp.sql
7.建立监听和本地服务名
listener.ora
到此ORACLE手动创建过程就完成了