下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Oracle 数据库实例的创建、删除、修改以 SUSE10SP2、Oracle10gR2为例。本文中的数据库实例这一称谓应该换做数据库更为准确,数据库可以理解为是一个物理的静态概念, 主要包括一些物理存在的数据库文件, 而数据库实例则是一个动态概念, 包括一些内存区域以及若干进程, 数据库实例是对数据库进行操作的执行者。(20090714修改)安装完 Oracle 数据库系统的安装后,需要创建数据库实例才能真正开始使用 Oracle 数据库服务。总结起来, Oracle 有三种创建数据库实例的方法。第一种,最常用也最简单,那就是通过DBCA(Database Configuration Ass
2、istant),这是Oralce提供的一个图形界面的数据库实例配置工具,通过它可以创建、删除和修改数据库实例,它的使用也比较简单、易 懂,交互式的图形界面操作,非常准确有效的提示与配置,是一个比较方便的创建数据库实例的方式。按照DBCA给出的提示,很容易创建一个新数据库实例。在创建数据库的时候, DBCA 还提供了两个选项,让你可以根据刚刚设置好的参数生成一个数据库实例模板和一份数据库实例创建脚本。这两个东西是非常好,非常有用的东西,数据库模板由Oracle自己管理维护,已经创建好的数据库实例模板可以在 DBCA 图形程序新建数据库实例时作为模板来使用,另外在 DBCA 使用 response
3、File 文件或者命令行参数创建数据库时也需要用到(见后面介绍) ;数据库创建脚本是 一组脚本,包括 shell 脚本和 sql 脚本,这些脚本共同实现一个功能,那就是按照你之前在 DBCA 中设置好 的那样创建一个数据库实例 (后面也会有介绍) ,你需要做的只是将这些脚本在你的代码中调用起来。当然,你也可以选择只生成数据库模板或者数据库脚本,而不用去创建一个真的数据库(这通常很费时间)。DBCA 是一个非常强大的工具, 上面看到的只是 DBCA 最常用的创建一个数据库实例的使用, 其实 DBCA 还提供另外两种使用方法,分别是 responseFile 和命令行带参调用。先说 DBCA 的
4、responseFile 使用方法, responseFile 这个东东并不陌生,前文讲的 Oracle 自动安装就是 使用 responseFile 完成的, DBCA 的 responseFile 使用方法和 Oracle 安装程序的 responseFile 使用方法基本 一致。但 DBCA 的 responseFile 的来源只能是 Oracle 安装包中提供的模板文件,而不能向 Oracle 安装程序 的 responseFile 一样,先自己 record 一个,然后再用这个 record 去指导 Oracle 的自动安装。从 Oracle 安装 包中获取到 DBCA 的 resp
5、onseFile 模板文件后,你可以根据自己的需要编辑修改该模板文件,以完成对数 据库实例的某些参数设置( DBCA 图形界面所提供的参数设置, responseFile 中都可以设置,而且该 responseFile 模板文件的注释写的很好, 你完全不用担心无法搞定那些繁杂的数据库实例参数设置,赞 Oralce一个!)。该模板文件在 Oracle 安装包中的位置一般在 $ORACLE_PACKAGE/response 目录下。有了 responseFile 之后,你只需在调用 DBCA 的时候指定 responseFile 的位置和另外一些参数:dbca -silent|-progressO
6、nly -responseFile responseFile名称其中 -silent|-progressOnly 选项意义和 Oracle 安装程序命令行参数中的同名选项一样,表示完全字符界 面自动安装或者带图形提示界面的半自动化安装。responseFile 名称当然就是 responseFile 的具体位置了。但是,有一点不是很好,那就是使用 DBCA 的 responseFile 方式创建 Oracle 数据库实例,需要事先已 经存在一个数据库实例模板了,在 responseFile 中再指定该数据库实例模板名,然后 DBCA 再依据这个已 有的数据库实例模板完成新数据库实例的创建,所以
7、就会有前面讲到的 DBCA 图形界面创建数据库实例时 提供生成数据库实例模板的选项 (数据库实例模板也可以从一个已有数据库实例生成) ,就是在这要用到的。从上面调用 DBCA 使用 responseFile 的命令中,应该已经看到了 DBCA 是提供一些命令行参数选项的, 其实 DBCA 提供的命令行参数选项远比你想象的强大, 甚至可以这么说, 所有 DBCA 图形界面和 responseFile 能够办到的事,通过 DBCA 丰富的命令行参数选项都可以办到。你在 DBCA 图形界面上设置的参数或者在 responseFile 中指定的参数值都可以通过 DBCA 的命令行参数选项来进行设置,所
8、以你完全可以只通过 DBCA 的命令行带参调用来完成一个数据库实例的创建(当然也包括删除、修改数据库实例等所有 DBCA 图形界面所能提供的功能) 。其实,我更愿意这样认为, DBCA 的 responseFile 应用也是一种 DBCA 命令行 带参调用的使用。需要注意的是,当 DBCA 的命令行参数和 responseFile 同时设置一个参数时,命令行参 数的优先级是比 responseFile 要高的。另外,使用 DBCA 命令行带参调用新建数据库实例和使用 responseFile 新建数据库实例一样,也是需要事先已经存在一个数据库实例模板,才能完成新数据库实例的创建。一份 非常详细
9、的 DBCA 所有命令行参数选项列表,你可以通过执行 dbca -help 获得。到现在你可能已经发现,DBCA图形界面、DBCA的responseFile使用以及DBCA的命令行带参调用,其实是三个分别具备完全数据库实例设置功能的工具或者接口,分别对应不同的应用场景,它们可以满足 你几乎所有的应用需求(使用这样的工具来帮助构建自己的软件真是非常惬意的一件事情,再赞Oracle 一个!)。第二种是通过脚本(是否称为命令行方式更合适,下文描述的脚本方式其实都是命令行方式的非交互 式方法,或者说命令行的自动化方式,但其实所有脚本方式都可以将shell 脚本或 sql 脚本中的 shell 命令、s
10、qlplus 命令拆分出来,手工在 shell 中或者 sqlplus 界面中进行交互式的输入执行,这可以称为命令行的手 工方式)来完成数据库实例的代码中自动创建。这里说的脚本包括shell 脚本和 sql 脚本,这种方式可以说是最适合与编程结合的,因为这些shell脚本或者sql脚本都可以直接在shell命令中调用执行,所以可以很好与 shell 编程相结合。而这其实是基于一个非常重要的事实,即Oracle 提供了一个交互式的命令行工具sqlplus (类似与DB2的db2cmd),这个工具可以认为是一个Oracle数据库管理工具,通过它可以执行一些Oracle 的数据库管理命令,来完成一些
11、数据库管理工作(这当然就包括数据库实例的创建),同时你也可以把它当作一个SQL语句执行器,直接在里边执行你想要执行的SQL语句或者存储过程等,并获取执行结果。并且,更重要的是,sqlplus可以直接在shell命令行中进行非交互式的调用执行(通常是调用执行一段 sqlplus语句, 或者是一个由一些 sqlplus 语句组成的 sql 脚本, 我所说的 sqlplus 语句包括 Oracle 数据库管理维护命 令、SQL语句和存储过程等),这就为在shell编程中使用sqlplus完成数据库实例自动创建工作提供了可能。shell命令行中非交互式调用 sqlplus执行一段sqlplus语句是利
12、用shell编程中重定向命令的一个特性, 即分隔符重定向输入。一般用法如下:command (换行)内容 (换行)内容 自定义分隔符shell 中遇到 则会自动将下一个单词认作分隔符, 并将分隔符后面的文本当作 command 命令执行的内 容传递给 command 依次全部执行直至遇到下一个分隔符单词才结束。 这里的分隔符可以是任意自定义的单 词,通常使用EOF,举例:sqlplus / as sysdbastart sql 脚本绝对路径;SQLsql 脚本绝对路径;而在 shell 命令行中可以使用 来完成 sqlplus 对 sql 脚本的调用执行,举例:sqlplus / as sys
13、dba ./MySQL.sql以上命令会调用 sqlplus 执行当前目录下的 MySQL.sql 脚本。使用脚本来完成数据库实例的创建工作,也分为两种情况。一种是诚如前文所述的那样,在使用 DBCA 图形工具创建数据库实例的同时生成一份数据库实例创建 脚本(包括若干shell脚本和sql脚本),那么你就可以使用这份脚本,在shell中进行调用,完成数据库实例的代码自动创建。 使用这份数据库实例创建脚本创建的新数据库实例和原数据库实例是完全一样,当然,你可以将生成的脚本进行修改, 以完成你对数据库实例的某些设置, 但是请在你对脚本内容已经足够了解, 并且知道你自己在干什么的情况下修改脚本, 否
14、则你很有可能使用修改后的脚本无法正确创建数据库实例。 这种方法中 shell 脚本对 sqlplus 的使用,更多的是使用 sqlplus 来执行一些 Oracle 生成的 sql 脚本(这些 sql 脚本的内容是就是一些 sqlplus 语句的集合,它们的任务就是完成数据库实例的创建以及设置) 。另一种情况则是不依靠DBCA生成的脚本,完全由自己来编写实现一份shell脚本,在脚本中你可以调用 sqlplus 执行一段 sqlplus 语句或者其它一些 sql 脚本,以完成数据库实例的创建和设置,这完全取决于你 的实现;而最常用的用来创建数据库实例的一个方法就是在 sqlplus 中使用 c
15、reate database 语句, create database 语句提供了许多丰富的选项和参数设置, 确保你能完全创建一个自己所需要的数据库实例。 当然, 还有一些其它方法可以创建数据库实例,比如调用执行 oracle 提供某些存储过程等。至于 create database 语句的详细介绍可以参考 oracle 的 sql reference 。第三种严格来说不能算作一种创建 Oracle 数据库实例的方法,它是通过已有的数据库实例为基础来完 成新数据库实例的创建的。这种方法是首先通过第一种或者第二种方法来创建好一个数据库实例,然后将 该数据库实例的物理文件进行备份,然后直接使用备份的
16、物理文件恢复出一个与原数据库实例完全一样新 的数据库实例,所以这种方法需要和第一、二种方法相配合才能使用。这种方法其实已经属于 Oracle 数据 备份与恢复的范畴了,就是 Oracle 数据备份恢复方式中的物理备份恢复,所以这种方法可以叫做物理恢复 法。简单介绍物理恢复法,首先将一个已经存在数据库实例(最好已关闭)进行物理备份,所谓物理备份其实就是复制该数据库实例所使用的操作系统文件,这些文件主要包括DataFiles、 RedoLogs、 ControlFiles和 UndoFiles (这些文件一般存在于 $ORACLE_HOME/oradata 目录下),进行数据库实例恢复的时候只需将
17、 备份的操作系统文件复制到新的 oradata 目录下即可, 可以直接启动使用恢复后的该数据库实例。 不难看出, 这种备份恢复是依赖于操作系统平台的。详细的物理备份和恢复介绍可以参考oracle 的 backup and recovery basics 以及 backup and recoveryadvanced users guide 。说完了数据库实例的创建,现在来说说数据库实例的删除和修改。其实介绍完了数据库实例的创建, 数据库实例的删除和修改就非常简单了。基本和前文数据库实例创建的内容相一致,且比较而言更简单。数据库实例的删除从上文中数据库实例的创建不难得到,大致有两种方法,DBCA 工具和命令行方式。DBCA 工具除了能够用来创建数据库实例,当然也能够用来删除数据库实例了,且同样可以用使用 responseFile 或者命令行带参调用等方法来完成数据库实例的删除,请参考数据库实例创建部分。命令行删除数据库实例的方式,严格来讲,是使用一组 sqlplus 命令来完成数据库实例的删除,这组 sqlplus 命令可以组织在一个 sql 脚本中,然后在 shell 命令行中调用 sqlplus 程序来执行该 sql 脚本,或者直 接在 shell 命令行中利用 shell 程序重定向特性调用 sqlplus 依次
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024至2030年中国环氧树脂锌粉底漆数据监测研究报告
- 2024至2030年中国椿木指接集成材行业投资前景及策略咨询研究报告
- 2024至2030年中国摄像器材行业投资前景及策略咨询研究报告
- 2024至2030年越野汽车程控示教板项目投资价值分析报告
- 2024至2030年中国加湿机专用晶片行业投资前景及策略咨询研究报告
- 皮下注射器针头项目评价分析报告
- 2024年简易苗木买卖合同范本
- 2024年摩托买卖合同1000字
- 2024年信息服务合同格式
- 2024年合伙合同(五)
- 肾功能检查课件
- 木作柜施工方案
- 高中物理实验 探究向心力大小与半径、角速度、质量的关系 课件
- 比赛对阵表模板
- 《餐饮创业项目》课件
- 第二单元+生物体的结构层次(单元教学设计与说明)-【大单元教学】七年级生物上册同步备课系列(人教版)
- 有限空间作业审批表
- HG-T-20592-化工法兰尺寸重量查询
- 基于PLC的全自动洗衣机控制系统设计
- 第五章-劳动力及施工准备组织方案
- 可填充颜色的中国地图
评论
0/150
提交评论