第2章 数据库和表的创建_第1页
第2章 数据库和表的创建_第2页
第2章 数据库和表的创建_第3页
第2章 数据库和表的创建_第4页
第2章 数据库和表的创建_第5页
已阅读5页,还剩84页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章 数据库和表的创建

2.1基本概念

2.1.1 数据库数据库(Database)是一个数据容器,它包含了表、索引、视图、簇、过程、函数、包等对象,并对其进行统一的管理。

1.数据库的内部结构

表空间(TABLESPACE)

表空间是数据库的逻辑划分,每个数据库至少有一个表空间(称作SYSTEM表空间)表(TABLE)表是数据库中存放用户数据的对象。它包含一组固定的列。表中的列描述该表所跟踪的实体的属性,每个列都有一个名字和若干个属性。约束条件(CONSTRAINT)主键(PrimaryKey) 缺省(DEFAULT)约束条件检查(CHECK)约束条件惟一性(UNIQUE)约束条件外键(ForeignKey)约束条件1第2章 数据库和表的创建2.1.1数据库分区(PARTITION)

在非常大的数据库中,可以通过把一个大表的数据分成多个小表来简化数据库的管理,可对表分区,还可以对索引进行分区。分区不仅简化了数据库的管理还改善了应用性能。索引(INDEX)

索引是帮助用户在表中快速地找到记录的数据库结构。它既可以提高数据库性能,又能够保证列值的惟一性。簇(CLUSTER)

经常被同时访问的表在物理位置上可以存储在一起。为了将它们存储在一起,就要创建一个簇来管理这些表。表中相关的列称为簇键(CLUSTERKEY)。用户(USER)

用户拥有数据库的对象。方案(SCHEMA)

用户帐号拥有的对象集称为用户的方案(SCHEMA)同义词

为了给不同的用户使用数据库对象时提供一个简单的、惟一标识数据库对象的名称,可以为数据库对象创建同义词。

2第2章 数据库和表的创建2.1.1数据库权限及角色(ROLE)

为了访问其他帐号所有的对象,必须首先被授予访问这个对象的权限。段(SEGMENT)、盘区(EXTENT)和数据块(DATABLOCK)

依照不同的数据处理性质,可能需要在数据表空间内划分出不同区域,以存放不同数据,将这些区域称之为“段”(SEGMENT)。

而段其实就是由许多盘区组合而成。数据块是最小的储存单元,Oracle9i常用的数据块大小是2KB或4KB。

3第2章 数据库和表的创建2.1.1数据库数据库外部结构数据文件(DATAFILE)每一个Oracle9i数据库有一个或多个数据文件,而一个数据文件只能属于一个表空间。表空间第二表空间第三表空间数据库数据文件表空间4第2章 数据库和表的创建2.1.1数据库重做日志文件(REDOLOGFILES)

事务被记录在联机重做日志文件(OnlineRedoLogFile)中。当数据库中的数据遭到破坏时,可以用这些日志来恢复数据库。

控制文件(CONTROLFILES)

每个Oracle9i数据库都有一个控制文件,用以记录与描述数据库的外部结构。它们包括:

l

Oracle9i数据库名称与建立时间; l

数据文件与重置日志文件名称及其所在位置;

l日志记录序列码(logsequencenumber)。

5第2章 数据库和表的创建2.1.2表表结构

表是在日常工作和生活中经常使用的一种表示数据及其关系的形式,例如下表就是一个学生情况表。关系数据库使用表(即关系)来表示实体及其联系。表结构每个表包含一组固定的列,而列由数据类型(DATATYPE)和长度(LENGTH)两部分组成,以描述该表所跟踪的实体的属性。记录 表中的一行称为一个记录(Record),表是记录的有限集合。字段 构成记录的每个数据项称为字段(Field)。

关键字 关键字可以将表中的不同记录区分开来。

6第2章 数据库和表的创建2.1.2表关系

主键(PK,PrimaryKey)是确定表记录惟一性的列集(一个列或多个列)。

外键(FK,ForeignKey)是引用一个存在的主键的列集。 表与表之间有下列关系:一对一关系一对多关系多对多关系表示实体的表和表示实体联系的表

