在windows下Oracle10g中创建数据库(一)

转载 2012年03月22日 16:10:56

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

一是:使用Oracle的DBCA,这是一个图形界面工且,使用起来方便且很容易理解,因为它的界面友好、美观,而且提示也比较齐全。(ps:可以从开始菜单中进入DBCA,也可以在CMD中敲入dbca命令启动DBCA)

二是:手动创建数据库,手工建库比起使用DBCA建库来说,是比较麻烦的,但是如果我们学好了手工建库的话,就可以使我们更好地理解Oracle数据库的体系结构。

使用DBCA与手工建库的区别就像使用傻瓜相机与单反相机照相的区别,作为一个资深的oracle DBA必须学会手动建库,以更好的适应企业业务的需要。

手工建库须要经过几个步骤,每一个步骤都非常关键。它包括:

1、 创建必要的相关目录

2、 创建初始化参数文件

3、 设置环境变量Oracle_sid

4、 创建实例(windows服务)

5、 创建口令文件

6、 启动数据库到nomount(实例)状态

7、 执行建库脚本

8、 执行catalog脚步本创建数据字典

9、 执行catproc创建package包

10、 执行pupbld 脚本设置sqlplus

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

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

做完了以上的步骤之后就可以使用“SQL>alter database open;”打开数据库正常的使用了。

这里我们就创建一个sidmydb的数据库,具体的目录根据自己安装oracle情况决定:

1、创建必要的相关目录

首先,创建admin目录下的mydb,mydb下的子文件夹

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

第二,在oradata下创建数据库文件存放目录

C:/oracle/product/10.1.0/oradata/mydb目录存放各种数据库文件,包括控制文件、数据文件、重做日志文件

2、创建初始化参数文件

数据库系统启动时须要用初始化参数文件的设置分配内存、启动必要的后台进程的。因此,初始化参数文件创建的是否正确、参数设置是否正确关系着整个建库的“命运”。 创建初始化参数文件可以通过拷贝现在的初始化参数文件并将其做适当的修改即可,从而不必要用手工去一句一句地写出来,因为初始化参数文件的结构体系基本上都是一样的。在我们安装Oracle的时候,系统已经为我们安装了一个名为orcl的数据库,于是我们可以从它那里得到一份初始化参数文件。打开C:/oracle/product/10.1.0/admin/orcl/pfile,找到init.ora文件,把它拷贝到C:/oracle/product/10.1.0/bd_1/databse与C:/oracle/product/10.1.0/bd_1/dbs下,并将其改名为initmydb.ora。接着用记事本的方式打开initmydb.ora,根据自己情况修改内容。如:必须修改db_name=mydb

注意:如果script文件中的init.ora文件路径比较乱(既有斜杠也有反斜杠)的情况,可以从C:/oracle/product/10.1.0/bd_1/dbs中拷贝复制。或者自己创建,备份。

3、打开命令行,设置环境变量oracle_sid

   命令:set ORACLE_SID=mydb

4、创建实例服务(即后台控制windows服务)

命令:oradim -new -sid mydb

oradim是创建实例的工具程序名称,-new表明执行新建实例,-delete表明执行删掉实例,-sid指定实例的名称。

命令执行完毕可以验证服务是否创建成功

5、创建口令文件

命令为:orapwd file=C:/oracle/product/10.1.0/db_1/database/PWDmydb.ora password=oracle entries=2

orapwd是创建口令文件的程序名称,file参数指定口令文件所在的目录和文件名称,password参数指定sys用户的口令,entries参数指定数据库拥用DBA权限的用户的个数。 请注意,这里的命令要一行输入,中间不得换行,否则会出现不必要的错误。 口令文件是专门存放sys用户的口令,因为sys用户要负责建库、启动数据库、关闭数据库等特殊任务,把以sys用户的中令单独存放于口令文件中,这样数据库末打开时也能进行口令验证。

6、启动数据库到nomount(实例)状态

如图所示:

 

7、执行建库脚本

执行建库脚本,首先要有建库的脚本。那怎么去找到脚本呢?得到一个符合自己要求的建库脚本有两种方法,一种方法是利用原来orcl创建数据库DBCA生成的数据库创建脚本,并参照oracle文档。另一种方法就是自己手工去写一份建库脚本,并将其保存为文件名任取而后缀名为(*.sql)的SQL脚本,名称为mydbcreate.sql。

CREATE DATABASE mydb

         USER SYS IDENTIFIED BY oracle

         USER SYSTEM IDENTIFIED BY oracle

         LOGFILE GROUP 1 ('C:/oracle/product/10.2.0/oradata/mydb/redo01.log') SIZE 100M,

         GROUP 2 ('C:/oracle/product/10.2.0/oradata/mydb/redo02.log') SIZE 100M,

         GROUP 3 ('C:/oracle/product/10.2.0/oradata/mydb/redo03.log') SIZE 100M

         MAXINSTANCES 8

         MAXLOGHISTORY 1

         MAXLOGFILES 16

         MAXLOGMEMBERS 3

         MAXDATAFILES 100

CHARACTER SET AL32UTF8

NATIONAL CHARACTER SET AL16UTF16

DATAFILE 'C:/oracle/product/10.2.0/oradata/mydb/SYSTEM01.DBF' SIZE 325M REUSE

EXTENT MANAGEMENT LOCAL

