描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787302347637
全面涵盖Oracle数据库管理与应用的各种技术细节,提供系统化的学习方案
对Oracle数据库管理、SQL及PL/SQL开发用到的各种技术做了原理分析和实战演练
真正做到了从Oracle实际工作的视角剖析Oracle数据库的应用,深入浅出地介绍了Oracle管理、监控、SQL及PL/SQL开发的要点
精选了实际工作中常用的知识点,并配以大量实例,让读者快速上手,提供了2个有很高参考价值的案例,提升读者的实战水平
提供了各种实际应用场景,引导读者将知识应用于实际工作中,代码精炼,注释丰富,通过研读代码,即可获得大量的经验
推荐阅读:
为了便于读者高效、直观地学习,作者为本书重点内 容录制了13.6小时多媒体教学视频。这些视频及本书 涉及的源代码一起收录于本书配套DVD光盘中。另外 ,光盘中还免费赠送了7.8小时Oracle PL/SQL教学视 频和大量的PL/SQL实例代码,供读者进一步学习参考 。
全书共24章,分为6篇。涵盖的内容主要有关系 型数据库基础、Oracle的安装和管理、体系结构、网 络结构、物理和逻辑结构的维护和管理、SQL语言的 应用、PL/SQL语言基础、开发环境、控制语句、数据 表的管理和查询、数据表的操作、使用PL/SQL的记录 与集合、各种内置函数、游标、事务处理、异常处理 、子程序、包、Oracle的安全性、表空间和数据文件 的管理、数据库的备份和恢复等,后还通过两个现 实案例介绍了Oracle编程的经验和技巧。
本书适用于Oracle数据库管理人员、使用PL/SQL 进行应用程序开发的人员、对软件开发有兴趣的学生 及爱好者。另外,本书对于网络管理员、企业IT运维 人员也具有很强的指导作用。
超值、大容量DVD光盘
13.6小时配套教学视频
7.8小时PL/SQL教学视频(赠送)
本书源文件
第1章 认识关系型数据库( 教学视频:37分钟)
1.1 理解数据库 2
1.1.1 什么是关系型数据库 2
1.1.2 实体关系模型 3
1.1.3 关系型数据库管理系统RDBMS 5
1.1.4 使用SQL语言管理数据库 6
1.2 认识数据库范式 7
1.2.1 什么是数据库范式 7
1.2.2 范式1NF 8
1.2.3 第二范式2NF 9
1.2.4 第三范式3NF 10
1.3 认识Oracle数据库系统 10
1.3.1 Oracle数据库特性 10
1.3.2 Oracle数据库管理员 12
1.3.3 数据库管理员任务列表 13
1.3.4 Oracle数据库系统的组成 15
1.3.5 与SQL Server数据库的比较 16
1.4 安装Oracle数据库 18
1.4.1 获取Oracle数据库软件 18
1.4.2 使用Oracle技术与文档库 19
1.4.3 安装Oracle数据库系统 20
1.4.4 卸载Oracle数据库 29
1.5 小结 31
第2章 创建和连接Oracle数据库( 教学视频:43分钟)
2.1 创建Oracle数据库 33
2.1.1 使用DBCA创建数据库 33
2.1.2 使用静默方式创建数据库 41
2.1.3 删除现有数据库 43
2.1.4 手动安装数据库 45
2.2 启动和停止Oracle数据库服务 50
2.2.1 启动和停止监听程序 51
2.2.2 启动数据库 54
2.2.3 限制数据库的访问 56
2.2.4 关闭数据库 57
2.3 Oracle客户端工具 59
2.3.1 安装Oracle客户端 59
2.3.2 客户端网络配置工具 62
2.3.3 使用Oracle企业管理器 65
2.3.4 使用SQL*Plus 67
2.3.5 使用Oracle SQL Developer 69
2.3.6 使用PL/SQL Developer 71
2.3.7 使用Toad 73
2.4 小结 76
第3章 SQL语言与SQL*Plus( 教学视频:34分钟)
3.1 SQL语言基础 77
3.1.1 SQL、SQL*Plus与Oracle的关系 77
3.1.2 SQL语言的特点 78
3.1.3 SQL语言的分类 80
3.1.4 SQL语言的编写规则 81
3.2 认识SQL*Plus 83
3.2.1 SQL*Plus的功能 83
3.2.2 启动SQL *Plus 84
3.2.3 重新连接数据库 86
3.2.4 SQL*Plus运行环境设置 86
3.2.5 使用命令帮助 88
3.3 操作数据库 90
3.3.1 执行SQL与PL/SQL代码 90
3.3.2 了解SQL*Plus缓冲区 92
3.3.3 运行脚本文件 94
3.3.4 显示表结构 95
3.3.5 使用替换变量 97
3.3.6 运行操作系统命令 98
3.3.7 断开和退出SQL*Plus 99
3.4 格式化查询结果 100
3.4.1 格式化列 100
3.4.2 清除列格式 103
3.4.3 限制重复行 103
3.4.4 使用汇总行 105
3.5 小结 106
第4章 认识Oracle体系结构( 教学视频:20分钟)
4.1 Oracle实例内存管理 107
4.1.1 Oracle内存结构 107
4.1.2 系统全局区SGA 108
4.1.3 程序全局区PGA 112
4.1.4 数据库缓冲区高速缓存 114
4.1.5 共享池 117
4.1.6 重做日志缓冲区 118
4.1.7 其他内存结构 119
4.2 Oracle实例进程结构 120
4.2.1 用户进程与服务器进程 120
4.2.2 PMON与SMON进程 123
4.2.3 DBWn与LGWR进程 125
4.2.4 CKPT与ARCn进程 126
4.3 小结 128
第2篇 管理方案对象
第5章 创建和管理表( 教学视频:52分钟)
5.1 表和表列 130
5.1.1 表和实体 130
5.1.2 表的分类 131
5.1.3 表和列命名规则 132
5.1.4 列数据类型 133
5.2 创建表 136
5.2.1 使用设计器建表 136
5.2.2 创建标准表 139
5.2.3 全局临时表 141
5.2.4 索引组织表 144
5.2.5 使用外部表 145
5.2.6 使用DUAL表 149
5.2.7 数据字典中的表信息 151
5.3 修改表 152
5.3.1 添加表列 152
5.3.2 使用虚拟列 154
5.3.3 修改表列 156
5.3.4 删除表列 158
5.3.5 重命名表列 160
5.3.6 重命名表 160
5.3.7 删除数据表 161
5.4 小结 162
第6章 索引和约束( 教学视频:36分钟)
6.1 创建索引 163
6.1.1 索引的作用 163
6.1.2 索引的原理 166
6.1.3 索引的分类 168
6.1.4 创建B*树索引 170
6.1.5 创建位图索引 173
6.1.6 创建函数索引 175
6.1.7 修改索引 176
6.1.8 重命名索引 177
6.1.9 重建和合并索引 178
6.1.10 不可见和不可用的索引 180
6.1.11 索引的监控 181
6.1.12 删除索引 182
6.1.13 查看索引信息 183
6.1.14 索引创建策略 185
6.1.15 创建和管理索引的一般性指南 185
6.2 创建约束 186
6.2.1 理解约束 186
6.2.2 主键约束 188
6.2.3 外键约束 190
6.2.4 级联关系 192
6.2.5 外键与索引 194
6.2.6 检查约束 195
为什么要写这本书
随着信息产业化的飞速发展,数据的增长速度也在迅速膨胀,越来越多的企业认识到数据库数据的重要性。Oracle公司的数据库管理系统是的关系型数据库管理系统,一直是各大企事业单位后台存储的。Oracle数据库系统的灵活体系结构以及跨平台的特性,使得很多Oracle从业人员备感压力,相较之容易使用的SQL Server,Oracle似乎太难以驾驭。Oracle公司出于便于学习的目的,提供了大量的文档,但是这些文档主要为英文版,而且文档过于偏重于某一技术的细节,掌握起来颇具难度。
目前市场上Oracle数据库相关的图书虽然比较丰富,而且质量也比较高,但是偏重于技术的深度,初学者会觉得过于专业,有点难懂。本书作者站在Oracle从业人员的视角,以简洁轻松的文字,简短精练的示例代码,以力求让不同层次的开发人员尽快掌握Oracle数据库开发为主旨编写了本书,在本书后还提供了两个实际应用的项目,让开发人员能够通过项目学习PL/SQL开发,提高实际开发水平和项目实战能力。
本书有何特色
1. 附带多媒体教学视频,提高学习效率
为了便于读者理解本书内容,提高学习效率,作者专门为本书录制了长达13.6小时的配套多媒体教学视频。这些视频和本书涉及的源代码及附赠的大量PL/SQL教学视频与实例代码一起收录于配书光盘中。
2. 涵盖Oracle管理和PL/SQL语言的各种技术细节,提供系统化的学习思路
本书涵盖Oracle的体系结构、维护技巧及PL/SQL语言在实际项目中需要重点掌握的方面,包含数据库基础、安装和管理数据库、数据库体系结构、表、索引、约束、序列、同义词、基本的SQL操作知识比如查询、插入、修改和删除、PL/SQL语言基础、记录和集合、游标、SQL的内置函数、事务处理、异常处理机制、子程序、包、触发器、面向对象的开发,以及动态SQL语句等知识点。
3. 对Oracle管理和开发的各种技术作了原理分析和实战体验
全书使用了简洁质朴的文字,配以大量的插图,对一些难以理解的原理部分进行了重点剖析,让读者不仅知晓实现的原理,通过图形化的展现方式,更能加强对原理的理解。同时,本书讲解时配以大量的示例对技术要点在实际工作中的应用进行了详解,让读者能尽快上手这些知识点。
4. 应用驱动,实用性强
对于每个示例代码,都进行了仔细的锤炼,提供了各种实际应用的场景,力求让应用开发人员将这些知识点尽快应用到实际的开发过程中。
5. 项目案例典型,实战性强,有较高的应用价值
本书后一篇提供了两个项目实战案例。这些案例来源于作者所开发的实际项目,具有很高的应用和参考价值。而且这些案例分别使用不同的PL/SQL技术实现,便于读者融会贯通地理解本书中所介绍的技术。这些案例稍加修改,便可用于实际项目开发。
6. 提供完善的技术支持和售后服务
本书提供了专门的技术支持邮箱。读者在阅读本书过程中有任何疑问都可以通过该邮箱获得帮助。
本书内容及知识体系
第1篇 Oracle基础(第1~4章)
本篇介绍了关系型数据库基础、安装和管理Oracle及Oracle体系结构的知识。主要包括关系型数据库系统范式、安装和创建Oracle数据库、启动和连接Oracle、SQL语言和SQL*Plus的操作,以及Oracle数据库的体系结构。
第2篇 管理方案对象(第5~8章)
本篇介绍了在Oracle上创建和管理方案对象的知识,包含使用Oracle SQL语句创建数据库表、视图、索引、约束、序列和同义词等知识,是操纵和管理Oracle的基础。
第3篇 使用SQL语言(第9~11章)
本篇讨论了使用SQL语言操作数据库的知识,讨论了用SQL语言进行简单与复杂查询,比如多表连接查询、子查询和分组查询等,接下来讨论了使用SQL语言向表中插入、更改和删除数据,并且介绍了SQL中各种内置函数的使用方法。
第4篇 PL/SQL编程(第12~18章)
本篇介绍了PL/SQL过程化SQL语言的基础,首先对PL/SQL进行了概览,然后讨论了存储过程、函数、包的定义和使用方式,讨论了参数模式、包重载及包作用域范围的知识,并且讨论了PL/SQL中的记录与集合、触发器和游标,以及异常处理机制、动态SQL语句、事务和锁的知识。
第5篇 Oracle维护(第19~22章)
本篇讨论了如何维护和管理Oracle数据库,首先讨论了数据库安全性相关的用户、角色和权限,然后介绍了Oracle表空间的管理,比如创建和删除表空间、为表空间扩容等,在数据库文件部分讨论了如何添加和管理数据库物理文件,后介绍了备份与恢复的知识,讨论了恢复管理器RMAN的使用技巧。
第6篇 PL/SQL案例实战(第23~24章)
本篇通过两个实际的项目示例,从需求分析、数据库表的设计、系统的总体规划开始,到包规范的定义、包体的具体实现详细剖析一个PL/SQL的实现生命周期,通过对这两个示例的一步一步深入体验,能让开发人员立即上手进行PL/SQL项目的开发。同时对这两个示例稍加修改,即可应用到实际的工作项目中。
配书光盘内容介绍
为了方便读者阅读本书,本书附带1张DVD光盘。内容如下:
* 本书所有实例的源代码;
* 13.6小时配套多媒体教学视频;
* 7.8小时Oracle PL/SQL教学视频(赠送);
* 96个Oracle PL/SQL实例源文件(赠送)。
适合阅读本书的读者
* Oracle数据库管理人员;
* 学习Oracle PL/SQL开发技术的人员;
* 广大数据库开发程序员;
* 应用程序开发人员;
* 希望提高项目开发水平的人员;
* 专业数据库培训机构的学员;
* 软件开发项目经理;
* 需要一本案头查询手册的人员。
阅读本书的建议
* 没有Oracle基础的读者,建议从第1章顺次阅读并演练每一个实例;
* 有一定Oracle基础的读者,可以根据实际情况有重点地选择阅读各个技术要点;
* 对于每一个知识点和项目案例,先通读一遍有个大概印象,然后将每个知识点的示例代码都在开发环境中操作一遍,加深对知识点的印象;
* 结合光盘中提供的多媒体教学视频再理解一遍,这样理解起来就更加容易,也会更加深刻。
进一步学习建议
当您阅读完本书后,相信已经掌握了Oracle数据库管理和开发的基本知识。但如果还要更进一步深入下去,那么还必须要系统地掌握PL/SQL编程的知识,毕竟它是Oracle数据库开发所需要使用的查询语言。可以说,在Oracle世界里,离开了PL/SQL,您将寸步难行。
要系统学习PL/SQL编程,建议阅读笔者编写的《Oracle PL/SQL从入门到精通》一书。该书可以当作本书的姊妹篇。它自2012年由清华大学出版社出版后广受读者好评,在东东网、亚马逊和商城等网上书店都有大量读者对这本书给出了很好地评价,并极力推荐阅读,相信不会让您失望。
该书非常系统地介绍了PL/SQL开发的方方面面,给读者提供了系统化的学习方案,并对PL/SQL开发用到的各种技术做了原理分析。书中还提供了300多个简单易懂的实例,引领读者快速上手。相信阅读完这本书后,您已经很系统地掌握了PL/SQL开发的各种技术细节。
本书作者
虽然我们对本书中所述内容都尽量核实,并多次进行文字校对,但因时间所限,可能还存在疏漏和不足之处,恳请读者批评指正。
编著者
第2章 创建和连接Oracle数据库
创建数据库是DBA在安装好一个Oracle系统之后要面对的项工作。数据库必须要经过规划和设计,Oracle提供了DBCA可视化工具,它可以帮助用户创建一个全新的数据库,也可以手动使用SQL脚本的方式创建数据库,不过这要求DBA对Oracle的数据库结构具有较深刻的理解。本章除介绍数据库创建外,还将讨论各种Oracle客户端工具及Oracle服务的管理。
2.1 创建Oracle数据库
类似于OUI(Oracle通用安装管理器),Oracle也提供了一个图形化的数据库创建工具DBCA,DBCA提供了完全自动化的方式来创建数据库。DBA也可以通过CREATE DATABASE这个SQL语句来创建数据库,使用这个SQL语句可以让DBA全方位地控制数据库的创建过程。
2.1.1 使用DBCA创建数据库
数据库配置助手DBCA是创建数据库的一个非常便利的方法,它提供了窗口向导的方式,引导创建者一步一步地指定数据库的创建,当DBCA创建完成时,数据库就可以立即使用了。DBCA可以在安装Oracle数据库软件时由Oracle通用安装管理器OUI来启动,也可以通过在Windows平台上使用“开始”菜单来启动、创建数据库。
使用DBCA创建数据库有如下两种方式:
交互式数据库创建,这种方式提供了图形界面引导读者一步一步地创建和配置一个数据库。
静默方式,允许指定命令行参数或一个配置的文件让DBCA在命令行模式下进行安装。
交互式方式的图形化界面对于不了解Oracle的体系结构但是又迫切需要创建数据库的用户来说非常有用,而静默方式可以根据现有的数据库创建预备脚本来创建一个新的数 据库。
注意:在Oracle安装时,会提示是否创建一个数据库,如果选择创建数据库,Oracle安装管理器将自动开启Oracle数据库配置助手向导DBCA来开始一个数据库的配置。如果在安装数据库软件时没有创建数据库,那么在创建后可以使用DBCA来创建一个新的数据库。
无论是手工使用DBCA或者是在安装期间由OUI启动的方式创建了数据库,一般情况下,不建议在同一台服务器上同时创建多个数据库,这与SQL Server不同。每个Oracle实例只能管理一个数据库,在一台服务器上创建多个数据库需要创建多个实例,在Oracle中可行但是不建议,Oracle服务于多应用程序是通过方案的方式来分隔应用程序,不像SQL Server可以创建多个数据库来管理不同的应用程序。
使用Database Creation Assistant(DBCA)程序创建数据库非常简单,它使用数据库模板来加速且标准化数据库的创建过程。下面以BookLib数据库为例,介绍如何使用这个工具创建一个图书馆数据库。
(1)单击“开始”菜单中的Oracle程序组中的“配置和移植工具”程序组,打开程序组中的“Database Creation Assistant”菜单项,将打开DBCA工具。
首先显示一个欢迎页面,单击“下一步”按钮后,将看到DBCA可以执行的操作。DBCA可以被用于创建数据库,重新配置一个已经存在的数据库、删除一个数据库和管理数据库模板,如图2.1所示。
图2.1 DBCA的可以执行的操作界面
注意:数据库模板是一个已经保存的数据库的设置集合,可以使得用户很容易地创建一个与模板数据库相同配置的副本。
(2)在确认了“创建数据库”选项后,单击“下一步”按钮,DBCA将进入到模板选择窗口,如图2.2所示。
在该窗口中可以看到如下3个可供使用的模板:
一般用途或事务处理,支持普通用途和事务处理的数据库,适用于大多数事务型的数据库系统,这是默认选项,也是使用得多的选项。
定制数据库,使用此模板可以自己创建定制的数据库。
数据仓库,大型的复杂查询的数据仓库环境数据库。所谓“数据仓库”是指将联机事务处理数据库积累的大量资料,用数据仓库理论所特有的存储架构进行系统的分析整理,主要用来分析处理、数据挖掘,主要用于一些面向主题的数据分析工作。
图2.2 选择数据库模板
如果想知道每种模板的具体的参数配置信息,单击右下角的“显示详细资料”按钮,将显示模板所使用的详细资料,如图2.3所示。
图2.3 模板参数详细资料
DBCA的数据库模板以XML的形式而存在,可以从ORACLE_HOMEassistants dbcatemplates文件夹中找到这些模板文件。由于BookLib是一个普通的数据库和事务处理数据库,因此选择项作为数据库模板。
(3)接下来需要指定数据库标识符。在该窗口中,需要指定在分布式计算环境中的数据库全局名称,通常由数据库名.域名组成,对于本机多实例的区分来说,是由Oracle系统标识符(SID)标识的,这两个名称可以相同,但是如果数据库是在多服务器集群之间使用,则需要注意全局数据库的命名,如图2.4所示。
图2.4 数据库标识符的设置
Oracle系统会利用环境变量ORACLE_SID指定当前默认的数据库,因此可以通过设置环境ORACLE_SID来设置当前操作系统上的默认的数据库SID,这个名称也与DB_NAME初始化参数相同。
(4)在配置了全局数据库名称之后,接下来进入到Oracle管理选项配置窗口,在该窗口中,可以配置Oracle企业管理器。Oracle企业管理器是一个界面友好的Web数据库管理工具,主要用来进行数据库的控制,一般只用来控制单个数据库,更高级的选项是使用网格控制在一台计算机上控制所有的数据库。在这里使用默认的配置选项,即由DBCA对Oracle企业管理器进行配置,如图2.5所示。
图2.5 Oracle管理选项配置
注意:管理选项的自动维护任务页面,提示是否要启动Oracle的自动维护任务,它可以定期地进行Oracle数据库系统的优化工作,一般建议选中这个选项。
(5)在配置了管理选项后单击“下一步”按钮,将进入到数据库身份验证窗口,要求用户必须为Oracle数据库的4个系统账户指定管理口令,如图2.6所示。
图2.6 配置身份证明窗口
SYS账户是所有Oracle数据字典的拥有者,SYSTEM账户拥有管理性视图和其他Oracle管理基础结构组件,DBSNMP和SYSMAN由Oracle企业管理器使用。
注意:除了这几个账户之外,Oracle还具有很多管理账户,但是这些账户在Oracle数据库创建时被锁定,仅在需要时才启用。
尽管可以为每个账户指定不同的密码,但是出于简单易记的考虑,这里为所有的账户使用相同的管理性的密码。
(6)确认了密码之后,在存储选项窗口中,要求指定数据库文件的存储方法。文件系统是大多数数据库系统的,而ASM自动存储管理是一个用于磁盘管理的高级技术,它取代了传统的基于卷标的管理,可以用来管理成百上千的磁盘,如图2.7所示。
DBCA在创建数据库的过程中会创建很多文件,在存储选项中可以指定由模板中指定的文件路径,或者是自己选择一个存储位置。
(7)在配置了数据库的路径后,DBCA要求配置数据恢复选项,在这一步中,要求指定一个闪回区域(即快速恢复区),用来存储由RMAN(恢复管理器)创建的备份和归档重做日志。也可以指定快速恢复区的磁盘空间,这个值依赖于数据库的大小、数据库方案和期望的归档重做日志的大小,如图2.8所示。
图2.7 指定数据库文件的存储选项
注意:出于安全性的考虑,应该将这个区域指定到与数据库系统不同的磁盘。
图2.8 指定快速恢复选项
除了指定闪回区域外,还可以指定是否允许归档日志,这也是一个被建议的选项,如果不进行归档重做日志,除非先关闭数据库,否则不能创建一个创建数据库的备份。
(8)在数据库内容区域,指定所创建的数据库是否包含Oracle的示例方案内容,比如scott和hr方案,这些方案有助于学习Oracle数据库,但是如果是正式使用的场合,则不建议包含这些示例的方案,如图2.9所示。
图2.9 指定数据库的内容
(9)在确定了数据库内容后,单击“下一步”按钮,将进入到初始化参数设置窗口,在该窗口中可以指定Oracle的内存大小、SGA和PGA的大小、I/O大小以及内存大小、所使用的字符集与连接模式等。由于这些设置涉及Oracle机制的较多内容,在此保留默认值即可。
(10)在数据库存储页,DBCA提供了即将创建的数据库的物理文件内容,此时可以通过文件位置变量按钮来查看文件位置变量的具体位置,如图2.10所示。
图2.10 查看物理数据库文件位置
(11)在第11步的数据库创建选项窗口,指定是立即创建数据库还是创建为数据库模板,或者是仅创建数据库脚本。由于本节是要立即创建数据库,因此使用默认的选项即可,如图2.11所示。
图2.11 创建数据库选项
(12)在确认了这些选项后,DBCA将显示前面所有配置的概要窗口,该窗口列出了前面所有的配置选项,以方便用户进行确认,如图2.12所示。
(13)在确认了配置选项无误后,单击“确定”按钮,DBCA将开始数据库的创建工作,如图2.13所示。
图2.12 数据库创建概要窗口 图2.13 开始创建数据库
(14)Oracle会创建一个数据库实例及相应的数据库文件,然后会启动这个Oracle实例。在安装完成后,Oracle会弹出如图2.14所示的安装结束对话框。
在创建提示窗口中,还可以对数据库的口令进行进一步的管理,通过单击“口令管理”按钮,将弹出口令管理窗口,在该窗口中列出了可以设置口令的大部分用户账户,对于已经锁定的用户,还可以轻松地进行解锁,如图2.15所示。
图2.14 数据库创建完成对话框
图2.15 管理数据库用户口令在设置完口令后,单击“退出”按钮退出DBCA,此时可以通过Windows服务列表,单击“开始|运行”菜单项,在弹出的对话框中输入services.msc,将打开服务列表,在服务列表窗口中可以看到刚刚创建的BookLib实例服务已经成功运行,如图2.16所示。
2.1.2 使用静默方式创建数据库
静默方式又称为非交互式方式,允许用户在命令行模式下,通过一系列预先配置的参数来创建数据库,这种模式不会弹出图形化的向导界面。这种预先配置的模式可以快速创建一个数据库。在命令行模式下,可以使用dbca -help命令查看dbca的命令行参数,如图2.17所示。
图2.16 数据库实例服务
图2.17 查看DBCA的命令行帮助
可以看到,要设置静默模式,需要指定-silent标志指定用静默模式运行,DBCA使用指定的值来创建数据库,可以是一个响应文件或者是一个命令行的选项。响应文件是一个扩展名为.rsp的文本文件,它可以指定所有必要的参数。不过也可以使用命令行参数的方式,指定所有必需的参数来创建一个数据库。
下面的示例将演示如何使用DBCA命令通过指定命令行参数的方式来创建一个名为ORCL的数据库。示例命令如下:
C:>dbca -silent -createDatabase -templateName General_Purpose.dbc
-gdbname ORCL
-sid ORCL -responseFile NO_VALUE -characterSet ZHS16GBK -memoryPercentage
30 -e
mConfiguration LOCAL
输入 SYS 用户口令:
oracle
输入 SYSTEM 用户口令:
oracle
输入 DBSNMP 用户口令:
oracle
输入 SYSMAN 用户口令:
oracle
复制数据库文件
1% 已完成
3% 已完成
11% 已完成
18% 已完成
……
在这个命令中,-silent参数指示将要使用没有图形界面的静默模式进行安装,-templateName指定模板名称,位于ORACLE_HOMEassistantsdbcatemplates文件夹下,也可以使用DBCA图形化工具来创建一个定制的模板文件。-gbdname指定全局数据库名称;-sid指定数据库的全局标识,这里都指定了ORCL;-responseFile指定响应文件,因为不使用响应文件,所以指定了NO_VALUE;-characterSet用于指定字符集,这里选择了简体中文ZHS16GBK;-memoryPercentage指定数据库实例将占用的物理百分比;-emConfiguration用于指定Oracle企业管理器的安装位置。
注意:《Oracle Database Installation Guide》文档中包含了使用静默模式的详细的介绍,它介绍了响应文件的工作方式以及如何创建一个响应文件,对于需要了解使用DBCA和响应文件方式来创建数据库的读者来说,有必要进行仔细阅读。
2.1.3 删除现有数据库
DBCA同样提供了删除数据库的选项,这个向导使得用户可以非常轻松地将Oracle中已经存在的数据库删除。删除数据库包含删除Oracle的例程和数据库文件。使用DBCA删除BookLib的过程如以下步骤所示。
(1)打开DBCA,在可执行的选项中选择“删除数据库”,如图2.18所示。选中了执行选项后,单击“下一步”按钮,将进入到数据库选择窗口,如图2.19所示。
(2)在选择了所要删除的数据库之后,单击“完成”按钮,DBCA将弹出确认提示,提示删除将会移除数据库实例和数据库文件,在确保无误后单击“确定”按钮,将开始进行数据库的删除工作,如图2.20所示。
图2.18 删除数据库选项
图2.19 选择所要删除的数据库
图2.20 开始数据库的删除工作
数据库删除完成后,可以看到在服务列表中的数据库服务和监听服务都已经被移除,这也就是说Oracle实例已经被删除,并且磁盘上的数据库文件也进行了删除工作。
有时候使用DBCA不一定能够正常删除数据库,此时可以手工来实现数据库的删除工作。手工删除分为两步:
删除数据库的数据文件、重做日志文件、控制文件及初始化参数文件。
对于Windows平台,需要删除数据库实例,也就是删除相关的服务进程。
可以使用SQL语句DROP DATABASE删除一个数据库,这个语句将会移除数据库,删除所有的控制文件和数据文件。如果数据库使用了服务器参数文件SPFILE,那么SPFILE也会被删除,不过它不会移除归档日志文件和备份文件,这可以通过RMAN来完成。
要能使用DROP DATABASE语句,除了具有SYSDBA的权限外,Oracle必须启动到MOUNT状态,并且处于RESTRICTED SESSION模式,示例语句如下:
SQL> SHUTDOWN IMMEDIATE
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> STARTUP MOUNT
ORACLE 例程已经启动。
Total System Global Area 778387456 bytes
Fixed Size 1374808 bytes
Variable Size 268436904 bytes
Database Buffers 503316480 bytes
Redo Buffers 5259264 bytes
数据库装载完毕。
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
系统已更改。
SQL> DR
评论
还没有评论。