oracle10g创建数据库的方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在Oracle中建库,通常有两种方法。一是使用Oracle的建库工具DBCA,这是一个图形界面工具,使用起来方便且很容易理解,因为它的界面友好、美观,而且提示也比较齐全。在Windows系统中,这个工具可以在Oracle程序组中打开(‖开始‖—―程序‖—― Oracle - OraDb10g_home1‖—― Configuration and Migration Tools‖—― Database Configuration Assistant‖),也可以在命令行(‖开始‖—―运行‖—―cmd‖)工具中直接输入dbca来打开。另一种方法就是手工建库,下面我会一一举例说明。
第一:手工建库
手工建库比起使用DBCA建库来说,是比较麻烦的,但是如果我们学好了手工建库的话,就可以使我们更好地理解Oracle数据库的体系结构。手工建库需要经过几个步骤,每一个步骤都非常关键。它包括:
1、创建必要的相关目录
2、创建初始化参数文件
3、设置环境变量Oracle_sid
4、创建实例
5、创建口令文件
6、启动数据库到nomount(实例)状态
7、执行建库脚本
8、执行catalog脚本创建数据字典
9、执行catproc创建package包
10、执行pupbld
11、由初始化参数文件创建spfile文件
12、执行scott脚本创建scott模式
做完了以上的步骤之后就可以使用―SQL>alter database open;‖打开数据库正常的使用了。下面,我将具体地把以上的几个步骤用实验展开来讲。
实验系统平台:Windows XP 数据库系统版本:Oracle Database 10G
Oracle的安装路径:D盘创建的数据库名称:book
1、打开命令行工具,创建必要有相关目录
C:/>mkdir D:/oracle/product/10.2.0/admin/book
C:/>mkdir D:/oracle/product/10.2.0/admin/book/bdump
C:/>mkdir D:/oracle/product/10.2.0/admin/book/udump
C:/>mkdir D:/oracle/product/10.2.0/admin/book/cdump
C:/>mkdir D:/oracle/product/10.2.0/admin/book/pfile
C:/>mkdir D:/oracle/product/10.2.0/admin/book/create
C:/>mkdir D:/oracle/product/10.2.0/oradata/book
上面创建目录的过程也可以在Windows的图形界面中去创建。其中
D:/oracle/product/10.2.0/admin/book目录下的几个子目录主要用于存放数据库运行过程中的跟踪信息。最重要的两个子目录是bdump和udump目录,bdump目录存放的是数据库运行过程中的各个后台进程的跟踪信息,当中alert文件是警告文件,其文件名称为alert_book.log,当数据库出现问题时,首先就可以去查看此文件以找出原因,手工创建过程中出现的各种问题往往也可以通过查看这个文件找到原因。udump目录存放和特定会话相关的跟踪信息。D:/oracle/product/10.2.0/oradata/book目录存放各种数据库文件,包括controlfile、datafile、logfile。
2、创建初始化参数文件
数据库系统启动时须要用初始化参数文件的设置分配内存、启动必要的后台进程的。因此,初始化参数文件创建的是否正确、参数设置是否正确关系着整个建库的―命运‖。
创建初始化参数文件可以通过拷贝现有的初始化参数文件并将其做适当的修改即可,从而不必要用手工去一句一句地写出来,因为初始化参数文件的结构体系基本上都是一样的。在我们安装Oracle的时候,系统已经为我们安装了一个名为orcl的数据库,于是我们可以从它那里得到一份初始化参数文件。打开
D:/oracle/product/10.2.0/admin/orcl/pfile,找到init.ora文件,把它拷贝到
D:/oracle/product/10.2.0/bd_1/databse下,并将其改名为initbook.ora。
注意:不是拷贝到其他路径。启动实例时会去database目录下寻找初始化文件。使用dbca生产的数据库仅仅在database目录下生成一个导航性init文件,真正的信息存储在其他位置。
接着用记事本的方式打开initbook.ora,修改以下的内容:
db_domain="" ------数据库域名
db_name=book
control_files=("D:/oracle/product/10.2.0/oradata/book/control01.ctl", "D:/oracle/product/10.2.0/oradata/book/control02.ctl",
"D:/oracle/product/10.2.0/oradata/book/control03.ctl")
undo_management=AUTO ------Undo空间管理方式
undo_tablespace=UNDOTBS1------注意此处的―UNDOTBS1‖要和建库脚步本中对应
background_dump_dest=D:/oracle/product/10.2.0/admin/book/bdump ------后台进程跟踪文件生成的位置
core_dump_dest=D:/oracle/product/10.2.0/admin/book/cdump
user_dump_dest=D:/oracle/product/10.2.0/admin/book/udump
3、打开命令行,设置环境变量oracle_sid
C:/>set oracle_sid=book
设置环境变量的目的地是在默认的情况下,指定命令行中所操作的数据库实例是book。
4、创建实例(即后台控制服务)
C:/>oradim –new –sid book
oradim是创建实例的工具程序名称,-new表明执行新建实例,-delete表明执行删掉实例,-sid指定实例的名称。
5、创建口令文件
C:/>orapwd file=D:/oracle/product/10.2.0/db_1/database/pwdbook.ora password=bookstore entries=5
orapwd是创建口令文件的工具程序名称,file参数指定口令文件所在的目录和文件名称,password参数指定sys用户的口令,entries参数指定数据库拥用DBA权限的用户的个数,当然还有一个force参数,表示是否强制覆盖。
请注意,这里的命令要一行输入,中间不得换行,否则会出现不必要的错误。
口令文件是专门存放sys用户的口令,因为sys用户要负责建库、启动数据库、关闭数据库等特殊任务,把以sys用户的口令单独存放于口令文件中,这样数据库未打开时也能进行口令验证。
6、启动数据库到nomount(实例)状态
C:/>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期二12月23 10:04:11 2008