学习oracle技术,每天学一点,每天进步一点

oracle 学习总结篇一: 数据库的创建

上一篇 / 下一篇  2008-03-06 09:19:56 / 个人分类:学习

在安装完oracle软件后,我们所做的第一件事情就是创建数据库,一般有两种方法来创建

  1.用图形化工具dbca  全称即 Database Configure Assistant

 2.用脚本

对于初学者来说,建议用第一种,图形化创建时有个良好的向导,可以由浅入深,下面就两种方法来介绍了

 首先介绍第一种: dbca 图形化工具

在windows下 点开始 运行 输入dbca 命令,  就出现图形化界面了可以按照向导操作了,这个用的比较多

在unix/linux下也只需要启动xmanager ,然后输入dbca命令 也一样完成操作

在创建数据库时有四个选项,主要看哪个比较适合你

EnvironmentDescription of Environment

DSS (Data Warehousing)

Users perform. numerous, complex queries that process large volumes of data. Response time, accuracy, and availability are key issues.

These queries (typically read-only) range from a simple fetch of a few records to numerous complex queries that sort thousands of records from many different tables.

OLTP (Online Transaction Processing)

Many concurrent users performing numerous transactions requiring rapid access to data. Availability, speed, concurrence, and recoverability are key issues.

Transactions consist of reading (SELECTstatements), writing (INSERTandUPDATEstatements), and deleting (DELETEstatements) data in database tables.

General Purpose

This template creates a database designed for general purpose usage. It combines features of both the DSS and OLTP database templates.

New Database

This template allows you maximum flexibility in defining a database.

 第二种方法:手工写脚本 有助于理解数据库的创建过程 以windows为例子:

目录下有这些文件

2008-03-06  10:11               955 CreateDB.sql
A:PG$rBw2[f02008-03-06  10:11               631 CreateDBCatalog.sql
3Z8M)f7~5r02008-03-06  10:11               722 CreateDBFiles.sql
:i'U j9o`S02008-03-06  10:11               814 dbca.bat
Z4pca2}*Ew02008-03-06  10:11             2,689 init.ora
+~V)F[4~'{&\`P02008-03-06  10:11               414 postDBCreation.sql

打开 dbca.bat 文件内容 里面内容如下:

mkdir D:\oracle\admin\dbca\bdumpITPUB个人空间gb*nS+mk!wF
mkdir D:\oracle\admin\dbca\cdumpITPUB个人空间;F6Q F ^$N-V
mkdir D:\oracle\admin\dbca\create
d4}bW2R0mkdir D:\oracle\admin\dbca\pfile
&LHC1zhL xqs0mkdir D:\oracle\admin\dbca\udump
f1OV)w!j7edDB0mkdir D:\oracle\ora92\database
^)lx+uP&|!c;G0mkdir D:\oracle\oradata\dbca                      --红色部分创建相关存放trace日志文件的目录