关系数据库用表来反映数据本身的内容以及反映数据之间的联系。所以在关系数据库中,包含了反映实体信息的表和反映实体之间联系的表。7第2章 数据库和表的创建2.1.2表表示实体的表和表示实体联系的表记录学生情况的表记录课程情况的表表示他们俩联系的表8第2章 数据库和表的创建2.1.3实例数据库实例(instance)也称作服务器(server),是指用来访问数据库文件集的存储结构(统称为SystemGlobalArea,即SGA)及后台进程的集合9第2章 数据库和表的创建2.1.3实例系统全局区

当激活Oracle9i数据库时,系统会先在内存内规划一个固定区域,用来存储每位使用者所需存取的数据以及Oracle9i运作时必备的系统信息。

10第2章 数据库和表的创建2.1.3实例数据块缓存区 减少存取数据时造成的磁盘读写动作,进而提升数据存取的效率。字典缓存区 数据库对象的信息存储在数据字典中,这些信息包括用户帐号、数据文件名、盘区位置、表说明和权限等。重做日志缓冲区 事务首先被记录在称作为重做日志缓冲区的SGA中。数据库可以周期性地分批向联机重做日志文件中写入修改的内容,从而优化这个操作。SQL共享池

SQL共享池存储数据字典缓存区及库缓存区(librarycache),即对数据库进行操作的语句信息。11第2章 数据库和表的创建2.1.3实例后台进程

DBWR(数据库写入程序)

负责将数据块缓存区内变动过的数据块回写至硬盘内的数据文件。

LGWR(日志写入程序) 负责将重做日志缓冲区内的数据变动记录循序写入重做日志文件。SMON(系统监控程序) 数据库不正常被关闭,下一次激活数据库时将由SMON进行必要的数据库修复动作。PMON(进程监控程序)

PMON清除数据块缓存区内不再使用的空间,并释放该程序之前使用的系统资源。CKPT(检查点进程) 在适当时候产生一个checkpoint事件。RECO(恢复进程)

RECO处理程序会自动处理分布式操作失败时产生的问题。ARCH(归档进程)

LGWR后台进程以循环方式向联机重做日志文件写入。

12第2章 数据库和表的创建2.1.3实例图2.6后台进程与数据库外部结构、SGA的关系

13第2章 数据库和表的创建2.2界面创建数据库和表

2.2.1 数据库创建和删除

利用界面创建数据库

一个Oracle数据库的最简单形式包含下列文件

l

一个或多个数据文件。 l

一个或多个控制文件。 l

两个或多个联机重做日志文件。数据库内部结构包括:

l

多用户/方案。 l

一个或多个回滚段。 l

一个或多个表空间。 l

数据字典表。用户对象(表、索引、视图等)。访问数据库的服务器的最小构成如下:

l一个SGA(其中包括数据块缓存区、重做日志缓冲区、SQL共享池)。 l

SMON后台进程。 l

PMON后台进程。 l

DBWR后台进程。 l

LGWR后台进程。 l

CKPT后台进程。 l与PGA相关联的用户进程。14第2章 数据库和表的创建2.2.1 数据库创建和删除【例2.1】使用DBCA创建XSCJ数据库。启动DBCA,DBCA激活并初始化,如图所示。DBCA初始化完成后自动进入“欢迎”窗口,如图所示。15第2章 数据库和表的创建2.2.1 数据库创建和删除单击“下一步”按钮,进入“数据库创建”窗口,如图所示。

Oracle9iDBCA总共提供四种操作模式,协助您进行不同的数据库管理工作,它们分别是:

l创建数据库(Createadatabase); l在数据库中配置数据库选项(Configurationdatabase optionsinadatabase); l

删除数据库(Deleteadatabase);l

管理模板(ManageTemplates)。

16第2章 数据库和表的创建2.2.1 数据库创建和删除选择创建数据库选项,单击“下一步”按钮,进入“数据库模板”窗口,如图所示。

DBCA提供三种数据库预设模板文件

l

数据仓库(DataWarehouse); l

事务处理(Transactionprocessing);

l通用数据库(GeneralPurpose)。

17第2章 数据库和表的创建2.2.1 数据库创建和删除选择NewDatabase选项,单击“下一步”按钮,进入“数据库标识”窗口,如图所示18第2章 数据库和表的创建2.2.1 数据库创建和删除单击“下一步”按钮,进入“数据库选项”窗口,如图所示。19第2章 数据库和表的创建2.2.1 数据库创建和删除在此配置数据库欲支持的选项。DBCA允许您在建立新数据库时指定欲支持的选项,其中包括:OracleSpatialOracleUltraSearchOracleLabelSecurityOracleOLAPService示例方案(ExampleSchema)

