详解Oracle手动创建数据库几大步骤

在这里我们将介绍Oracle手动创建数据库几大步骤,包括前期的准备工作,以及具体的实施。

Oracle手动创建数据库是本文介绍的重点,希望通过本文能帮助大家更好的利用Oracle。51CTO也向您推荐《Oracle数据库调试与性能优化》专题。

Oracle除自带的DBCA可以创建数据库以为,还有另外一种创建方法,就是Oracle手动创建数据库,也是作为DBA人员必须要掌握的。下面就介绍一下手动创建数据库的步骤:

手动创建数据库通常包含如下操作步骤:

1、确定新建数据库名称和实例名称;

2、确定数据库管理员的认证方式;

3、创建初始化参数文件;

4、创建实例;

5、连接并启动实例;

6、使用create database语句创建数据库;

7、创建附加的表空间;

8、运行脚本创建数据字典视图;

下面以创建一个名为“MYNEWDB”的数据库为例

1、确定数据库名称与实例名称;

  1. DB_NAME=MYNEWDB
  2. SID=MYNEWDB

2、确定数据库管理员的认证方式;

管理员的认证方式包括操作系统认证和口令认证两种,本例采用操作系统认证

3、创建初始化参数文件;

Oracle提供的初始化参数样本文件位于$ORACLE_HOME\admin\sample\pfile目录中的initsmpl.ora

我们采用修改样本的方式,创建参数文件名为:initMYNEWDB.ora,存放在D:\oracle\ora92

\database\initMYNEWDB.ora,主要内容设置如下:

#共享服务器设置

  1. dispatchers="(PROTOCOL=TCP)(SERVICE=MYNEWDBXDB)

#数据库实例名设置

  1. instance=MYNEWDB

#安全与审计设置

  1. remote_login_passwordfile=EXCLUSIVE

#排序区大小设置

  1. pga_aggregate_target=25165824
  2. sort_area_size=524288

#全局数据库名设置

  1. db_domain=""
  2. db_name=MYNEWDB

#控制文件设置

  1. control_files=("D:\oracle\oradata\MYNEWDB\CONTROL01.CTL",
  2. "D:\oracle\oradata\MYNEWDB\CONTROL02.CTL",
  3. "D:\oracle\oradata\MYNEWDB\CONTROL03.CTL")

#SGA区设置

  1. java_pool_size =33554432
  2. large_pool_size=8388608
  3. shared_pool_size=50331648

#游标与库缓存设置

  1. open_cursors=300

#回退段和撤销表空间设置

  1. undo_management=AUTO
  2. undo_retention=10800
  3. undo_tablespace=UNDOTBS

#诊断与跟踪信息设置

  1. background_dump_dest=D:\oracle\admin\MYNEWDB\bdump
  2. core_dump_dest=D:\oracle\admin\MYNEWDB\cdump
  3. timed_statistics=TRUE
  4. user_dump_dest=D:\oracle\admin\MYNEWDB\udump

#用户进程设置

processes=150

#缓冲区与数据库大小设置

  1. db_block_size=8192
  2. db_cache_size=25165824
  3. db_file_multiblock_read_count=16

4、创建实例

选择“程序-->运行”,输入“cmd”命令,打开DOS界面

(1)将环境变量ORACLE_SID设置为“MYNEWDB”

C:\SET ORACLE_SID=MYNEWDB

(2)利用ORADIM命令创建MYNEWDB数据库

C:\ORADMIN -NEW -SID MYNEWDB -INTPWD MYNEWDB -STARTMODE MANUAL -PFILE D:\oracle\ora92

\database

注意:ORADMIN是Oracle提供的一个对实例进行管理的工具,可以创建、修改、删除、启动和关闭一个

实例,执行C:\ORADMIN HELP命令可以查看该命令的使用情况

5、连接并启动实例

  1. C:\sqlplus /nolog
  2. SQL>connect sys/mynewdb as sysdba;
  3. SQL>startup nomount;

6、使用create database 语句创建数据库

  1. SQL>CREATE DATABASE MYNEWDB
  2. MAXINSTANCES 1
  3. MAXLOGHISTORY 1
  4. MAXLOGFILES 5
  5. MAXLOGMEMBERS 5
  6. MAXDATAFILES 100
  7. DATAFILE 'D:\oracle\oradata\mynewdb\system.dbf' size 50M
  8. UNDO TABLESPACE undotbs DATAFILE 'D:\oracle\oradata\mynewdb\undotbs.dbf' size 50M
  9. AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
  10. DEFAULT TEMPORARY TABLESPACE tempts
  11. CHARACTER SET US7ASCII
  12. NATIONAL CHARACTER SET AL16UTF16
  13. LOGFILE GROUP 1 ('D:\oracle\oradata\mynewdb\redo01.log') size 100M,
  14. GROUP 2 ('D:\oracle\oradata\mynewdb\redo02.log') size 100M,
  15. GROUP 3 ('D:\oracle\oradata\mynewdb\redo03.log') size 100M;

在执行create database 语句的同时,自动执行$ORACLE_HOME\rdbms\admin\sql.bsq脚本,创建SYSTEM表空间和SYSTEM回退段、建立SYS和SYSTEM账号、建立数据字典基础表、建立数据字典索引、创建预定义角色等。

7、创建附加的表空间

用create database语句创建的数据库中只有SYSTEM、UNDOTBS和TEMPTBS三个表空间,还需要创建其他

一些额外的表空间

  1. SQL>create tablespace users
  2. datafile 'd:\oracle\oradata\mynewdb\users01.dbf' size 100M
  3. reuse autoextend on next 1280K maxsize unlitited
  4. extend management local;
  5. SQL>create tablespace index
  6. datafile 'd:\oracle\oradata\mynewdb\index01.dbf' size 100M
  7. reuse autoextend on next 1280K maxsize unlimited
  8. extend management local;

8、运行脚本创建数据字典视图

执行两个脚本语句:

----用于创建数据字典视图,包括V$动态性能视图和它们的同义词,同时将授予PUBLIC角色对这些同义

词的访问权限

  1. SQL>@D:\oracle\ora92\rdbms\admin\catalog.sql;

----用于建立对PL/SQL程序设计的支持

  1. SQL>@D:\oracle\ora92\rdbms\admin\catproc.sql;

9、创建服务器初始化参数文件

  1. SQL>create spfile from file='d:\oracle\ora92\database\initMYNEWDB.ora';

执行该语句将在$ORACLE_HOME\database 目录下创建名为spfileMYNEWDB.ora的服务器初始化参数文件

需要重启数据库

  1. SQL>shutdown immediate;
  2. SQL>connect sys/mynewdb as sysdba;
  3. SQL>startup

【编辑推荐】

  1. 新的Oracle 11g功能展示
  2. 深入Oracle 11g分区功能
  3. Oracle 11g R2中新特性一览
  4. Oracle 11g R2如约而至 RAC技术成亮点
  5. 详解Oracle数据库优化方案与实践

出处:http://database.51cto.com/art/201002/184885.htm

上一篇:Mac 搭建 SVN 服务器环境


下一篇:oracle实例名,数据库名,服务名等概念差别与联系