(G [\yDa0set ORACLE_SID=dbca                    --绿色部分设置oracle 实例名为 为dbcaITPUB个人空间K$FY d8Ax+xW+Y
D:\oracle\ora92\bin\oradim.exe -new  -sid DBCA -startmode m  ITPUB个人空间,n#V|4~hG!f
D:\oracle\ora92\bin\oradim.exe -edit  -sid DBCA -startmode a
     --蓝色部分用oracle自带的 oradim

创建一个实例名为dbca 并且有手动启动方式改为自动启动ITPUB个人空间eIw|,nv?:N
D:\oracle\ora92\bin\orapwd.exe file=D:\oracle\ora92\database\PWDdbca.ora password=change_on_install

--粉红色部分为用oracle自带的orapwd 为sys用户创建一个默认的密码为 change_on_installITPUB个人空间,jGJ&m`i8I1[ _
D:\oracle\ora92\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDB.sql
{Cmt(]e0]4Zz;Y0D:\oracle\ora92\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBFiles.sql
{?.|'kk{n+gd^0D:\oracle\ora92\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\CreateDBCatalog.sqlITPUB个人空间4f%\'|1T)IY
D:\oracle\ora92\bin\sqlplus /nolog @D:\oracle\admin\dbca\scripts\postDBCreation.sql 

--黑体部分就是创建数据库要调用的脚本

第一 CreateDB.sql

connect SYS/change_on_install as SYSDBA  --这是刚刚我们设置的密码以sysdba身份连接到数据库ITPUB个人空间2V7w7[l Aj3gG P
set echo onITPUB个人空间A+ui)g Yb?-E
spool D:\oracle\ora92\assistants\dbca\logs\CreateDB.log    写日志ITPUB个人空间&r x$s}4~|
startup nomount pfile="D:\oracle\admin\dbca\scripts\init.ora";    调用参数文件 启动数据库到只装载实例阶段
M6qn_5j0CREATE DATABASE dbca
k\ p%i-L0MAXINSTANCES 1
Hu"x'`d`/Rml3_0MAXLOGHISTORY 1
/PJm m{DF0MAXLOGFILES 5ITPUB个人空间(qmz#CRwu`\.Z
MAXLOGMEMBERS 3
`,P#qV[k3Gi0MAXDATAFILES 100     --控制文件记录的相关最大日志数,日志组,最大数据文件数等限制
ITPUB个人空间\R+v*J*Ih hi
DATAFILE 'D:\oracle\oradata\dbca\system01.dbf' SIZE 250M REUSE AUTOEXTEND ON NEXT  10240K MAXSIZE UNLIMITED
;eBPu;V%U0EXTENT MANAGEMENT LOCAL
'Zox#F"jr8w;L8F0DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE 'D:\oracle\oradata\dbca\temp01.dbf' SIZE 40M REUSE AUTOEXTEND ON NEXT  640K MAXSIZE UNLIMITED
l1oN0JTu4L{6c0UNDO TABLESPACE "UNDOTBS1" DATAFILE 'D:\oracle\oradata\dbca\undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON NEXT  5120K MAXSIZE UNLIMITED      --创建系统,临时,回滚 表空间
ITPUB个人空间4n*F+B8tb uN
CHARACTER SET ZHS16GBK  
SO4`$zR6L&R0NATIONAL CHARACTER SET AL16UTF16    --字符集

1^,oO6Y:U,W0LOGFILE GROUP 1 ('D:\oracle\oradata\dbca\redo01.log') SIZE 102400K,
TB2t s'TQ}0GROUP 2 ('D:\oracle\oradata\dbca\redo02.log') SIZE 102400K,ITPUB个人空间+O|q d@^g0Fw5pER
GROUP 3 ('D:\oracle\oradata\dbca\redo03.log') SIZE 102400K;    --创建日志文件租和成员

1kuH&pQT8w0spool offITPUB个人空间L'[!a ag\0F\e
exit;ITPUB个人空间#sb+rM ~,I)^Ke

第二.CreateDBFiles.sql

connect SYS/change_on_install as SYSDBAITPUB个人空间,^|6qXAGx zN d
set echo on
}gao/jgW0spool D:\oracle\ora92\assistants\dbca\logs\CreateDBFiles.log
t1ZRu/O|Z0CREATE 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 ;
x d\(P[,Ov8Cd0CREATE 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 ;ITPUB个人空间_cK2j:_$I k;|
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 ;    --创建相关用户要用到的表空间ITPUB个人空间 R q0vK5iw5npj
spool offITPUB个人空间6D xq*E@h1Vq
exit;

第三:CreateDBCatalog.sql     --创建system数据字典,存放到system表空间,相关表,视图等ITPUB个人空间!Uo OAG
connect SYS/change_on_install as SYSDBAITPUB个人空间r%zEs2yw
set echo onITPUB个人空间S3G+v ON*iss
spool D:\oracle\ora92\assistants\dbca\logs\CreateDBCatalog.log
:G"i R9HIr$i0@D:\oracle\ora92\rdbms\admin\catalog.sql;
@6@^(T2r0@D:\oracle\ora92\rdbms\admin\catexp7.sql;ITPUB个人空间$~v y7s6Jp$J,i5Z
@D:\oracle\ora92\rdbms\admin\catblock.sql;ITPUB个人空间v&D xq$nO"y
@D:\oracle\ora92\rdbms\admin\catproc.sql;ITPUB个人空间@EQ;ob;?}7e0m
@D:\oracle\ora92\rdbms\admin\catoctk.sql;
KW `$F0|-K:`0@D:\oracle\ora92\rdbms\admin\owminst.plb;
*\;X \Ta*W0connect SYSTEM/managerITPUB个人空间8dn^ap#h
@D:\oracle\ora92\sqlplus\admin\pupbld.sql;
#s#Gq&FD:]%Q}0connect SYSTEM/managerITPUB个人空间f#d+g;Um
set echo on
6@ R Xa$u7v#q0spool D:\oracle\ora92\assistants\dbca\logs\sqlPlusHelp.logITPUB个人空间)e&f$HB#WGGxx
@D:\oracle\ora92\sqlplus\admin\help\hlpbld.sql helpus.sql;
VhaW9Yp+^0spool off
["w-e8H s{'wV0spool off
(Q4C\"df_ G0exit;

第四: postDBCreation.sql 

connect SYS/change_on_install as SYSDBAITPUB个人空间)I^ eqSX6Lq
set echo onITPUB个人空间 ^r^ns
spool D:\oracle\ora92\assistants\dbca\logs\postDBCreation.log
h C2Y-lrBR t0@D:\oracle\ora92\rdbms\admin\utlrp.sql;    --编译相关视图,包对象等ITPUB个人空间.S8u+@1B,kE.[
shutdown ;  --关闭数据库
Wdx h(_&T.b0connect SYS/change_on_install as SYSDBA
n-L GykZp*~S,Y5OZ0set echo onITPUB个人空间 [8K(u0iA0] |h$I
spool D:\oracle\ora92\assistants\dbca\logs\postDBCreation.log
R0le$cEqH0create spfile='D:\oracle\ora92\database\spfiledbca.ora' FROM pfile='D:\oracle\admin\dbca\scripts\init.ora';

--创建服务器参数文件代替文件初始化参数文件,方便有时在不重启数据库的情况下可以使参数生效

从上面可以看到spfile文件的存放位置
Zcs!E,an0startup ;  --启动数据库  ,创建数据库完成
[2O;c&^/EAd0exit;ITPUB个人空间u"D(VG d6h,T^fL

.lzY;T CR.U0

从上面可以看出,创建数据库有以下10个步骤

Step 1: 创建相关trace目录文件夹

Step 2:创建实例,密码 启动方式

Step 3:创建初始化参数文件 init.ora

Step 4: 连接到实例

Step 5: 启动实例到nomount状态

Step 6:创建数据库

Step 7:创建表空间

Step 8: 运行脚本创建数据字典

Step 9: 创建服务器参数文件(这步不是必须的,但oracle建议做这步)  好处会在以后的总结中列出

下面也贴出linux下脚本,和windows下几乎差不多

#!/bin/sh

mkdir /oradata/ora9iITPUB个人空间5y4K*K5DZO#z RHp
mkdir /oradata/ora9i/controlfile
X d-X0aYu4`0mkdir /oradata/ora9i/redofileITPUB个人空间xG!efM1u%o
mkdir /orasys/oracle/adminITPUB个人空间 UWo/z)v)RoKiR
mkdir /orasys/oracle/admin/ora9i
`*}4s.Z Mrz,s0mkdir /orasys/oracle/admin/ora9i/bdump
+?d ^:p-J yky0mkdir /orasys/oracle/admin/ora9i/cdumpITPUB个人空间&j/Sa5S g8h R
mkdir /orasys/oracle/admin/ora9i/createITPUB个人空间 ~siz1hJ
mkdir /orasys/oracle/admin/ora9i/udump
FQnXl.u)a5ge0mkdir /orasys/oracle/admin/ora9i/pfile


1kg7P(P6m+i0cp init.ora /orasys/oracle/product/9.2.0/dbs/.

export ORACLE_BASE=/orasys/oracleITPUB个人空间,Za#[/k/M'sQ;S4h
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0
.t.y/P&N3K&h.x~ z9fs0export ORACLE_SID=ora9iITPUB个人空间 ` Rxy#P
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/dataITPUB个人空间:[3o b ]$K5Io
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
O,k_4H0? e+Ww0k0LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
,g)yO7sWRU(q0export LD_LIBRARY_PATHITPUB个人空间(pX ^ D ~^)?m\:N
export PATH=$PATH:$ORACLE_HOME/bin
Q+H*t#ML4?"Q'`.h0echo Add this entry in the oratab: ora9i:/orasys/oracle/product/9.2.0:YITPUB个人空间3U8e'} c'j$[i(jt!rE
/orasys/oracle/product/9.2.0/bin/orapwd file=/orasys/oracle/product/9.2.0/dbs/orapwora9i password=change_on_installITPUB个人空间/wJT.P1f$n H8N
/orasys/oracle/product/9.2.0/bin/sqlplus /nolog @/home/oracle/create_script/CreateDB.sql
0f;w:vr2er0/orasys/oracle/product/9.2.0/bin/sqlplus /nolog @/home/oracle/create_script/CreateDBFiles.sql
&E xMFr FM0/orasys/oracle/product/9.2.0/bin/sqlplus /nolog @/home/oracle/create_script/CreateDBCatalog.sqlITPUB个人空间"Ian1N@q2V
/orasys/oracle/product/9.2.0/bin/sqlplus /nolog @/home/oracle/create_script/postDBCreation.sql

 


TAG:

haorman 引用 删除 zuohao_lu   /   2008-04-02 15:32:58
不错
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-08-30  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 15402
  • 日志数: 276
  • 图片数: 2
  • 建立时间: 2007-12-11
  • 更新时间: 2008-08-29

RSS订阅

Open Toolbar