使用默认值,单击“下一步”按钮,进入“数据库连接选项”窗口,如图所示。在该窗口设置将要创建的数据库的运作模式。

20第2章 数据库和表的创建2.2.1 数据库创建和删除选择“专用服务器模式”,单击“下一步”按钮,进入“初始化参数”窗口,如图所示。21第2章 数据库和表的创建2.2.1 数据库创建和删除初始化参数窗口—归档选项卡

22第2章 数据库和表的创建2.2.1 数据库创建和删除初始化参数窗口—数据库大小选项卡

23第2章 数据库和表的创建2.2.1 数据库创建和删除初始化参数窗口—文件位置选项卡

24第2章 数据库和表的创建2.2.1 数据库创建和删除单击“下一步”按钮,进入“数据库存储”窗口,如图所示。在真正开始建立数据库以前,DBCA会整理出各种数据库的存放位置。可以先展开“存储”下面的子文件夹,然后检查各档案实际存放路径,必要时可直接修改它。25第2章 数据库和表的创建2.2.1 数据库创建和删除数据文件的一般信息窗口

26第2章 数据库和表的创建2.2.1 数据库创建和删除在如图所示的窗口中可以进行如下设置:数据文件是否能自动扩展、每次扩展多少以及最大容量。27第2章 数据库和表的创建2.2.1 数据库创建和删除 单击“下一步”按钮,进入“创建选项”窗口,如图所示28第2章 数据库和表的创建2.2.1 数据库创建和删除 按下“完成”按钮,进入“概要”窗口,如图所示。“概要”窗口提供了使用DBCA创建的数据库或模板的全部信息。此概要包括前几个步骤中为数据库选定的所有属性。29第2章 数据库和表的创建2.2.1 数据库创建和删除单击“确定”按钮,之后就可以把剩下的工作交给DBCA了!它会先创建起始参数文件,然后在激活OracleInstance之后进行一连串的工作,如图所示。实际创建时间需视你的硬件速度而定。30第2章 数据库和表的创建2.2.1 数据库创建和删除图所示的窗口给出了SYS与SYSTEM帐号的密码,分别为change_on_install和manager,可在登入数据库后或在此时进行修改。数据库信息窗口

口令管理窗口

31第2章 数据库和表的创建2.2.1 数据库创建和删除修改数据库

对已存在的数据库可以进行的修改主要有:

l

增加或删除数据文件 l

改变数据文件的大小和增长方式 l

改变日志文件的大小和增长方式激活OEM并登录XSCJ数据库,显示如图所示的窗口。 32第2章 数据库和表的创建2.2.1 数据库创建和删除改变数据文件的大小和增长方式

展开“存储管理器”,然后再展开“数据文件”文件夹,选择要修改的数据文件。 【例2.2】将XSCJ数据库的users01.dbf的最大大小由16383M改为无限制。 在“数据文件”文件夹下直接修改数据文件。在“数据文件”文件夹下选择users01数据文件,在OEM窗口的右边子窗口中出现users01数据文件的信息,如图所示。单击“无限制”单选按钮即可把users01数据文件最大容量的值改为无限制,然后单击“应用”按钮,保存设置。33第2章 数据库和表的创建2.2.1 数据库创建和删除

在相应的表空间中修改数据文件。展开“表空间”文件夹,选择USERS表空间,显示USERS表空间的信息,如图所示。在数据文件电子表格中选择users01数据文件,单击电子表格下方的笔状的按钮,激活数据文件编辑窗口,如图所示。在存储选项卡窗口,选择“无限制”单选按钮,单击“确定”完成修改。

34第2章 数据库和表的创建2.2.1 数据库创建和删除增加数据文件 【例2.3】在XSCJ数据库增加数据文件users02,其属性均取系统默认值。在“数据文件”文件夹下增加数据文件 如图所示,选择“数据文件”文件夹,单击鼠标右键,从弹出的快捷菜单中选择“创建”,激活数据文件创建窗口,如图所示。在“名称”文本框输入数据文件名称users02,其余设置均采用系统默认值。单击“创建”按钮,系统执行创建工作,创建完成后,系统弹出创建完成信息提示框,单击“确定”按钮,完成创建数据文件操作。35第2章 数据库和表的创建2.2.1 数据库创建和删除如图图2.31利用快捷菜单创建数据文件

