`
zljpp
  • 浏览: 260009 次
社区版块
存档分类
最新评论

Windows Oracle 10G手工创建数据库

阅读更多

 在Oracle中建库,通常有两种方法。

     一是使用Oracle的建库工且DBCA,这是一个图形界面工且,使用起来方便且很容易理解,因为它的界面友好、美观,而且提示也比较齐全。在Windows系统中,这个工具可以在Oracle程序组中打开(”开始”—“程序”—“ Oracle OraDb10g_home1”—“ Configuration and Migration Tools”—“ Database ConfigurationAssistant”),也可以在命令行(”开始”—“运行”—“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 Server 2000 数据库系统版本:Oracle Database 10G Oracle的安装路径:D盘 .创建的数据库名称:book 


1、打开命令行工具,创建必要有相关目录 
C:/>mkdir D:/oracle/product/10.1.0/admin/book
C:/>mkdir D:/oracle/product/10.1.0/admin/book/bdump 
C:/>mkdir D:/oracle/product/10.1.0/admin/book/udump 
C:/>mkdir D:/oracle/product/10.1.0/admin/book/cdump
C:/>mkdir D:/oracle/product/10.1.0/admin/book/pfile 
C:/>mkdir D:/oracle/product/10.1.0/admin/book/create 
C:/>mkdir D:/oracle/product/10.1.0/oradata/book
上面创建目录的过程也可以在Windows的图形界面中去创建。其中

D:/oracle/product/10.1.0/admin/book目录下的几个子目录主要用于存放数据库运行过程中的跟踪信息。最重要的两上子目录是bdump和udump目录,bdump目录存放的是数据库动行过程中的各个后台进程的跟踪信息,当中alert文件是警告文件,其文件名称为alert_book.log,当数据库出现问题时,首先就可以去查看此文件以找出原因,手工创建过程中出现的各种问题往往也可以通过查看这个文件找到原因。Udump目录存放特定会话相关的跟踪信息D:/oracle/product/10.1.0/oradata/book目录存放各种数据库文件,包括控制文件、数据文件、重做日志文件。

2、创建初始化参数文件 
数据库系统启动时须要用初始化参数文件的设置分配内存、启动必要的后台进程的。因此,初始化参数文件创建的是否正确、参数设置是否正确关系着整个建库的“命运”。 创建初始化参数文件可以通过拷贝现在的初始化参数文件并将其做适当的修改即可,从而不必要用
手工去一句一句地写出来,因为初始化参数文件的结构体系基本上都是一样的。在我们安装Oracle的时候,系统已经为我们安装了一个名为orcl的数据库,于是我们可以从它那里得到一份初始化参数文件。打开D:/oracle/product/10.1.0/admin/orcl/pfile,找到init.ora文件,把它拷贝到D:/oracle/product/10.1.0/bd_1/databse下,并将其改名为initbook.ora。接着用记事本的方式打开initbook.ora,修改以下的内容: db_domain=""
db_name=book
control_files=("D:/oracle/product/10.1.0/oradata/book/control01.ctl", 
"D:/oracle/product/10.1.0/oradata/book/control02.ctl", 
"D:/oracle/product/10.1.0/oradata/book/control03.ctl") undo_management=AUTO
undo_tablespace=UNDOTBS1 
――注意此处的“UNDOTBS1”要和建库脚步本中对应 
background_dump_dest=D:/oracle/product/10.1.0/admin/book/bdump 
core_dump_dest=D:/oracle/product/10.1.0/admin/book/cdump
user_dump_dest=D:/oracle/product/10.1.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.1.0/db_1/database/pwdbook.ora password=bookstore entries=2 
orapwd是创建口令文件的工肯程序各称,file参数指定口令文件所在的目录和文件名称,password参数指定sys用户的口令,entries参数指定数据库拥用DBA权限的用户的个数,当然还有一个force参数,相信您不指即明,这里就不再细述。 请注意,这里的命令要一行输入,中间不得换行,否则会出现不必要的错误。 口令文件是专门存放sys用户的口令,因为sys用户要负责建库、启动数据库、关闭数据库等特殊任务,把以sys用户的中令单独存放于口令文件中,这样数据库末打开时也能进行口令验证。

6、启动数据
库到nomount(实例)状态 C:/>sqlplus /nolog SQL*Plus:Release 10.1.0.2.0 - Production on 星期三 6月 29 

23:09:35 2005 Copyright 1982,2004,Oracle. All rights reserved. 

SQL>connect sys/bookstore as sysdba
           ---这里是用sys连接数据库 已连接到空闲例程 
SQL>startup nomount ORACLE 例程已经启动。
Total System Global Area 319888364 
bytes Fixed Size 453612bytes 
Variable Size 209715200bytes 
DatabaseBuffers 109051904bytes 
Redo Buffers 667648bytes
SQL>


7、执行建库脚本 
执行建库脚本,首先要有建库的脚本。(去哪找建库脚本呢?我又没有!)不用着急,请接着往下看。 得到一个符合自己要求的建库脚本有两种方法,一种方法是在自己的电脑上用DBCA来建,接照它的提示一步步地去做,在做到第十二步的时候,请选择“生成建库脚本”,然后就大功告成,你就可以到相应的目录上去找到那个脚本并适当地修它便可便用。另一种方法就是自己手工去写一份建库脚本,这也是这里要见意使用的方法,用记事本编辑如下的内容,并将其保存为文件名任取而后缀名为(*.sql)的SQL脚本,这里保存到E盘根本录下且文件名称为book.sql。 

Create database book datafile 'D:/oracle/product/10.1.0/oradata/book/system01.dbf' size 300M reuse 
autoextend on next 10240Kmaxsize unlimited extent management local sysaux datafile 
'D:/oracle/product/10.1.0/oradata/book/sysaux01.dbf' size 120M reuse autoextend on next 10240K 
maxsize unlimited default temporary tablespace temp tempfile 
'D:/oracle/product/10.1.0/oradata/book/temp01.dbf' size 20M reuse autoextend on next 640Kmaxsize unlimited undo tablespace "UNDOTBS1" 
--请注意这里的undo表空间要和参数文件对应 datafile 
'D:/oracle/product/10.1.0/oradata/book/undotbs01.dbf' size 200M reuse autoextend on next 5120K
maxsize unlimited logfile
group 1 ('D:/oracle/product/10.1.0/oradata/book/redo01.log') size 10240K, 
group 2 ('D:/oracle/product/10.1.0/oradata/book/redo02.log') size 10240K, group 3('D:/oracle/product/10.1.0/oradata/book/redo03.log') size 10240K 接着就执行刚建的建库脚本:
SQL>start E:/book.sql 


8、执行catalog脚步本创建数据字典 
SQL>start D:/oracle/product/10.1.0/db_1/rdbms/admin/catalog.sql 


9、执行catproc创建package包 

SQL>start
D:/oracle/product/10.1.0/db_1/rdbms/admin/catproc.sql 


10、执行pupbld 
在执行pupbld之前要把当前用户(sys)转换成system,即以system账户连接数据库。因为此数据库是刚建的,所以system的口令是系统默认的口令,即manager。你可以在数据库建好以后再来重新设置此账户的口令。 
SQL>connectsystem/manager
SQL>start D:/oracle/product/10.1.0/db_1/sqlplus/admin/pupbld.sql 


11、由初始化参
数文件创建spfile文件 

SQL>create spfile from pfile;


12、执行scott脚本创建scott模式 

SQL>start
D:/oracle/product/10.1.0/db_1/rdbms/admin/scott.sql 


13、把数据库打开到正常状态

 SQL>alter database open; 


14、以scott连接到数据库(口令为tiger),测试新建数据库是否可以正常运行 至此,整个数据库就已经建好了。接着你就可以在此数据库上建立自己的账户和表空间啦以及数据库对象,这里就不再作更
多地叙述。 

附:本意是想在linux上创建个oracle实例的,用这个文档捣鼓了半天,都快结束了才发现这个方法只能在window上使用。晕死了。自己机子上装的oracle 11g的,看了下与oracle 10g还是有点区别的:
没仔细研究,就发现amin下目录不一样:
Oracle 10G下有bdump udump cdumppfilecreate 
Oracle 11g 只有 adump,dpdump,pfile 三个。有空在研究吧。
还是想在linux下手动创建个。

unix和linux下没有oradim命令因为没用,oradim主要就是用来控制服务的,unix/linux上oracle 实例不需要建立服务,所以就没有

分享到:
评论

相关推荐

    Oracle 手工创建数据库完整步骤

    ### Oracle手工创建数据库完整步骤详解 #### 系统环境配置 在进行Oracle数据库的手工创建之前,确保系统环境已正确设置。本示例基于以下环境: - **操作系统**:Windows 2000 Server - **数据库版本**:Oracle 9i...

    手工创建oracle数据库

    ### 手工创建Oracle数据库详解 在IT领域,Oracle数据库因其强大的数据管理能力和广泛的行业应用而备受青睐。本文将从零开始,详细指导如何手工创建一个Oracle数据库,涵盖环境配置、用户权限设置、数据文件创建等多...

    oracle 10g 手工建库实践

    手工创建Oracle 10g数据库是指在没有使用Oracle提供的图形化工具的情况下手动配置并建立数据库的过程。这种做法虽然相对复杂,但对于深入理解Oracle数据库的内部机制及提高故障排查能力非常有帮助。 #### 二、环境...

    Oracle 10G里手工建库的全过程

    总之,Oracle 10G手工建库是一个详细的过程,需要对Oracle数据库的内部工作原理有深入了解。每个步骤都有其特定的目的,正确执行这些步骤能确保新数据库的稳定运行。虽然这个过程比使用DBCA更繁琐,但它提供了一次...

    操作系统重装后oracle数据库的恢复

    使用它能够创建、修改、删除,启动、停止本机上的oracle实例服务,有兴趣的,可以使用它实现一个单数据库多实例的案例。 c、使用sqlplus以dba身份登录确认数据库是否正常启动。 ******此处操作需要对oradim工具、...

    RoseHA8.5 for Windows Oracle11g

    8. 如果使用的是Oracle 10g或更早版本,则需要执行以下额外步骤:启动主机A,将主机B上Oracle的`database`子目录中的`PWD<SID>.ora`文件复制到主机A的相应目录,并覆盖原有文件(覆盖前,请做好备份)。 #### 三、...

    oracle手工创建步骤

    本文将详细介绍Oracle 10g环境下手工创建数据库的具体步骤及其背后的原理。 #### 二、准备工作 在进行手工建库之前,我们需要做一些准备工作: 1. **环境准备**:确保已经安装了Oracle 10g软件,并且了解其安装...

    (完整word版)太原理工大学-oracle-大型数据库实验报告-(2).doc

    本实验报告旨在通过创建大型数据库系统,了解数据库的结构、基本概念、表的结构特点、Oracle 11g 的基本数据类型,并学会使用 DBCA 创建数据库、使用界面方式创建表、使用 SQL 语句手工创建数据库和表。 一、 实验...

    太原理工大学 oracle 大型数据库实验报告.pdf

    6. 掌握使用SQL语句手工创建数据库和表,这是数据库管理的基础操作。 7. 实践创建具体的数据库实例,如员工管理数据库YGGL,包括Employees、Departments和Salary三个表。 二、实验内容与原理 1. 创建数据库需要具备...

    RoseHA8.5 for Windows Oracle11g配置文档

    根据给定的文件信息,以下是对“RoseHA8.5 for Windows Oracle11g配置文档”的详细解析,重点聚焦于RoseHA与Oracle11g在Windows环境下的集成配置,包括安装要求、步骤以及后续的Oracle服务管理与验证。 ### RoseHA...

    Oracle手工創建資料庫(10g+11g)

    ### Oracle手工创建数据库知识点详解 #### 一、Oracle 手工创建数据库背景及意义 在IT行业中,数据库管理是一项至关重要的任务。Oracle数据库因其高性能、可靠性和安全性而在企业级应用中占据主导地位。掌握如何...

    oracle数据库建立.doc

    8. **实验步骤**:手动创建数据库“test”时,需要设置环境变量ORACLE_SID,创建并配置初始化参数文件(INITtest.ora),使用ORADIM创建实例,最后在服务管理器中确认OracleServiceTest服务已启动。 通过这个实验,...

    Oracle数据库技术与实验指导.docx

    Oracle 10g和11g版本提供了多个版本,包括标准版(Standard Edition)、标准版1(Standard Edition One)和企业版(Enterprise Edition),以满足不同规模和需求的用户。这些版本之间的主要区别在于功能的丰富程度、...

    Windows下oracle的增量备份与恢复.docx

    本文档将详细介绍在Windows环境下,如何使用Oracle 11g进行增量备份与恢复的操作流程,旨在确保数据库在面临意外情况时能够快速恢复到正常状态。 1. 实现目标: - 通过实施全面的备份策略,包括完全备份、增量备份...

    [手工整理]208个Oracle安装文档,包含各个平台各个版本的单实例RAC以及DataGuard(1).xlsx

    58 Install Oracle 11.2 在裸设备上创建数据库 59 Install Oracle 12C 18C 19C 操作系统兼容列表及配置要求 60 Install Oracle 12C linux7安装文档 61 Install Oracle 12C linux7安装文档 62 Install Oracle 9i...

    Windows平台部署Oracle和EAS实施文档.docx

    - 部署Oracle 10g数据库至指定版本(10.2.0.4)。 - 实现EAS系统的安装与配置。 #### 二、项目实施准备 - **操作系统**: Windows Server 2003 SP2 - **数据库**: Oracle 10.2.0.4 - **应用程序**: EAS v6.0 - **...

    Oracle讲义

    这个用户账户通常被用于教学和演示目的,但在Oracle 10g以后,出于安全考虑,默认情况下是被禁用的,需要手工解锁。 Oracle数据库经历了多个版本的发展,每个版本的发布都带来了技术上的革新和功能上的增强。例如:...

    windows下Oracle的备份和恢复

    假设我们有一个名为“zysjk”的生产数据库,版本为 Oracle 10g,需要实现生产数据不丢失任何数据的目标。为此,我们可以采用以下策略: 1. **配置归档模式**:首先确保数据库处于归档模式,这样才能进行热备份。 2....

Global site tag (gtag.js) - Google Analytics