SYSAUX DATAFILE 'C:/oracle/product/10.2.0/oradata/mydb/SYSAUX01.DBF' SIZE 325M REUSE

DEFAULT TABLESPACE tbs_1

DEFAULT TEMPORARY TABLESPACE TEMP

TEMPFILE 'C:/oracle/product/10.2.0/oradata/mydb/TEMP01.DBF' SIZE 20480K REUSE AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED

UNDO TABLESPACE UNDOTBS1

DATAFILE 'C:/oracle/product/10.2.0/oradata/mydb/undotbs01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

 

执行上面的代码有两种方法,一种为直接复制粘贴到sqlplus中执行,另一种为用@命令执行。执行完第七步已经成功创建数据库文件,但是还没有创建数据字典。

 (在第8步之前,执行了sql.bsq脚本,D:/oracle/product/10.2.0/db_1/RDBMS/ADMIN文件夹下,用于创建oracle数据字典基表,在create database 时自动调用)

8、执行catalog脚步本创建数据字典

SQL>@C:/oracle/product/10.1.0/db_1/rdbms/admin/catalog.sql 

9、执行catproc创建package包

SQL>@C:/oracle/product/10.1.0/db_1/rdbms/admin/catproc.sql

10、执行pupbld

在执行pupbld之前要把当前用户(sys)转换成system,即以system账户连接数据库。因为此数据库是刚建的,所以system的口令是oracle(参加创建数据库代码)。

SQL>connect system/oracle

SQL>@C:/oracle/product/10.1.0/db_1/sqlplus/admin/pupbld.sql

11、由pfile创建spfile

SQL>create spfile from pfile

12、执行scott脚本创建scott模式 (如果需要练习环境)

SQL>@C:/oracle/product/10.1.0/db_1/rdbms/admin/scott.sql

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

SQL>alter database open; 

OK,手动创建数据库成功!请多加练习,体会oracle创建的过程,理解oracle的体系架构。

ORA-1092 signalled during: CREATE DATABASE mydb

转载自:

http://blog.csdn.net/akrem513/article/details/6527882

Oracle 10g 数据库的备份和还原

一、备份数据库 1.在图形工具中,如sqldeveloper,pl/sqldeveloper用以下这句查找空表 select 'alter table '||table_name||' al...
  • a497785609
  • a497785609
  • 2013年12月27日 20:00
  • 4408

Oracle 10g (10.2.0.4.0) 新建数据库实例85%卡住, OracleDBConsoleorcl无法启动 EM创建问题修复

问题描述:                Oracle 10g (10.2.0.4.0) 这个版本的oracle以下都称之为oracle,                在安装完成后创建数据库实例的时...
  • bcsflilong
  • bcsflilong
  • 2016年10月26日 16:57
  • 808

Oracle10g 手工创建数据库

1、创建目录 mkdir d:\oracle\product\10.1.0\database mkdir e:\oracle\admin\Ora10g\bdump mkdir e:\oracle...
  • lichangzai
  • lichangzai
  • 2013年01月28日 10:40
  • 504

Oracle从10g升级到11g详细操作步骤

Oracle从10g升级到11g详细步骤 数据库旧版本:10.2.0.4 数据库新版本:11.2.0.2 OS 版本: Solaris 10 参考文档:Complete Checklist f...
  • waterxcfg304
  • waterxcfg304
  • 2014年05月23日 14:55
  • 758

oracle 10g 数据库迁移

现在遇到了数据库迁移的问题,顺便整理一下文档,以备大家使用! 方案一:覆盖数据库文件(存储迁移) 这种情况下,数据文件、控制文件、日志文件、spfile都在存储上(一般情况下是...
  • liugw_768
  • liugw_768
  • 2017年04月14日 10:03
  • 208

Oracle10g技术问题总结(五)windows操作系统下Oracle数据库启动与关闭的说明

一、sqlplus命令行下启动数据库 先打开监听服务(TNSListener)和数据库服务(OracleService) 在dos命令行下敲入 C:\>sqlplus /nolog SQL> ...
  • L_ong211314
  • L_ong211314
  • 2013年05月10日 06:48
  • 851

Java连接、操作Oracle 10g 数据库

1、给Java工程添加jar包:ojdbc14.jar; 2、Java代码: 2.1 获取与Oracle的连接的类: package com.newthread.map.bus; im...
  • gong71
  • gong71
  • 2013年05月23日 16:55
  • 2581

Windows下MySQL学习(一):安装和启用,新建数据库和数据表,matlab连接MySQL

最近新工作需要,开始学习MySQL,手头没有服务器,所以在自己的windows7机器上装mysql,以及用matlab进行操作。下面将介绍一下入门的过程:1.下载和安装:参考以下步骤: http:/...
  • dahunbi
  • dahunbi
  • 2016年10月29日 18:47
  • 1228

Windows下Oracle创建数据库的3种方式

1.   Creating a Database with DBCA DatabaseConfiguration Assistant (DBCA) is the preferred way to c...
  • cscscscsc
  • cscscscsc
  • 2015年09月08日 01:11
  • 4520

ORACLE 10g下载地址

要感谢http://www.blogjava.net/wangdetian168/archive/2011/03/01/345428.html这位仁兄,把用户名和密码奉献,省得大家去注册了,转的时候不...
  • noway
  • noway
  • 2014年07月09日 11:05
  • 4450
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在windows下Oracle10g中创建数据库(一)
举报原因:
原因补充:

(最多只允许输入30个字)