图2.32创建数据文件窗口

36第2章 数据库和表的创建2.2.1 数据库创建和删除在相应的表空间中增加数据文件删除数据文件

在表空间信息窗口修改数据文件

37第2章 数据库和表的创建2.2.1 数据库创建和删除删除数据库配置数据库连接OracleConfigurationAssistant具有一个用于配置下列元素的图形用户界面:

l

监听程序配置。 l

命名方法配置。 l

本地网络服务名配置。 l

目录使用配置。进行配置数据库的步骤如下:

开始→程序→Oracle-OraHome90→ConfigurationandMigrationTools→NetConfigurationAssistant监听程序配置命名方法配置 ①本地命名(本地)。 ②目录命名(目录)。 ③OracleNames(Oracle名称)。 ④主机命名(主机名)。 ⑤网络信息服务(SunNIS)。 ⑥单元目录服务(DCECDS)。

38第2章 数据库和表的创建2.2.1 数据库创建和删除本地网络服务名配置目录服务使用配置选择“本地网络服务名配置”以配置,单击“下一步”,进入“网络服务名配置”窗口。选择“添加”以添加新的服务名,单击“下一步”,进入“服务器版本选择”窗口。选择“Oracle8i或更高版本数据库或服务”,为创建的Oracle9i数据库配置网络服务。单击“下一步”,进入“服务名”窗口。在“服务名”文本框输入数据库服务名XSCJ,单击“下一步”,进入“选择协议”窗口。选择的协议包括:TCP、TCPS、IPC和NMP。选择“TCP”协议,单击“下一步”,进入“TCP/IP协议”窗口。 在该窗口需要进行如下设置:主机名端口号在“主机名”文本框输入数据库所在计算机的主机名WIN2000,选择TCP/IP协议的标准端口号,单击“下一步”,进入“测试网络服务名”配置窗口。

39第2章 数据库和表的创建2.2.1 数据库创建和删除不进行测试,单击“下一步”,进入“网络服务名”窗口,确定最后的网络服务名。单击“下一步”,进入“是否配置另一个网络服务名”窗口。选择“否”,单击“下一步”,网络服务名配置完毕。40第2章 数据库和表的创建2.2.2表创建、修改和删除

创建和管理表空间

利用OEM创建和管理表空间1)创建表空间 【例2.4】使用OEM创建永久性表空间MYTS。

①在图的窗口中,选中表空间文件夹,单击鼠标右键,从快捷 菜单中选择“创建”,激活如图的“创建表空间”界面。该界面 包括两个选项卡,一般信息选项卡和存储选项卡。

②单击“存储”选项卡。在该选项卡中为表空间设置存储参数。

③单击“创建”按钮。数据库系统将执行表空间的创建任务,单 击“确定”按钮完成表空间创建。2)管理表空间 管理表空间包括修改表空间参数、添加数据文件和改变表空间 的状态等。

41第2章 数据库和表的创建2.2.2表创建、修改和删除利用CREATETABLESPACE命令创建和管理表空间

(1)利用CREATETABLESPACE创建表空间

语法格式:

CREATETABLESPACEtablespace_name DATAFILE‘path/filename’[SIZEinteger[K∣M]] [REUSE] [AUTOEXTEND[OFF∣ ON[NEXTinteger[K∣M]] [MAXSIZEUMLIMITED∣integer[K∣M]]]] [DEFAULTSTORAGEstorage_clause] [ONLINE∣OFFLINE] [LOGGING∣NOLOGGING] [PERMANENT∣TEMPORARY] [EXTENTMANAGEMENT[DICTIONARY ∣LOCAL[AUTOALLOCATE∣UNIFORM [SIZEinteger[K∣M]]]]]

42第2章 数据库和表的创建2.2.2表创建、修改和删除注意:如果指定了LOCAL,就不能指定DEFAULTSTORAGEstorage_clause和TEMPORARY。

storage_clause的语法格式如下:

STORAGE( INITIALinteger[K︱M] NEXTinteger[K︱M] MINEXTENTSinteger︱UNLIMITED MAXEXTENTSinteger PCTINCREASEinteger FREELISTSinteger FREELISTGROUPSinteger OPTIMAL[integer[K︱M]︱NULL])

43第2章 数据库和表的创建2.2.2表创建、修改和删除【例2.5】创建大小为50M的表空间TEST,禁止自动扩展数据文件。

