数据库和表的创建管理.ppt
《数据库和表的创建管理.ppt》由会员分享,可在线阅读,更多相关《数据库和表的创建管理.ppt(155页珍藏版)》请在三一办公上搜索。
1、(郑)第2章数据库和表的创建,创建数据库和表是Oracle 10g最基本的工作,数据库和表是Oracle用于组织和管理数据的对象。本章将讲述数据库、表的基本概念,以及创建数据库和表的两种方式。2.1 基本概念Oracle是一种关系数据库管理系统(RDBMS)。关系数据库是按照二维表结构方式组织的数据集合,每个表体现了集合理论中定义的数学概念 关系。2.1.1 数据库 数据库(Database)是一个数据容器,它包含了表、索引、视图、过程、函数、包等对象,并对其进行统一的管理。,2.1.1 数据库,数据库结构是指它存储数据的方式。Oracle数据库结构分为逻辑存储结构(或称之为逻辑数据库)与物理
2、存储结构(或称之为物理数据库)。逻辑存储结构用于描述在0racle内部组织和管理数据的方式。物理存储结构定义了Oracle外部,即操作系统中组织和管理数据的方式。,2.1.1数据库,数据库的逻辑结构表空间(TABLESPACE)表空间是数据库的逻辑划分,一个表空间只属于一个数据库。下面是Oracle 10g版本默认创建的主要表空间。SYSTEM表空间。SYSTEM表空间用于存放Oracle系统内部表和数据字典的数据。SYSAUX表空间。SYSAUX表空间是Oracle 10g新增加的表空间,主要存放Oracle系统内部的常用样例用户的对象。UNDO表空间。UNDO表空间是存储撤销信息的表空间。
3、USERS表空间。USERS表空间是Oracle系统建议用户使用的表空间。TEMPORARY表空间。在Oracle数据库中,临时表空间主要供用户临时使用。除了Oracle系统默认创建的表空间以外,用户可以根据应用系统的规模及其所要存放对象创建多个表空间,以区分用户数据和系统数据。,2.1.1数据库,数据库的逻辑结构(2)表(TABLE)表是数据库中存放用户数据的对象。它包含一组固定的列。表中的列描述该表所跟踪的实体的属性,每个列都有一个名字和若干个属性。表结构的一个样例如图2.1所示除了Oracle系统默认创建的表空间以外,用户可以根据应用系统的规模及其所要存放对象创建多个表空间,以区分用户数
4、据和系统数据,2.1.1数据库,1.数据库的逻辑结构(3)约束条件(CONSTRAINT)可以为一个表列创建约束条件,此时,表中的每一行都必须满足约束条件定义所规定的条件。约束条件有以下5种。主键(Primary Key):主键是表中的一列或多个列。缺省(DEFAULT)约束条件:在表中插入一行数据但没有为列指定值时生成一个在定义表时预先指定的值。检查(CHECK)约束条件:该约束条件确保指定列中的值符合一定的条件。惟一性(UNIQUE)约束条件:用于保证应具有惟一性而又不是主键的一部分的那些列的惟一性。外键(Foreign Key)约束条件:该约束条件规定表间的关系性质。,2.1.1数据库,
5、1.数据库的逻辑结构(4)分区(PARTITION)在非常大的数据库中,可以通过把一个大表的数据分成多个小表来简化数据库的管理,这些小表称作分区。(5)索引(INDEX)索引是帮助用户在表中快速地找到记录的数据库结构,它既可以提高数据库性能,又能够保证列值的惟一性。(6)用户(USER)用户帐号虽然不是数据库中的一个物理结构,但它与数据库中的对象有着重要的关系,这是因为用户拥有数据库的对象。(7)方案(SCHEMA)用户帐号拥有的对象集称为用户的方案(SCHEMA)。(8)同义词为了给不同的用户使用数据库对象时提供一个简单的、惟一标识数据库对象的名称,可以为数据库对象创建同义词。(9)权限及角
6、色(ROLE)为了访问其他帐号所有的对象,必须首先被授予访问这个对象的权限。,2.1.1数据库,1.数据库的逻辑结构(10)段(SEGMENT)、盘区(EXTENT)和数据块(DATA BLOCK)依照不同的数据处理性质,可能需要在数据表空间内划分出不同区域,以存放不同数据,将这些区域称之为“段”(SEGMENT)。图2.2说明了段、盘区和数据块之间的关系。,逻辑数据库是由若干表空间组成,每个表空间由若干个段组成,每个段由若干区组成,每个区是由若干个连续的数据块组成,每个块是由若干字节组成。,图2.2 段、盘区和数据块之间的关系,回滚段,在逻辑上,Oracle数据库是由一个或多个表空间组成的,
7、表空间被划分为一个个独立的段,数据库中创建的所有对象都必须保存在指定的表空间中。在物理上,一个表空间对应于操作系统中的一个或多个数据文件。一个对象的数据存储在表空间的任意一个数据文件中,也可将同一个对象的数据分布在表空间的多个数据文件中,还可以将同一个对象分布在多个表空间中(如对表进行分区后的分区表)。,2.1.1数据库,数据库物理结构(1)数据文件(DATAFILE)每一个Oracle 10g数据库有一个或多个数据文件,而一个数据文件只能属于一个表空间。数据库、表空间和数据文件之间的关系如图2.3所示。,图2.3 数据库、表空间和数据文件之间的关系,2.1.1数据库,(2)重做日志文件(RE
8、DO LOG FILES)除了数据文件外,最重要的Oracle 10g数据库实体档案就是重做日志文件。(redo log files)。Oracle保存所有数据库事务的日志。这些事务被记录在联机重做日志文件(Online Redo Log File)中。当数据库中的数据遭到破坏时,可以用这些日志来恢复数据库。,写入:LGWR循环方式来使用联机重做日志。提交事务,生成系统变更号SCN。SCN与重做记录一起保存在重做日志文件中。,归档重做日志文件,数据库在归档模式,LGWR进程在写入下一个重做日志文件之前,必须等待该联机重做日志文件完成归档,否则LGWR进程将被挂起,数据库也停止运行。在归档重做日
9、志文件中,记录了自从数据库置于归档模式后,用户对数据库所进行的所有修改操作。优点:可以进行介质恢复,可以进行部分备份,保证备份数据库与目标库的一致性。,(3)控制文件(CONTROL FILES)控制文件是一个记录数据库结构的二进制文件,在其中如下重要信息:数据库名,数据库建立的时间。数据文件名称、位置、联机/脱机状态信息重做日志文件的名称和路径。表空间名称等信息。当前日志序列号,日志历史记录。归档日志信息。最近检查点信息。恢复管理器RMAN的备份信息等。,实例在加载数据库时读取控制文件,以找到自己所需的操作系统文件。控制文件必须在整个数据库打开期间始终保持可用状态。控制文件中的内容只能够由
10、Oracle本身来修改。每个数据库必须至少拥有一个控制文件。一个数据库也可同时拥有多个相同的控制文件,但是一个控制文件只能属于一个数据库。,2.1.2表,表是用来存储和操作数据的一种逻辑结构。表由行和列组成,因此也称之为二维表。1.表结构 表是在日常工作和生活中经常使用的一种表示数据及其关系的形式。关系数据库使用表(即关系)来表示实体及其联系。表包含下列概念:表结构:每个数据库包含了若干个表。每个表包含一组固定的列,而列由数据类型(DATATYPE)和长度(LENGTH)两部分组成,以描述该表所跟踪的实体的属性。记录:每个表包含了若干行数据,它们是表的“值”,表中的一行称为一个记录(Recor
11、d),因此,表是记录的有限集合。字段:每个记录由若干个数据项构成,将构成记录的每个数据项称为字段(Field)。关键字:关键字可以将表中的不同记录区分开来。,2.1.2表,2.关系 表与表之间有下列关系:(1)一对一关系 有两张表A表和B表,A表中的一条记录在B表中有一条记录与之对应。反过来,B表中的一条记录在A表中仅有一条记录与之对应。具有这种关系的两张表存在一对一的关系。(2)一对多关系 有两张表A表和B表,A表中的一条记录在B表中有多条记录与之对应,反过来,B表中的一条记录在A表中仅有一条记录与之对应。具有这种关系的两张表存在一对多的关系。(3)多对多关系 有两张表A表和B表,A表中的一
12、条记录在B表中有多条记录与之对应。反过来,B表中的一条记录在A表中也有多条记录与之对应。但是A表和B表之间的这种多对多关系必须通过中间表C表来连接方可实现。,2.1.2表,3.表示实体的表和表示实体联系的表 关系数据库用表来反映数据本身的内容以及反映数据之间的联系。所以在关系数据库中,包含了反映实体信息的表和反映实体之间联系的表。例如,在学生成绩数据库中,用学生情况表反映了学生这一实体的信息,如表2.1所示。,2.1.2表,3.表示实体的表和表示实体联系的表 课程情况表反映学校开设课程这一实体的信息,如表2.2所示。此外,还要一个表示学生实体与课程实体联系的表学生课程成绩表来表达学生学习课程的
13、情况,如表2.3所示。,2.1.3实例,数据库实例(instance)也称作服务器(server),是指用来访问数据库文件集的存储结构(统称为System Global Area,即SGA)及后台进程的集合。实例与数据库之间的关系如图2.4所示。,图2.4 实例与数据库之间的关系,2.1.3实例,1.系统全局区当激活Oracle 10g数据库时,系统会先在内存内规划一个固定区域,用来存储每位使用者所需存取的数据以及Oracle 10g运作时必备的系统信息。这个区域称为系统全局区(System Global Area),俗称SGA。图2.5给出了SGA各重要区域之间的关系。,图2.5 SGA之间
14、的关系,一个数据库至少有一个与之对应的实例。启动数据库时先创建一个实例,然后由实例加载(即将数据库与实例联系起来)并打开数据库。用户连接连接到实例中,然后由实例负责与数据库通信,将处理结果返回给用户,内存结构主要记录如下数据:解析后的SQL或PL/SQL程序代码。用户连接会话信息。缓存的数据。程序运行时所需的各种信息。,SGA(System Global Area)和PGA(Program Global Area)。SGA是由所有服务进程和后台进程所共享的内存段。PGA区是存放每个服务进程和后台进程所私有的数据和控制信息。Oracle中每个进程都拥有自己的PGA区。,2.1.3实例,1.系统全
15、局区(1)数据块缓存区。数据块缓冲区为SGA 的主要成员,用来保存的是最近从数据文件中读取的数据(脏缓存块、空闲块、命中块)。(2)重做日志缓冲区:它是存储对数据库所做修改信息的缓存区。重做记录形式存储。(3)共享池:SQL共享池存储数据字典缓存区及库缓存区(library cache),即对数据库进行操作的语句信息。字典缓存区。数据库对象的信息存储在数据字典中,这些信息包括用户帐号、数据文件名、盘区位置、表说明和权限等。(4)JAVA池:专门为所有JAVA代码 或JVM 中的数据而分配的 内存,主要存储每个会话中每个类的共享部分、会话的状态信息等。,2.1.3实例,2.后台进程数据库的物理结
16、构和存储结构之间的关系是由后台进程来维持。主要的背景处理程序如下。(1)DBWR(数据库写入程序):负责将数据块缓存区内变动过的数据块回写至硬盘内的数据文件。(2)LGWR(日志写入程序):负责将重做日志缓冲区内的数据变动记录循序写入重做日志文件。(3)SMON(系统监控程序):如果是因为停电或是其它因素导致Oracle数据库不正常被关闭,下一次激活数据库时将由SMON进行必要的数据库修复动作。(4)PMON(进程监控程序):当某个使用者处理程序异常终止时,PMON清除数据块缓存区内不再使用的空间,并释放该程序之前使用的系统资源。(5)CKPT(检查点进程):在适当时候产生一个checkpoi
17、nt事件,确保缓冲区内经常被变动的数据也要定期被写入数据文件。(6)RECO(恢复进程):在Oracle 10g分布式数据库环境中,RECO处理程序会自动处理分布式操作失败时产生的问题。(7)ARCH(归档进程):LGWR后台进程以循环方式向联机重做日志文件写入。数据库拥有多个后台进程,其数量取决于数据库的配置。这些进程由数据库管理,它们只需要进行很少的管理。图2.6显示了后台进程在数据库外部结构,SGA中作用和地位。,图2.6 后台进程与数据库外部结构、SGA的关系,建立数据库完成的操作,安装所需的Oracle软件、数据库时需要管理员权限、足够的内存和磁盘空间。建立数据库完成的操作 建立数据
18、库的信息结构(如数据字典等)建立并初始化控制文件、重做日志文件建立数据文件并删除同名文件中的数据。手工时,建立用户,表空间等.,6.3 建立数据库的方法,创建数据库通常有以下方法:数据库配置助手DBCA 手工脚本,CREATE DATABASE 数据库中移植并升级数据库 启动DBCA:开始、程序、Oracle-OracleHome、Configuration And Migration Tools、Database Configuration Assistant,2.2界面创建数据库和表,2.2.1数据库创建和删除1.通过界面创建数据库创建数据库的用户必须是系统管理员,或是被授权使用CREAT
19、E DATABASE语句的用户。创建数据库必须要确定全局数据库名、SID、所有者(即创建数据库的用户)、数据库大小(数据文件最初的大小、最大的大小、是否允许增长及增长方式)、重做日志文件和控制文件等。【例2.1】使用DBCA创建XSCJ数据库。(1)启动DBCA,DBCA激活并初始化,如图2.7所示。DBCA初始化完成后自动进入“欢迎”窗口,如图2.8所示。,图2.7 DBCA初始化窗口,图2.8 欢迎窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。(2)单击“下一步”按钮,进入“数据库创建”窗口,如图2.9 所示。(3)选择创建数据库选项,单击“下一步”按钮,进
20、入“数据库模板”窗口,如图2.10所示。,图2.9 操作窗口图,图2.10 数据库模板窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。(4)选择一般用途选项,单击“下一步”按钮,进入“数据库标识”窗口,如图2.11所示。(5)单击“下一步”按钮,进入“管理选项”窗口,如图2.12所示。,图2.11 数据库标识窗口,图2.12 管理选项窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。(6)单击“下一步”按钮,进入“数据库身份证明”窗口,如图2.13所示。(7)单击“下一步”按钮,进入“存储选项”窗口,如图2.14所示。,图 2.13 数
21、据库身份证明窗口,图2.14存储选项窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。(8)单击“下一步”按钮,进入“数据库文件位置”窗口,如图2.15所示。(9)单击“下一步”按钮,进入“恢复配置”窗口,如图2.16所示。,图2.15 数据库文件位置窗口,图2.16 恢复配置窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。(10)单击“下一步”按钮,进入“数据库内容”窗口,如图2.17所示。(11)单击“下一步”按钮,进入“初始化参数”窗口,如图2.18所示。,图2.17 数据库内容窗口,图2.18初始化参数窗口内存选项卡,2.2.1
22、数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。初始化参数的设定共分成四个选项卡,分别是内存、调整大小、字符集和连接模式的置。“内存”选项卡。DBCA就提供了下列设定方式:典型:SGA大小以“物理内存的百分比”来设定,只要决定这个新数据库能够占用多少内存即可,DBCA会适当的分配给SGA各区域。自定义:可以自行决定SGA各区域的内存配置情况。“调整大小”选项卡。如图2.19所示,在该窗口配置数据库块大小和连接此数据库的操作系统用户的最大数量。,图2.19初始化参数窗口调整大小选项卡,2.2.1数据库创建和删除,“字符集”选项卡。如图2.20所示,在该窗口配置字符集。它是在计算机屏
23、幕上显示字符时所使用的编码方案。“连接模式”选项卡。如图2.21所示,在该窗口设置将要创建的数据库的运作模式。,图2.20初始化参数窗口字符集选项卡,图2.21初始化参数窗口连接模式选项卡,2.2.1数据库创建和删除,到这里为止,较重要的数据库设定工作已大致完成,单击“所有初始化参数”按钮可检查所有起始参数设定值。如图2.22所示。,图2.22所以初始化参数窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。(12)单击“下一步”按钮,进入“数据库存储”窗口,如图2.23所示。如图2.24所示,选择要修改的控制文件,在右边的子窗口中会显示相应的信息。,图2.23控制文
24、件的一般信息窗口,图2.24数据文件的存储窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。在如图2.25所示的窗口中可以进行如下设置:最大数据文件数、最大重做日志文件数和最大日志成员数。(13)单击“下一步”按钮,进入“创建选项”窗口,如图2.26所示,图2.25 控制文件的选项窗口,图2.26 创建选项窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。(14)按下“完成”按钮,进入“确认”窗口,如图2.27 所示。(15)单击“确定”按钮,之后就可以把剩下的工作交给DBCA了!它会先创建起始参数文件,然后在激活Oracle Insta
25、nce之后进行一连串的工作,如图2.28 所示。,图2.27 确认窗口图,2.28 创建数据库进度窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。出现如图2.29所示窗口,说明安装已完成。可以单击下方的“口令管理”进行调整。如图2.30所示,电子表格中列出了所有系统初始用户。选择某个用户,鼠标单击“是否锁定用户”栏,锁定该用户或解除锁定。若要在此时修改口令,则在“新口令”和“确认口令”项目栏中输入相同的口令。设置完毕后,单击“确定”按钮。至此,完成了创建数据库的全部操作。,图2.29 数据库信息窗口,图2.30 口令管理窗口,2.2.1数据库创建和删除,2.修改数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 创建 管理
链接地址:https://www.31ppt.com/p-5985543.html