在安装完oracle软件后,我们所做的第一件事情就是创建数据库,一般有两种方法来创建
1.用图形化工具dbca 全称即 Database Configure Assistant
2.用脚本
对于初学者来说,建议用第一种,图形化创建时有个良好的向导,可以由浅入深,下面就两种方法来介绍了
首先介绍第一种: dbca 图形化工具
在windows下 点开始 运行 输入dbca 命令, 就出现图形化界面了可以按照向导操作了,这个用的比较多
在unix/linux下也只需要启动xmanager ,然后输入dbca命令 也一样完成操作
在创建数据库时有四个选项,主要看哪个比较适合你
第二种方法:手工写脚本 有助于理解数据库的创建过程 以windows为例子:
目录下有这些文件
2008-03-06 10:11 955 CreateDB.sql
2008-03-06 10:11 631 CreateDBCatalog.sql
2008-03-06 10:11 722 CreateDBFiles.sql
2008-03-06 10:11 814 dbca.bat
2008-03-06 10:11 2,689 init.ora
2008-03-06 10:11 414 postDBCreation.sql
打开 dbca.bat 文件内容 里面内容如下:
mkdir D:\oracle\admin\dbca\bdump
mkdir D:\oracle\admin\dbca\cdump
mkdir D:\oracle\admin\dbca\create
mkdir D:\oracle\admin\dbca\pfile
mkdir D:\oracle\admin\dbca\udump
mkdir D:\oracle\ora92\database
mkdir D:\oracle\oradata\dbca --红色部分创建相关存放trace日志文件的目录
set ORACLE_SID=dbca --绿色部分设置oracle 实例名为 为dbca
D:\oracle\ora92\bin\oradim.exe -new -sid DBCA -startmode m
D:\oracle\ora92\bin\oradim.exe -edit -sid DBCA -startmode a --蓝色部分用oracle自带的 oradim
创建一个实例名为dbca 并且有手动启动方式改为自动启动
D:\oracle\ora92\bin\orapwd.exe file=D:\oracle\ora92\database\PWDdbca.ora password=change_on_install
--粉红色部分为用oracle自带的orapwd 为sys用户创建一个默认的密码为 change_on_install
D:\oracle\ora92\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDB.sql
D:\oracle\ora92\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBFiles.sql
D:\oracle\ora92\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBCatalog.sql
D:\oracle\ora92\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\postDBCreation.sql
--黑体部分就是创建数据库要调用的脚本
第一 CreateDB.sql
connect SYS/change_on_install as SYSDBA --这是刚刚我们设置的密码以sysdba身份连接到数据库
set echo on
spool D:\oracle\ora92\assistants\dbca\logs\CreateDB.log 写日志
startup nomount pfile="D:\oracle\admin\dbca\scripts\init.ora"; 调用参数文件 启动数据库到只装载实例阶段
CREATE DATABASE dbca
MAXINSTANCES 1
MAXLOGHISTORY 1
MAXLOGFILES 5
MAXLOGMEMBERS 3
MAXDATAFILES 100 --控制文件记录的相关最大日志数,日志组,最大数据文件数等限制
DATAFILE 'D:\oracle\oradata\dbca\system01.dbf' SIZE 250M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE 'D:\oracle\oradata\dbca\temp01.dbf' SIZE 40M REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
UNDO TABLESPACE "UNDOTBS1" DATAFILE 'D:\oracle\oradata\dbca\undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED --创建系统,临时,回滚 表空间
CHARACTER SET ZHS16GBK
NATIONAL CHARACTER SET AL16UTF16 --字符集
LOGFILE GROUP 1 ('D:\oracle\oradata\dbca\redo01.log') SIZE 102400K,
GROUP 2 ('D:\oracle\oradata\dbca\redo02.log') SIZE 102400K,
GROUP 3 ('D:\oracle\oradata\dbca\redo03.log') SIZE 102400K; --创建日志文件租和成员
spool off
exit;
第二.CreateDBFiles.sql
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora92\assistants\dbca\logs\CreateDBFiles.log
CREATE TABLESPACE "INDX" LOGGING DATAFILE 'D:\oracle\oradata\dbca\indx01.dbf' SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
CREATE TABLESPACE "TOOLS" LOGGING DATAFILE 'D:\oracle\oradata\dbca\tools01.dbf' SIZE 10M REUSE AUTOEXTEND ON NEXT 320K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
CREATE TABLESPACE "USERS" LOGGING DATAFILE 'D:\oracle\oradata\dbca\users01.dbf' SIZE 25M REUSE AUTOEXTEND ON NEXT 1280K MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ; --创建相关用户要用到的表空间
spool off
exit;
第三:CreateDBCatalog.sql --创建system数据字典,存放到system表空间,相关表,视图等
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora92\assistants\dbca\logs\CreateDBCatalog.log
@D:\oracle\ora92\rdbms\admin\catalog.sql;
@D:\oracle\ora92\rdbms\admin\catexp7.sql;
@D:\oracle\ora92\rdbms\admin\catblock.sql;
@D:\oracle\ora92\rdbms\admin\catproc.sql;
@D:\oracle\ora92\rdbms\admin\catoctk.sql;
@D:\oracle\ora92\rdbms\admin\owminst.plb;
connect SYSTEM/manager
@D:\oracle\ora92\sqlplus\admin\pupbld.sql;
connect SYSTEM/manager
set echo on
spool D:\oracle\ora92\assistants\dbca\logs\sqlPlusHelp.log
@D:\oracle\ora92\sqlplus\admin\help\hlpbld.sql helpus.sql;
spool off
spool off
exit;
第四: postDBCreation.sql
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora92\assistants\dbca\logs\postDBCreation.log
@D:\oracle\ora92\rdbms\admin\utlrp.sql; --编译相关视图,包对象等
shutdown ; --关闭数据库
connect SYS/change_on_install as SYSDBA
set echo on
spool D:\oracle\ora92\assistants\dbca\logs\postDBCreation.log
create spfile='D:\oracle\ora92\database\spfiledbca.ora' FROM pfile='D:\oracle\admin\dbca\scripts\init.ora';
--创建服务器参数文件代替文件初始化参数文件,方便有时在不重启数据库的情况下可以使参数生效
从上面可以看到spfile文件的存放位置
startup ; --启动数据库 ,创建数据库完成
exit;
从上面可以看出,创建数据库有以下10个步骤
Step 1: 创建相关trace目录文件夹
Step 2: 创建实例,密码 启动方式
Step 3: 创建初始化参数文件 init.ora
Step 4: 连接到实例
Step 5: 启动实例到nomount状态
Step 6: 创建数据库
Step 7: 创建表空间
Step 9: 创建服务器参数文件(这步不是必须的,但oracle建议做这步) 好处会在以后的总结中列出
下面也贴出linux下脚本,和windows下几乎差不多
#!/bin/sh
mkdir /oradata/ora9i
mkdir /oradata/ora9i/controlfile
mkdir /oradata/ora9i/redofile
mkdir /orasys/oracle/admin
mkdir /orasys/oracle/admin/ora9i
mkdir /orasys/oracle/admin/ora9i/bdump
mkdir /orasys/oracle/admin/ora9i/cdump
mkdir /orasys/oracle/admin/ora9i/create
mkdir /orasys/oracle/admin/ora9i/udump
mkdir /orasys/oracle/admin/ora9i/pfile
cp init.ora /orasys/oracle/product/9.2.0/dbs/.
export ORACLE_BASE=/orasys/oracle
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0
export ORACLE_SID=ora9i
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin
echo Add this entry in the oratab: ora9i:/orasys/oracle/product/9.2.0:Y
/orasys/oracle/product/9.2.0/bin/orapwd file=/orasys/oracle/product/9.2.0/dbs/orapwora9i password=change_on_install
/orasys/oracle/product/9.2.0/bin/sqlplus /nolog @/home/oracle/create_script/CreateDB.sql
/orasys/oracle/product/9.2.0/bin/sqlplus /nolog @/home/oracle/create_script/CreateDBFiles.sql
/orasys/oracle/product/9.2.0/bin/sqlplus /nolog @/home/oracle/create_script/CreateDBCatalog.sql
/orasys/oracle/product/9.2.0/bin/sqlplus /nolog @/home/oracle/create_script/postDBCreation.sql
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7199859/viewspace-200457/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/7199859/viewspace-200457/