CREATETABLESPACETEST LOGGING DATAFILE 'D:\ORACLE\ORADATA\XSCJ\TEST01.DBF'SIZE50M REUSEAUTOEXTENDOFF;【例2.6】创建表空间DATA,允许自动扩展数据文件,且采用字典管理表空间。

CREATETABLESPACEDATA LOGGING DATAFILE'D:\ORACLE\ORADATA\XSCJ\DATA01.DBF'SIZE50M REUSEAUTOEXTENDONNEXT10MMAXSIZE200M DEFAULTSTORAGE(INITIAL12KNEXT12KMINEXTENTS1 MAXEXTENTS249PCTINCREASE50) EXTENTMANAGEMENTDICTIONARY;

44第2章 数据库和表的创建2.2.2表创建、修改和删除(3) 利用命令管理表空间

语法格式:

ALTERTABLESPACEtablespace_name [ADDDATAFILE∣TEMPFILE‘path/filename’[SIZEinteger[K∣M]] [REUSE] [AUTOEXTEND[OFF∣ ON[NEXTinteger[K∣M]] MAXSIZE[UNLIMITED∣integer[K∣M]]

] [RENAMEDATAFILE‘path\filename’,…nTO‘path\re_filename’,…n] [DEFAULTSTORAGEstorage_clause] [ONLINE∣OFFLINE [NORMAL∣TEMPORARY∣IMMEDIATE]] [LOGGING∣NOLOGGING] [READONLY∣WRITE] [PERMANENT] [TEMPORARY]45第2章 数据库和表的创建2.2.2表创建、修改和删除【例2.7】通过ALTERTABLESPACE命令把一个新的数据文件添加到DATA表空间,并指定了AUTOEXTENDON和MAXSIZE300M。

ALTERTABLESPACEDATA ADDDATAFILE‘D:\ ORACLE\ORADATA\XSCJ\DATA02.DBF'SIZE50M REUSEAUTOEXTENDONNEXT10240KMAXSIZE500M;

46第2章 数据库和表的创建2.2.2表创建、修改和删除2. 数据类型

47第2章 数据库和表的创建2.2.2表创建、修改和删除创建表

【例2.8】通过Oracle企业管理器(OEM)在XSCJ数据库中创建学生情况表。学生情况表的表名为XS,表结构如表所示。

48第2章 数据库和表的创建2.2.2表创建、修改和删除向导创建表

(1)鼠标右键单击表文件夹,在快捷菜单中选择“使用向导创建”,激活创建向导窗口。

49第2章 数据库和表的创建2.2.2表创建、修改和删除 (2)单击“下一步”按钮,进入“列定义”窗口,如图所示。

50第2章 数据库和表的创建2.2.2表创建、修改和删除

(3)单击“下一步”按钮,进入“关键字定义”窗口,如图所示。

51第2章 数据库和表的创建2.2.2表创建、修改和删除 (4)单击“下一步”按钮,进入“空约束条件和惟一约束条件”窗口,如图所示。52第2章 数据库和表的创建2.2.2表创建、修改和删除

(5)单击“下一步”按钮,进入“外约束条件”窗口,如图所示。

53第2章 数据库和表的创建2.2.2表创建、修改和删除 (6)单击“下一步”按钮,进入“检查约束条件”窗口,如图所示。54第2章 数据库和表的创建2.2.2表创建、修改和删除

(7)单击“下一步”按钮,进入“存储信息”窗口,如图所示。55第2章 数据库和表的创建2.2.2表创建、修改和删除

(8)单击“下一步”按钮,进入“分区选项”窗口,如图所示。

56第2章 数据库和表的创建2.2.2表创建、修改和删除

(9)单击“下一步”按钮,进入向导的最后一个窗口——“概要”窗口,如图所示。57第2章 数据库和表的创建2.2.2表创建、修改和删除2)手工创建表

从企业管理器快捷菜单中选择“创建”,进入“创建表”窗口,如图所示。

58第2章 数据库和表的创建2.2.2表创建、修改和删除“一般信息”选项卡名称方案表空间标准按索引组织的表(IOT)如果选中“定义列”单选按钮则表示在可编辑的电子表格中编辑或将列添加到数据库表。该电子表格包括“名称”、“数据类型”、“大小”、“小数位数”、“是否为空”和“默认值”

“约束条件”选项卡

名称 类型 是否禁用引用方案引用表级联删除检查条件59第2章 数据库和表的创建2.2.2表创建、修改和删除能否延迟是否初始设置为延迟是否不进行验证表列引用列

“簇列”选项卡

选中“将表定义为簇的一部分”选项需定义以下选项:方案簇表列簇列“分区”选项卡 “范围分区”列表框中包含如下设置:分区名表空间高值60第2章 数据库和表的创建2.2.2表创建、修改和删除“存储”选项卡

在“区”选项组内,可以指定下列一些参数:初始大小增量最小数量最大数量保留用于更新的空闲空间的百分比行插入备选对象的使用空间阀值的百分比在“事务处理数量”选项组内,可以设置下列两个参数:初始值最大值“空闲列表”选项组内,可以设置如下两个参数:空闲列表组61第2章 数据库和表的创建2.2.2表创建、修改和删除 “缓冲池”选项为表定义默认缓冲池

KEEPRECYCLEDEFAULT“选项”选项卡

在该选项卡中,可以定义表的并发操作、是否覆盖和如何审计等特性。 可以通过两种方式来得到服务器的数量:默认值:所用查询服务器的默认数量。

值:用户指定的查询服务器数量。“约束条件存储”选项卡 该选项卡用来确定如何存储表的UNIQUE和PRIMARY约束条件

62第2章 数据库和表的创建2.2.2表创建、修改和删除修改表

对一个已存在的表可以进行的修改操作包括:增加列 当原来所创建的表中需要增加项目时,就要向表中增加列。 【例2.9】表XS中添加一个“奖学金等级”,名称JXJ,NUMBER类型,允许为空值

增加列63第2章 数据库和表的创建2.2.2表创建、修改和删除

删除列64第2章 数据库和表的创建2.2.2表创建、修改和删除修改已有列的属性(列名、数据类型、是否为空值)修改存储方式等信息

表的删除

删除一个表时,表的定义、表中的所有数据以及表的索引、触发器、约束等均被删除。65第2章 数据库和表的创建2.3命令方式创建数据库和表

2.3.1 创建数据库

开始建立新的Oracle9i数据库之前,建议先做好下列准备工作:评估数据表与索引的存放位置,如果可能的话预估其所需空间。规划操作系统下数据库实体文件的存放方式。确定全局数据库名称。熟悉init.ora文件内较重要的参数,甚至服务器参数文件(serverparameterfile)的使用时机及其作用。选定适当的数据库字符集。选定数据块大小。熟悉Oracle9i数据库的激活/关闭方式和与其搭配的各种选项(如STARTUP指令的nomount、mount、open选项)。确认物理内存是否足以激活Oracle9iInstance。确认Oracle9i服务器的磁盘空间足以创建新数据库。66第2章 数据库和表的创建2.3.1 创建数据库下面以创建名为mydb的数据库来介绍手动创建数据库的步骤。

1.设定实例标识符

使用如下命令设定SID:C:\>SETORACLE_SID=mydb

2.设定数据库管理员的验证方法

密码文件验证方法:

D:\>Oracle\Ora90\Bin\orapwd file=D:\oracle\ora90\DATABASE\PWDmydb.ora

Password=ORACLEentries=53.创建初始化参数

创建新数据库之前必须新增或编辑的初始化参数

l全局数据库名称; l控制文件名称与路径; l数据块大小; l影响SGA容量的初始化参数; l设定处理程序最大数目; l设定空间撤消(Undo)管理方法。

67第2章 数据库和表的创建2.3.1 创建数据库【例2.10】创建数据库mydb的初始化参数文件initmydb.ora。

/*Copyright(c)1991,2001,2002byOracleCorporation*/ /*CacheandI/O*/ DB_BLOCK_SIZE=4096 DB_CACHE_SIZE=20971520 /*DiagnosticsandStatistics*/ BACKGROUND_DUMP_DEST=D:\oracle\admin\mydb\bdump

CORE_DUMP_DEST=D:\oracle\admin\mydb\bdump

TIMED_STAISTICS=TRUE USER_DUMP_DEST=D:\oracle\admin\myd\udump

/*ControlFileConfiguration*/ CONTROL_FILES=(“D:\oracle\admin\myd\control01.ctl”, “D:\oracle\admin\myd\control02.ctl”, “D:\oracle\admin\myd\control03.ctl”)68第2章 数据库和表的创建2.3.1 创建数据库 /*Archive*/ LOG_ARCHIVE_DEST_1=’LOCATION= D:\oracle\admin\mydb\archive’ LOG_ARCHIVE_FORMAT=%t_s%.dbf LOG_ARCHIVE_START=TRUE /*Miscellaneous*/ COMPATIBLE=9.0.0 DB_NAME=mydb

/*Distributed,ReplicationandSnapshot*/ DB_DOMAIN=”” REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE /*NetworkReginstration*/ INSTANCE_NAME=mydb

69第2章 数据库和表的创建2.3.1 创建数据库 /*Pools*/ JAVA_POOL_SIZE=31457280 LARGE_POOL_SIZE=1048576 SHARED_POOL_SIZE=52428800 /*ProcessesandSessions*/ PROCESSES=150 /*RedoLogandRecovery*/ FAST_START_MTTR_TARGET=300 /*ResourceManager*/ RESOURCE_MANAGER_PLAN=SYSTEM_PLAN /*Sort,HashJoins,BitmapIndexes*/ SORT_AREA_SIZE=52428870第2章 数据库和表的创建2.3.1 创建数据库4.启动SQL*Plus并以SYSDBA连接到Oracle实例

D:\>Oracle\Ora90\Bin\sqlplus/nolog SQL>connectsys/change_on_installassysdba5.启动实例

SQL>STARTUPNOMOUNT

6.发布CREATEDATABASE语句

Oracle依据在CREATEDATABASE语句中指定的子句或者设置的初始化参数来执行其操作:

l

创建数据文件; l

创建控制文件; l

创建重做日志文件并建立ARCHIVELOG模式; l

创建SYSTEM表空间和SYSTEM回滚段; l

创建数据字典; l

设置存储数据在数据库中的字符集; l

设置数据库时区;

l

装载和打开数据库。

71第2章 数据库和表的创建2.3.1 创建数据库语法格式:

CREATEDATABASEdatabase_name [CONTROLFILEREUSE] [LOGFILE[GROUPinteger](‘path\filename’)[SIZEinteger[K∣M][REUSE]],…n] [MAXLOGFILESinteger] [MAXLOGMEMBERSinteger] [MAXLOGHISTORYinteger] [MAXDATAFILESinteger] [MAXINSTANCESinteger] [ARCHIVELOG︱NOARCHIVELOG] [CHARACTERSETcharset] [NATIONALCHARACTERSETcharset] [DATAFILE‘path\filename’[SIZEinteger[K︱M][REUSE]] [AUTOEXTEND[OFF︱ON[NEXTinteger[K︱M] MAXSIZE[UNLIMITED︱integer[K︱M]]]]]

72第2章 数据库和表的创建2.3.1 创建数据库【例2.11】CREATEDATABASE语句创建数据库mydb。

CREATEDATABASEmydb

MAXINSTANCES1 MAXLOGHISTORY1 MAXLOGFILES5 MAXLOGMEMBERS5 MAXDATAFILES100 DATAFILE'D:\oracle\oradata\mydb\system01.dbf' SIZE325MREUSEAUTOEXTENDONNEXT10240KMAXSIZEUMLIMITED UNDOTABLESPACEUNDOTBSDATAFILE 'D:\oracle\oradata\mydb\undotbs01.dbf' SIZE150MREUSEAUTOEXTENDONNEXT10240KMAXSIZE UMLIMITED DEFAULTTEMPORARYTABLESPACEtemps1 CHARACTERSETtZHS16GBK NATIONALCHARACTERSETAL16UTF16 LOGFILEGROUP1('D:\oracle\oradata\mydb\redo01.log')SIZE100M, GROUP2('D:\oracle\oradata\mydb\redo02.log')SIZE100M, GROUP3('D:\oracle\oradata\mydb\redo03.log')SIZE100M

73第2章 数据库和表的创建2.3.1 创建数据库7.创建其他表空间

【例2.12】创建表空间。

l

创建回滚表空间

CREATETABLESPACERBSDATAFILE’D:\Oracle\oradata\mydb\rbs01.dbf’SIZE256MREUSEAUTOEXTENDONNEXT5120KMINIMUMEXTENT512KDEFAULTSTORAGE(INITIAL512KNEXT512KMINEXTENTS8MAXEXTENTS4096);

74第2章 数据库和表的创建2.3.1 创建数据库

l

创建用户表空间 CREATETABLESPACEUSERS DATAFILE’D:\Oracle\oradata\mydb\users01.dbf’SIZE128MREUSE AUTOEXTENDONNEXT1280K MINIMUMEXTENT128K DEFAULTSTORAGE (INITIAL128KNEXT128KMINEXTENTS1MAXEXTENTS4096 PCTINCREASE0);

l

创建临时表空间 CREATETABLESPACETEMP DATAFILE’D:\Oracle\oradata\mydb\temp01.dbf’SIZE32MREUSE AUTOEXTENDONNEXT640K MINIMUMEXTENT64K DEFAULTSTORAGE (INITIAL64KNEXT64KMINEXTENTS1MAXEXTENTS UNLIMITEDPCTINCREASE0) TEMPORARY; 75第2章 数据库和表的创建2.3.1 创建数据库l

创建工具表空间 CREATETABLESPACETOOLS DATAFILE’D:\Oracle\oradata\mydb\tools01.dbf’SIZE64MREUSE AUTOEXTENDONNEXT320K MINIMUMEXTENT32K DEFAULTSTORAGE (INITIAL32KNEXT32KMINEXTENTS1MAXEXTENTS4096PCTINCREASE0);

l

创建索引表空间

CREATETABLESPACEINDX DATAFILE’D:\Oracle\oradata\test\indx01.dbf’SIZE32MREUSE AUTOEXTENDONNEXT1280K MINIMUMEXTENT128K DEFAULTSTORAGE (INITIAL128KNEXT128KMINEXTENTS1MAXEXTENTS4096PCTINCREASE0);76第2章 数据库和表的创建2.3.1 创建数据库8.创建数据字典表。

数据库建立之后执行两个重要的指令文件:catalog.sql和cataproc.sql。

例如:

D:\oracle\ora90\rdbms\admin\catalog.sql

D:\oracle\ora90\rdbms\admin\catproc.sql将实例启动服务设置成自动启动方式。 例如,将mydb实例启动服务设置成自动启动方式:

D:\oracle\ora90\bin\oradim-edit-sidmydb-startmodeauto

77第2章 数据库和表的创建2.3.2 修改数据库语法格式:

ALTERDATABASEdatabase_name [ARCHIVELOG] [NOARCHIVELOG] [RENAMEFILE‘path\filename’,…nTO ‘path\re_filename’,…n] [CREATEDATAFILE‘data_filename‘ [AS‘path\filename’[SIZEinteger[K∣M]] [REUSE]],…n] [DATAFILE‘path\filename’[ONLINE∣OFFLINE[DROP] ∣RESIZEinteger[K∣M] ∣AUTOEXTENDOFF ∣ON[NEXTinteger[K∣M]][MAXSIZE UMLIMITED∣integer[K∣M]]]

78第2章 数据库和表的创建2.3.2 修改数据库【例2.13】(1)使上面创建的数据库切换到归档模式。

ALTERDATABASEmydb

ARCHIVELOG;

(2)创建新的数据文件以代替原来的数据文件。

ALTERDATABASEmydb

CREATEDATAFILE‘users’AS ‘d:\oracle\oradata\mydb\users01.dbf’ SIZE50MREUSEAUTOEXTENDONNEXT20M MAXSIZE500M EXTENTMANAGEMENTLOCAL;

79第2章 数据库和表的创建2.3.2 修改数据库【例2.14】使用ALTERDATABASE命令来手工扩展users01数据文件。 ALTERDATABASEmydb

DATAFILE‘d:\oracle\oradata\mydb\users01.dbf’ RESIZE200M;

80第2章 数据库和表的创建2.3.3创建表语法格式:

CREATETABLE[schema.]table_name (column_namedatatype[DEFAULT expression][column_constraint],…n) [PCTFREEinteger] [PCTUSEDinteger] [INITRANSinteger] [MAXTRANSinteger] [TABLESPACEtablespace_name] [STORGEstorage_clause] [CLUSTERcluster_name(cluster_column,…n)] [ASsubquery]81第2章 数据库和表的创建2.3.3创建表【例2.15】利用CREATETABLE命令为XSCJ数据库建立表XS_KC。 CREATETABLEXS_KC ( XHchar(6)NOTNULL, KCHcahr(6)NOTNULL, CJnumber(2)NULL, XFnu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论