oracle10g创建数据库和表用户名和密码方法.ppt

上传人:za****8 文档编号:13189942 上传时间:2020-06-07 格式:PPT 页数:100 大小:5.03MB
返回 下载 相关 举报
oracle10g创建数据库和表用户名和密码方法.ppt_第1页
第1页 / 共100页
oracle10g创建数据库和表用户名和密码方法.ppt_第2页
第2页 / 共100页
oracle10g创建数据库和表用户名和密码方法.ppt_第3页
第3页 / 共100页
点击查看更多>>
资源描述
第2章数据库和表的创建,创建数据库和表是Oracle10g最基本的工作,数据库和表是Oracle用于组织和管理数据的对象。本章将讲述数据库、表的基本概念,以及创建数据库和表的两种方式。2.1基本概念Oracle是一种关系数据库管理系统(RDBMS)。关系数据库是按照二维表结构方式组织的数据集合,每个表体现了集合理论中定义的数学概念关系。2.1.1数据库数据库(Database)是一个数据容器,它包含了表、索引、视图、过程、函数、包等对象,并对其进行统一的管理。,2.1.1数据库,数据库的内部结构表空间(TABLESPACE)表空间是数据库的逻辑划分,一个表空间只属于一个数据库。下面是Oracle10g版本默认创建的主要表空间。SYSTEM表空间。SYSTEM表空间用于存放Oracle系统内部表和数据字典的数据。SYSAUX表空间。SYSAUX表空间是Oracle10g新增加的表空间,主要存放Oracle系统内部的常用样例用户的对象。UNDO表空间。UNDO表空间是存储撤销信息的表空间。USERS表空间。USERS表空间是Oracle系统建议用户使用的表空间。TEMPORARY表空间。在Oracle数据库中,临时表空间主要供用户临时使用。除了Oracle系统默认创建的表空间以外,用户可以根据应用系统的规模及其所要存放对象创建多个表空间,以区分用户数据和系统数据。,2.1.1数据库,数据库的内部结构(2)表(TABLE)表是数据库中存放用户数据的对象。它包含一组固定的列。表中的列描述该表所跟踪的实体的属性,每个列都有一个名字和若干个属性。表结构的一个样例如图2.1所示除了Oracle系统默认创建的表空间以外,用户可以根据应用系统的规模及其所要存放对象创建多个表空间,以区分用户数据和系统数据,2.1.1数据库,1.数据库的内部结构(3)约束条件(CONSTRAINT)可以为一个表列创建约束条件,此时,表中的每一行都必须满足约束条件定义所规定的条件。约束条件有以下5种。主键(PrimaryKey):主键是表中的一列或多个列。缺省(DEFAULT)约束条件:在表中插入一行数据但没有为列指定值时生成一个在定义表时预先指定的值。检查(CHECK)约束条件:该约束条件确保指定列中的值符合一定的条件。惟一性(UNIQUE)约束条件:用于保证应具有惟一性而又不是主键的一部分的那些列的惟一性。外键(ForeignKey)约束条件:该约束条件规定表间的关系性质。,2.1.1数据库,1.数据库的内部结构(4)分区(PARTITION)在非常大的数据库中,可以通过把一个大表的数据分成多个小表来简化数据库的管理,这些小表称作分区。(5)索引(INDEX)索引是帮助用户在表中快速地找到记录的数据库结构,它既可以提高数据库性能,又能够保证列值的惟一性。(6)用户(USER)用户帐号虽然不是数据库中的一个物理结构,但它与数据库中的对象有着重要的关系,这是因为用户拥有数据库的对象。(7)方案(SCHEMA)用户帐号拥有的对象集称为用户的方案(SCHEMA)。(8)同义词为了给不同的用户使用数据库对象时提供一个简单的、惟一标识数据库对象的名称,可以为数据库对象创建同义词。(9)权限及角色(ROLE)为了访问其他帐号所有的对象,必须首先被授予访问这个对象的权限。,2.1.1数据库,1.数据库的内部结构(10)段(SEGMENT)、盘区(EXTENT)和数据块(DATABLOCK)依照不同的数据处理性质,可能需要在数据表空间内划分出不同区域,以存放不同数据,将这些区域称之为“段”(SEGMENT)。图2.2说明了段、盘区和数据块之间的关系。,图2.2段、盘区和数据块之间的关系,2.1.1数据库,数据库外部结构(1)数据文件(DATAFILE)每一个Oracle10g数据库有一个或多个数据文件,而一个数据文件只能属于一个表空间。数据库、表空间和数据文件之间的关系如图2.3所示。,图2.3数据库、表空间和数据文件之间的关系,2.1.1数据库,(2)重做日志文件(REDOLOGFILES)除了数据文件外,最重要的Oracle10g数据库实体档案就是重做日志文件。(redologfiles)。Oracle保存所有数据库事务的志。这些事务被记录在联机重做日志文件(OnlineRedoLogFile)中。当数据库中的数据遭到破坏时,可以用这些日志来恢复数据库。(3)控制文件(CONTROLFILES)每个Oracle10g数据库都有一个控制文件,用以记录与描述数据库的外部结构。它们包括:Oracle10g数据库名称与建立时间。数据文件与重置日志文件名称及其所在位置。日志记录序列码(logsequencenumber)。,2.1.2表,表是用来存储和操作数据的一种逻辑结构。表由行和列组成,因此也称之为二维表。1.表结构表是在日常工作和生活中经常使用的一种表示数据及其关系的形式。关系数据库使用表(即关系)来表示实体及其联系。表包含下列概念:表结构:每个数据库包含了若干个表。每个表包含一组固定的列,而列由数据类型(DATATYPE)和长度(LENGTH)两部分组成,以描述该表所跟踪的实体的属性。记录:每个表包含了若干行数据,它们是表的“值”,表中的一行称为一个记录(Record),因此,表是记录的有限集合。字段:每个记录由若干个数据项构成,将构成记录的每个数据项称为字段(Field)。关键字:关键字可以将表中的不同记录区分开来。,2.1.2表,2.关系表与表之间有下列关系:(1)一对一关系有两张表A表和B表,A表中的一条记录在B表中有一条记录与之对应。反过来,B表中的一条记录在A表中仅有一条记录与之对应。具有这种关系的两张表存在一对一的关系。(2)一对多关系有两张表A表和B表,A表中的一条记录在B表中有多条记录与之对应,反过来,B表中的一条记录在A表中仅有一条记录与之对应。具有这种关系的两张表存在一对多的关系。(3)多对多关系有两张表A表和B表,A表中的一条记录在B表中有多条记录与之对应。反过来,B表中的一条记录在A表中也有多条记录与之对应。但是A表和B表之间的这种多对多关系必须通过中间表C表来连接方可实现。,2.1.2表,3.表示实体的表和表示实体联系的表关系数据库用表来反映数据本身的内容以及反映数据之间的联系。所以在关系数据库中,包含了反映实体信息的表和反映实体之间联系的表。例如,在学生成绩数据库中,用学生情况表反映了学生这一实体的信息,如表2.1所示。,2.1.2表,3.表示实体的表和表示实体联系的表课程情况表反映学校开设课程这一实体的信息,如表2.2所示。此外,还要一个表示学生实体与课程实体联系的表学生课程成绩表来表达学生学习课程的情况,如表2.3所示。,2.1.3实例,数据库实例(instance)也称作服务器(server),是指用来访问数据库文件集的存储结构(统称为SystemGlobalArea,即SGA)及后台进程的集合。实例与数据库之间的关系如图2.4所示。,图2.4实例与数据库之间的关系,2.1.3实例,1.系统全局区当激活Oracle10g数据库时,系统会先在内存内规划一个固定区域,用来存储每位使用者所需存取的数据以及Oracle10g运作时必备的系统信息。这个区域称为系统全局区(SystemGlobalArea),俗称SGA。图2.5给出了SGA各重要区域之间的关系。,图2.5SGA之间的关系,2.1.3实例,1.系统全局区(1)数据块缓存区。数据快取缓冲区为SGA的主要成员,用来存放读取自数据文件的数据块复本,或是使用者曾经处理过的数据。(2)字典缓存区。数据库对象的信息存储在数据字典中,这些信息包括用户帐号、数据文件名、盘区位置、表说明和权限等。(3)重做日志缓冲区:前面已介绍过,联机重做日志文件用于记录数据库的更改,以便在数据库恢复过程中用于向前滚动。(4)SQL共享池:SQL共享池存储数据字典缓存区及库缓存区(librarycache),即对数据库进行操作的语句信息。,2.1.3实例,2.后台进程数据库的物理结构和存储结构之间的关系是由后台进程来维持。主要的背景处理程序如下。(1)DBWR(数据库写入程序):负责将数据块缓存区内变动过的数据块回写至硬盘内的数据文件。(2)LGWR(日志写入程序):负责将重做日志缓冲区内的数据变动记录循序写入重做日志文件。(3)SMON(系统监控程序):如果是因为停电或是其它因素导致Oracle数据库不正常被关闭,下一次激活数据库时将由SMON进行必要的数据库修复动作。(4)PMON(进程监控程序):当某个使用者处理程序异常终止时,PMON清除数据块缓存区内不再使用的空间,并释放该程序之前使用的系统资源。(5)CKPT(检查点进程):在适当时候产生一个checkpoint事件,确保缓冲区内经常被变动的数据也要定期被写入数据文件。(6)RECO(恢复进程):在Oracle10g分布式数据库环境中,RECO处理程序会自动处理分布式操作失败时产生的问题。(7)ARCH(归档进程):LGWR后台进程以循环方式向联机重做日志文件写入。数据库拥有多个后台进程,其数量取决于数据库的配置。这些进程由数据库管理,它们只需要进行很少的管理。图2.6显示了后台进程在数据库外部结构,SGA中作用和地位。,图2.6后台进程与数据库外部结构、SGA的关系,2.2界面创建数据库和表,2.2.1数据库创建和删除1.通过界面创建数据库创建数据库的用户必须是系统管理员,或是被授权使用CREATEDATABASE语句的用户。创建数据库必须要确定全局数据库名、SID、所有者(即创建数据库的用户)、数据库大小(数据文件最初的大小、最大的大小、是否允许增长及增长方式)、重做日志文件和控制文件等。【例2.1】使用DBCA创建XSCJ数据库。(1)启动DBCA,DBCA激活并初始化,如图2.7所示。DBCA初始化完成后自动进入“欢迎”窗口,如图2.8所示。,图2.7DBCA初始化窗口,图2.8欢迎窗口,2.2.1数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。(2)单击“下一步”按钮,进入“数据库创建”窗口,如图2.9所示。(3)选择创建数据库选项,单击“下一步”按钮,进入“数据库模板”窗口,如图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数据库身份证明窗口,图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数据库创建和删除,【例2.1】使用DBCA创建XSCJ数据库。初始化参数的设定共分成四个选项卡,分别是内存、调整大小、字符集和连接模式的置。“内存”选项卡。DBCA就提供了下列设定方式:典型:SGA大小以“物理内存的百分比”来设定,只要决定这个新数据库能够占用多少内存即可,DBCA会适当的分配给SGA各区域。自定义:可以自行决定SGA各区域的内存配置情况。“调整大小”选项卡。如图2.19所示,在该窗口配置数据库块大小和连接此数据库的操作系统用户的最大数量。,图2.19初始化参数窗口调整大小选项卡,2.2.1数据库创建和删除,“字符集”选项卡。如图2.20所示,在该窗口配置字符集。它是在计算机屏幕上显示字符时所使用的编码方案。“连接模式”选项卡。如图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控制文件的一般信息窗口,图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了!它会先创建起始参数文件,然后在激活OracleInstance之后进行一连串的工作,如图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.修改数据库在数据库创建后,数据文件和日志文件名一般就不再改变了。对已存在的数据库可以进行的修改主要有:增加或删除数据文件。改变数据文件的大小和增长方式。改变日志文件的大小和增长方式。,2.2.1数据库创建和删除,2.修改数据库下面以对数据库XSCJ的修改为例,说明在OEM中对数据库某些定义进行修改的操作方法。使用IE浏览器,在地址栏输入http:/zhouym.lan:1158/em打开OEM,显示如图2.31所示的界面。,图2.31OEM主目录界面,2.2.1数据库创建和删除,2.修改数据库使用Oracle企业管理器,可以执行以下操作:通过查看几种类型的度量来确定数据库的当前状态。启动或停止数据库。通过3个选项页面(划分为3页,每页各显示一个子部分)访问数据库环境的性能、管理和维护。,2.2.1数据库创建和删除,2.修改数据库(1)改变数据文件的大小和增长方式。在图2.31所示的界面中,单击“管理”选项页面,出现如图2.32所示的管理界面,在“存储”类别选择“数据文件”,进入如图2.33所示的“数据文件搜索”界面,直接选择或通过搜索功能查找要修改的数据文件。,图2.33数据文件搜速界面,图2.32OEM管理界面,2.2.1数据库创建和删除,【例2.2】将XSCJ数据库的users01.dbf的最大大小改为无限制。修改users01数据文件的步骤如下:在图2.33所示的界面中,选中“USERS01.dbf”的“选择”单选框”,单击“编辑”按钮,进入如图2.34所示的界面。在“存储”类别中选择“无限制”单选按钮,将USERS01数据文件最大容量改为无限制,然后单击“应用”按钮,保存设置。,图2.34USERS01数据文件编辑界面,2.2.1数据库创建和删除,2.修改数据库(2)增加数据文件。当原有数据库的存储空间不够,除了可以采用扩大原有数据文件的存储量的方法之外,还可以增加新的数据文件。【例2.3】在XSCJ数据库增加数据文件users02,其属性均取系统默认值。在“数据库文件”项中增加数据文件。如图2.33所示,单击“创建”按钮,进入“创建数据文件”界面,如图2.35所示。,图2.35创建数据文件界面,2.2.1数据库创建和删除,2.修改数据库首先在“文件名”文本框输入数据文件名称users02,然后为表新增的数据文件选择表空间。单击“手电筒”形状的图标,出现表空间选择界面,如图2.36所示,选择“USERS”单选按钮,单击“选择”按钮,返回到图2.35所示界面。,图2.36选择表空间界面,2.2.1数据库创建和删除,2.修改数据库在相应的表空间中增加数据文件。在图2.32所示界面中,单击“表空间”,进入“表空间搜索”界面,如图2.37所示。(3)删除数据文件。当数据库中的某些数据文件不再需要时,应及时将其删除。,图2.37表空间搜索界面,2.2.1数据库创建和删除,3.删除数据库删除数据库是在DBCA中完成。进入DBCA后,选择“删除数据库”选项,单击“下一步”,进入选择要删除数据库的窗口,如图2.38所示。选择要删除的数据库,单击“下一步”,激活“概要”提示框。单击“确定”,系统会再一次弹出提示框要你确认,单击“是”,出现数据库删除进度窗口,如图2.39所示。,图2.38选择要删除的数据库,图2.39删除进度窗口,2.2.1数据库创建和删除,4.配置数据库连接进行配置数据库的步骤如下:(1)选择开始程序Oracle-OraDb10g_home1配置和移植工具NetConfigurationAssistant,启动欢迎窗口,如图2.40所示。,图2.40NetConfigurationAssistant欢迎窗口,2.2.1数据库创建和删除,4.配置数据库连接网络配置助手是Oracle10g提供的用于配置基本网络组件的工具,可以进行监听程序配置、命名方法配置、本地网络服务名配置和目录使用配置。监听程序配置。创建、修改、删除或重命名监听程序。命名方法配置。当终端用户连接数据库服务时,要通过“连接标识符”(简称标识服务)来完成。本地网络服务名配置。创建、修改、删除、重命名或测试存储在本地tnsnames.ora文件中的连接描述符的连接。目录服务使用配置。如果要使用集中管理连接标识符的目录命名与Oracle高级安全一起使用的企业用户安全性功能,则选择此选项来配置对符合轻型目录访问协议(LightweightDirectoryAccessProtocol,简称LDAP)的目录服务器的访问。,2.2.1数据库创建和删除,4.配置数据库连接(2)选择“本地Net服务名配置”进行配置,单击“下一步”,进入“Net服务名配置”窗口,如图2.41所示。(3)选择“添加”以添加新的服务名,单击“下一步”,进入“服务名”窗口,如图2.42所示。,图2.41Net服务名配置窗口,图2.42服务名窗口,2.2.1数据库创建和删除,4.配置数据库连接(4)在“服务名”文本框输入数据库服务名XSCJ,单击“下一步”,进入“选择协议”窗口,如图2.43所示。选择的协议包括:TCP、TCPS、IPC和NMP。,图2.43选择协议窗口,2.2.1数据库创建和删除,4.配置数据库连接(5)选择“TCP”协议,单击“下一步”,进入“TCP/IP协议”窗口,如图2.44所示。在该窗口需要进行如下设置:主机名。监听程序驻留的计算机主机名。端口号。确定监听程序的端口号。,图2.44TCP/IP协议窗口,2.2.1数据库创建和删除,4.配置数据库连接在“主机名”文本框输入数据库所在计算机的主机名选择TCP/IP协议的标准端口号,单击“下一步”,进入“测试网络服务名”配置窗口,如图2.45所示。(7)不进行测试,单击“下一步”,进入“Net服务名”窗口,如图2.46所示。,图2.45网络服务名测试窗口,图2.46网络服务名窗口,2.2.1数据库创建和删除,4.配置数据库连接(8)单击“下一步”,进入“是否配置另一个网络服务名”窗口,如图2.47所示。(9)选择“否”,单击“下一步”,网络服务名配置完毕。,图2.47是否配置另一个网络服务名窗口,2.2.2表创建、修改和删除,1.创建和管理表空间既可以在Oracle企业管理器(OracleEnterpriseManager)中创建表空间,也可以使用CREATETABLESPACE命令创建表空间。创建表空间【例2.4】使用OEM创建永久性表空间MYTS。在图2.37所示的界面中,单击“创建”按钮,出现如图2.48所示的界面。该界面包括3个选项页面:一般信息、存储和阈值。,图2.48创建表空间一般信息选项页面,2.2.2表创建、修改和删除,1.创建和管理表空间单击“添加”按钮,按照例2.3为MYTS表空间创建数据文件MYTS01.DBF。创建完成后,返回到图2.49所示的界面。单击“存储”选项页面,则出现如图2.50所示的界面。在该选项卡中进行区分配、段空间管理和启用事件记录设置。在此选择本地管理,采用默认值。单击“确定”按钮。系统开始执行表空间的创建任务,完成后返回到如图2.37所示界面,此时在该界面出现了MYTS表空间。,图2.49创建表空间添加数据文件后的界面,图2.50本地管理存储选项卡,2.2.2表创建、修改和删除,1.创建和管理表空间管理表空间管理表空间包括修改表空间参数、添加数据文件和改变表空间的状态等。在图2.37所示的界面中,单击选择要修改的表空间,打开如图2.38所示的相应表空间的编辑界面。在“一般信息”选项页面中可以对表空间的状态进行修改,可以增删数据文件;而在“存储”选项页面中可以对表空间存储区的大小进行修改。在如图2.38所示的界面中,可以添加、删除数据文件。注意:不能删除设置为默认永久性属性的表空间。,2.2.2表创建、修改和删除,1.创建和管理表空间(2)利用CREATETABLESPACE命令创建和管理表空间利用CREATETABLESPACE创建表空间。创建表空间的用户必须拥有CREATETABLESPACE系统权限。在创建表空间前,必须先创建包含表空间的数据库。语法格式:CREATETABLESPACEtablespace_nameDATAFILEpath/filenameSIZEintegerKMREUSEAUTOEXTENDOFFONNEXTintegerKMMAXSIZEUMLIMITEDintegerKMMINMUMEXTENTintegerK|MDEFAULTSTORAGEstorage_clauseONLINEOFFLINELOGGINGNOLOGGINGPERMANENTTEMPORARYEXTENTMANAGEMENTDICTIONARYLOCALAUTOALLOCATEUNIFORMSIZEintegerKM,2.2.2表创建、修改和删除,语法格式:其中:tablespace_name:将要创建的表空间的名称,该名称在数据库中是惟一的,并且命名必须符合命名规则。path/filename:一个或多个数据文件的存放路径与名称。OFF/ON:禁止或允许自动扩展数据文件。NEXT:指定当需要更多盘区时分配给数据文件的磁盘空间,以K或M为单位。MAXSIZEUMLIMITEDintegerKM:指定允许分配给数据文件的最大磁盘空间。MINMUMEXTENT:指定最小的长度,默认为操作系统和数据库块确定。ONLINE:在创建表空间之后使该表空间立即对授权访问该表空间的用户可用。OFFLINE:在创建表空间之后使该表空间不可用。,2.2.2表创建、修改和删除,语法格式:LOGGING/NOLOGGING:指定日志属性,它表示将来的表、索引等是否需要进行日志处理。默认值为LOGGING。PERMANENT:指定表空间将用于保存永久对象,这是默认设置。TEMPORARY:指定表空间将用于保存临时对象。EXTENTMANAGEMENT:指定如何管理表空间的盘区。DICTIONARY:指定使用字典表来管理表空间,这是缺省设置。LOCAL:指定本地管理表空间。AUTOALLOCATE:指定表空间由系统管理,用户不能指定盘区尺寸。UNIFORM:指定使用SIZE字节的统一盘区来管理表空间。缺省的SIZE为1M。如果既没指定AUTOALLOCATE又没指定UNIFORM,那么AUTOALLOCATE就是缺省设置。,2.2.2表创建、修改和删除,语法格式:注意:如果指定了LOCAL,就不能指定DEFAULTSTORAGEstorage_clause和TEMPORARY。DEFAULTSTORAGEstorage_clause:为在该表空间创建的全部对象指定缺省的存储参数。storage_clause的语法格式如下:STORAGE(INITIALintegerKMNEXTintegerKMMINEXTENTSintegerUNLIMITEDMAXEXTENTSintegerPCTINCREASEintegerFREELISTSintegerFREELISTGROUPSintegerOPTIMALintegerKMNULL),2.2.2表创建、修改和删除,1.创建和管理表空间【例2.5】创建大小为50M的表空间TEST,禁止自动扩展数据文件。CREATETABLESPACE“TEST”LOGGINGDATAFILED:oradataXSCJTEST101.DBFSIZE50MREUSEAUTOEXTENDOFF;【例2.6】创建表空间DATA,允许自动扩展数据文件。CREATETABLESPACEDATALOGGINGDATAFILED:oradataXSCJDATA01.DBFSIZE50MREUSEAUTOEXTENDONNEXT10MMAXSIZE200MDEFAULTSTROAGE(INITIAL32KNEXT32KMINEXTENTS1MAXEXTENTS249PCTINCREASE50)EXTENTMANAGEMENTLOCAL;,2.2.2表创建、修改和删除,(2)利用CREATETABLESPACE命令创建和管理表空间利用命令管理表空间。利用ALTERTABLESPACE命令可以修改现有的表空间或它的一个或多个数据文件。语法格式:ALTERTABLESPACEtablespace_nameADDDATAFILETEMPFILEpath/filenameSIZEintegerKMREUSEAUTOEXTENDOFFONNEXTintegerKMMAXSIZEUNLIMITEDintegerKMRENAMEDATAFILEpathfilename,nTOpathre_filename,nDEFAULTSTORAGEstorage_clauseONLINEOFFLINENORMALTEMPORARYIMMEDIATELOGGINGNOLOGGINGREADONLYWRITEPERMANENTTEMPORARY,2.2.2表创建、修改和删除,语法格式:其中:ADDDATAFILETEMPFILE:向表空间添加指定的数据文件或临时文件。RENAMEDATAFILE:对一个或多个表空间的数据文件重命名。READONLY:表明表空间上不允许进一步写操作。READWRITE:表明在先前只读表空间上允许写操作。【例2.7】通过ALTERTABLESPACE命令把一个新的数据文件添加到DATA表空间,并指定了AUTOEXTENDON和MAXSIZE300M。ALTERTABLESPACEDATAADDDATAFILED:ORACLEORADATAXSCJDATA02.DBFSIZE50MREUSEAUTOEXTENDONNEXT50MMAXSIZE500M;注意:尽管可以设置MAXSIZEUNLIMITED,但应总是规定一个文件的最大尺寸值。否则,使用磁盘设备上全部可用空间的事务将造成数据库故障。修改表空间DATA属性,命令如下:ALTERTABLESPACEDATAOFFLINE;,2.2.2表创建、修改和删除,2.数据类型表是真正存储各种各样数据的对象,由行和列组成。行有时也称为记录,列有时也称为字段或域。设计数据库时,要决定它包括哪些表,每个表中包含哪些列,每列的数据类型等。在表中创建列时,必须为其指定数据类型,列的数据类型决定了数据的取值、范围和存储格式。列的数据类型可以是Oracle提供的系统数据类型,将其列于表2.4中。,表2.4Oracle数据类型,2.2.2表创建、修改和删除,3.创建表创建表的实质就是定义表结构及约束条件等属性。【例2.8】通过Oracle企业管理器(OEM)在XSCJ数据库中创建学生情况表。学生情况表的表名为XS,表结构如表2.5所示。,2.2.2表创建、修改和删除,3.创建表通过Oracle企业管理器(OEM)创建表XS的操作步骤:(1)使用ADMIN帐号(创建用户将在7.1节中介绍)登录OEM,在如图2.32所示,在“方案”类别中选择“表”,鼠标左键单击进入“表搜索”界面,如图2.51所示。,图2.51表搜索界面,2.2.2表创建、修改和删除,3.创建表(2)单击“创建”按钮,进入“创建表:表的组织形式”界面,如图2.52所示,指定表的存储类型及是否为临时表。,图2.52表创建:表的组织形式界面,2.2.2表创建、修改和删除,3.创建表(3)单击“继续”按钮,进入“创建表”界面,如图2.53所示。该界面有5个选项页面,可以完成对表的定义。,图2.53一般信息界面,2.2.2表创建、修改和删除,3.创建表(3)单击“约束条件”选项页面,进入“约束条件”选项界面,如图2.54所示。在该选项页面可以定义表的完整性约束条件。,图2.54约束条件界面,2.2.2表创建、修改和删除,3.创建表(4)选择PRIMARY约束条件,单击“创建”按钮,进入如图2.55所示的添加约束条件界面。,图2.55添加约束条件界面,2.2.2表创建、修改和删除,3.创建表(5)单击“确定”按钮,返回到2.55所示界面,这时在该界面能看到刚才添加的主键约束条件。(6)在图2.55所示的界面中,单击“存储”选项页面,进入“存储”选项界面,如图2.56所示。,图2.56存储选项界面,2.2.2表创建、修改和删除,3.创建表单击“选项”选项页面,进入“选项”选项界面,如图2.57所示。(8)单击“分区”选项页面,进入“分区”选项界面,如图2.58所示。,图2.57选项选项界面,图2.58分区选项界面,2.2.2表创建、修改和删除,4.修改表对一个已存在的表可以进行的修改操作包括:.增加列.删除列.修改已有列的属性(列名、数据类型、是否为空值).修改存储方式等信息,2.2.2表创建、修改和删除,4.修改表(1)增加列当原来所创建的表中需要增加项目时,就要向表中增加列。【例2.9】表XS中添加一个“奖学金等级”,名称JXJ,NUMBER类型,允许为空值。在如图2.51所示界面,选择表XS,单击“编辑”按钮,进入如图2.59所示界面。,图2.59修改表XS,2.2.2表创建、修改和删除,4.修改表(2)删除列选择要删除的列,选中要删除列的“选择”单选按钮,单击“删除”按钮;然后单击“应用”保存修改后的表。(3)修改列的属性在表中尚未有记录值时,可以修改表结构,如更改列名、列的数据类型、长度和是否允许空值等属性。(4)修改存储情况在“存储”选项卡中可以修改表的存储方式;在“选项”选项卡中修改表的并发操作和事务处理等特性。5.表的删除删除一个表时,表的定义、表中的所有数据以及表的索引、触发器、约束等均被删除。注意:不能删除系统表和有外键约束所参照的表。,2.3命令方式创建数据库和表,除了可以通过DBCA和OEM图形用户界面创建数据库及表外,还可以用PL/SQL语句(称之为命令方式)来创建数据库和表。与界面方式创建表相比,命令方式较为灵活。2.3.1创建数据库不管原因为何,当准备自行建立Oracle数据库时,都必须事先做好妥善准备。在开始建立新的Oracle10g数据库之前,建议先做好下列准备工作:(1)评估数据表与索引的存放位置,如果可能的话预估其所需空间。(2)规划操作系统下数据库实体文件的存放方式,因为良好的文件配置将大幅改善数据存取效率。(3)确定全局数据库名称。(4)熟悉init.ora文件内较重要的参数,甚至服务器参数文件(serverparameterfile)的使用时机及其作用。(5)选定适当的数据库字符集。(6)选定数据块大小。(7)熟悉Oracle10g数据库的激活/关闭方式和与其搭配的各种选项。(8)确认物理内存是否足以激活Oracle10gInstance。(9)确认Oracle10g服务器的磁盘空间足以创建新数据库。,2.3.1创建数据库,下面以创建名为mydb的数据库来介绍手动创建数据库的步骤。1.设定实例标识符在一般情况下,每个Oracle10g数据库都必须对应一个数据库实例。所以在建立数据库之前,必须先指定数据库实例的系统标识符,此系统标识符就是俗称的OracleSID。在如图2.60所示的命令提示符操作界面中,使用如下命令设定SID:C:SETORACLE_SID=mydb,图2.60命令提示符操作界面,2.3.1创建数据库,2.设定数据库管理员的验证方法为了创建数据库,必须经过数据库的验证手续,且被赋予适当系统权限后才可以建立Oracle10g数据库。可以使用密码文件或操作系统的验证方法。下面给出的是密码文件验证方法:D:orapwdfile=D:oracleoradataDATABASEPWDmydb.oraPassword=ORACLEentries=53.创建初始化参数对于任何一个Oracle数据库,实例(系统全局区SGA和后台进程)都是使用初始化参数文件开始的。以下是创建新数据库之前必须新增或编辑的初始化参数:全局数据库名称。控制文件名称与路径。数据块大小。影响SGA容量的初始化参数。设定处理程序最大数目。设定空间撤消(Undo)管理方法。,2.3.1创建数据库,3.创建初始化参数(1)设定全局数据库名称Oracle10g的全局数据库名称由数据库名称与网域名称所组成,数据库名称和网域名称分别由DB_NAME与DB_DOMAIN参数设定的。(2)设置控制文件控制文件是Oracle10g数据库中相当重要的文件。因此必须在新的初始化参数文件内加入CONTROL_FILE参数以设定控制文件的名称以及路径。(3)设定数据块大小Oracle10g数据库存放数据的最小单位为数据块(datablock)。数据库标准数据块大小是设定在初始化参数文件的DB_BLOCK_SIZE参数。非标准数据块大小设定值可为2K、4K、8K、16K或32K。需注意的是这种的类型数据块将受到操作系统环境限制,不是所有操作系统都可以设定上述所有区块大小。若要使用非标准数据块时,还必须适当配置SGA内数据库缓冲区的子缓冲区,方式是由DB_nK_CACHE_SIZE参数来设定。数据块大小设置如下:DB_BLOCK_SIZE=8192,2.3.1创建数据库,3.创建初始化参数(4)配置影响SAG容量的初始化参数这种类型的初始化参数将控制系统全局区(SystemGlobalArea,简称SGA)的大小。设定数据库缓冲区大小Oracle10g数据库缓冲区(DataBaseBufferCache)大小是由初始化参数文件DB_CACHE_SIZE参数决定。数据库缓冲区以标准数据块作为数据存取单位。如果设定一组DB_BLOCK_SIZE与DB_nK_CACHE_SIZE参数,则可在Oracle10g数据库中实现使用多重数据块大小。如果上述两项参数在初始化参数文件中没有明确设定,则Oracle10g会自动设定适当的DB_CACHE_SIZE值,且将DB_nK_CACHE_SIZE设定为0。例如,缓冲区大小设置如下:DB_CACHE_SIZE=20MDB_2K_CACHE_SIZE=10MDB_8K_CACHE_SIZE=8M注意:DB_nK_CACHE_SIZE参数不能设定为标准数据块的缓冲区大小,也就是说,如果DB_BLOCK_SIZE设定为4k,就不能再设定DB_4K_CACHE_SIZE参数。,2.3.1创建数据库,(4)配置影响SAG容量的初始化参数设定共享池和大型池容量SGA内的共享池(SharedPool)与大型池(LargePool)分别由SHARED_POOL_SIZE与LARGE_POOL_SIZE所设定。这两个参数都属于动态参数。如果初始化参数文件未设定这两个参数,则Oracke9i将自动决定其适当大小。在设定SGA时需注意,SGA最大容量由SGA_MAX_SIZE控制。可动态地改变该参数值,但是需注意SGA_MAX_SIZE是数据库缓冲区、共享池、大型池以及其它SGA组件的容量总和。各区域之大小不能超过SGA_MAX_SIZE。如果SGA_MAX_SIZE未设定,则Oracle10g会自动将SGA_MAX_SIZE设定为所有SGA组件大小的总和。,2.3.1创建数据库,3.创建初始化参数(5)设定处理进程最大数量初始化参数PROCESSESS可决定同时连接Oracle10g的操作系统程序最大数量。(6)设定空间撤消管理方法Oracle10g就某种特殊机制来确保数据一致性和完整性,以便必要时回滚(rollback)失败的数据,或是撤消(undo)某个数据处理动作。针对撤消项目的管理,初始化参数文件的UNDO_MANAGEMENT可设定由下列方式之一激活Oracle10g实例:AUTO:以“自动撤消管理模式”激活Oracle10g实例,其撤消项目将储存于撤消表空间。MANUAL:以“手动模式”激活Oracle10g实例,其撤消项目将储存于回滚段。为了向前兼容,UNDO_MANAGEMENT的默认值为MANUAL。当实例以“自动管理模式”激活时,将尝试寻找第一个可用的撤消表空间以存放撤消项目。如果执行CREATEDATABASE指令,且UNDO_MANAGEMENT设定为AUTO时,Oracle10g就会自动建立一个撤消表空间。此表空间将是“自动管理模式”下预设的撤消表空间。,3.创建初始化参数【例2.10】创建数据库mydb的初始化参数文件initmydb.ora。初始化参数文件内容如下所示:#Copyright(c)1991,2001,2002byOracleCorporationjob_queue_processes=10#JobQueues#SharedServerdispatchers=(PROTOCOL=TCP)(SERVICE=mydbXDB)#Miscellaneouscompatible=10.2.0.1.0#SecurityandAuditingremote_login_passwordfile=EXCLUSIVE#Sort,HashJoins,BitmapIndexespga_aggregate_target=25165824sort_area_size=65536#DatabaseIdentificationdb_domain=db_name=mydb#FileConfigurationcontrol_files=(D:oracleoradatamydbcontrol01.ctl,D:oracleoradatamydbcontrol02.ctl,D:oracleoradatamydbcontrol03.ctl)db_recovery_file_dest=D:flash_recovery_area1db_recovery_file_dest_size=2147483648#Poolsjava_pool_size=50331648large_pool_size=8388608shared_pool_size=83886080#CursorsandLibraryCacheopen_cursors=300#SystemManagedUndoandRollbackSegmentsundo_management=AUTOundo_tablespace=UNDOTBS1#DiagnosticsandStatisticsbackground_dump_dest=D:oracleadminmydbbdumpcore_dump_dest=D:oracleadminmydbcdumpuser_dump_dest=D:oracleadminmydbudump#ProcessesandSessionsprocesses=150#CacheandI/Odb_block_size=8192db_cache_size=25165824db_file_multiblock_read_count=16,2.3.1创建数据库,4.启动SQL*Plus并以SYSDBA连接到Oracle实例D:sqlplus/nologSQLconnectassysdba5.启动实例在没有装载数据库情况下启动实例,通常只有在数据库创建期间或在数据库上实施维护操作时才会这么做。使用带有NOMOUNT选项的STARTUP命令即可实现。SQLSTARTUPNOMOUNTpfile=”d:adminmydbpfileinitmydb.ora”,2.3.1创建数据库,6.发布CREATEDATABASE语句要创建新的数据库,可以使用CREATEDATABASE。当执行CREATEDATABASE语句时,Oracle依据在CREATEDATABASE语句中指定的子句或者设置的初始化参数来执行其操作:创建数据文件;创建控制文件;创建重做日志文件并建立ARCHIVELOG模式;创建SYSTEM表空间和SYSTEM回滚段;创建数据字典;设置存储数据在数据库中的字符集;设置数据库时区;装载和打开数据库。,2.3.1创建数据库,6.发布CREATEDATABASE语句语法格式:CREATEDATABASEdatabase_nameCONTROLFILEREUSELOGFILEGROUPinteger(pathfilename)SIZEintegerKMREUSE,nMAXLOGFILESintegerMAXLOGMEMBERSintegerMAXLOGHISTORYintegerMAXDATAFILESintegerMAXINSTANCESintegerARCHIVELOGNOARCHIVELOGCHARACTERSETcharsetNATIONALCHARACTERSETcharsetDATAFILEpathfilenameSIZEintegerKMREUSEAUTOEXTENDOFFONNEXTintegerKMMAXSIZEUNLIMITEDintegerKM,2.3.1创建数据库,6.发布CREATEDATABASE语句【例2.11】CREATEDATABASE语句创建数据库mydb。CREATEDATABASEmydbMAXINSTANCES1MAXLOGHISTORY1MAXLOGFILES5MAXLOGMEMBERS5MAXDATAFILES100DATAFILED:oracleoradatamydbsystem01.dbfSIZE500MAUTOEXTENDONNEXT100MMAXSIZEUNLIMITEDUNDOTABLESPACEUNDOTBSDATAFILED:oracleoradatamydbundotbs01.dbfSIZE150MREUSEAUTOEXTENDONNEXT50MMAXSIZEUNLIMITEDDEFAULTTEMPORARYTABLESPACEtemps1CHARACTERSETtZHS16GBKNATIONALCHARACTERSETAL16UTF16LOGFILED:oracleoradatamydbredo01.logSIZE100M,D:oracleoradatamydbredo02.logSIZE100M,D:oracleoradatamydbredo03.logSIZE100M,2.3.1创建数据库,上面创建的数据库具有以下主要特点:数据库名称为mydb,全局数据库名称也为mydb。通过初始化参数CONTROL_FILES创建了3个控制文件。设置MAXINSTANCES参数只能有一个实例可以装载和打开数据库。DATAFILE子句设定该数据库SYSTEM表空间所对应的操作系统文件为D:oracleoradatamydbsystem01.dbf。假如该文件已事先存在,将被覆盖。UNDO_TABLESPACE子句创建并命名撤消表空间,以便使用它来为数据库存储撤消记录。ZHT16BIG5为数据库存放数据的字符集,它支持中文。新数据库拥有3个重做日志文件,分别设定在LOGFILE子句中。CREATEDATABASE语句没有包含ARCHIVELOG子句,所以该数据库将不进行归档。新数据库的时区与操作系统的时区相同。,2.3.1创建数据库,7.创建其他表空间要使数据库具有更多功能,就需要为用户创建另外的数据文件和表空间,按照应用系统实际需求而定。【例2.12】创建表空间。(1)创建Undo表空间CREATEUNDOTABLESPACERBSDATAFILED:oradatamydbrbs01.dbfSIZE256MAUTOEXTENDONNEXT5120KEXTENTMANAGEMENTLOCAL;(2)创建用户表空间CREATETABLESPACEUSERSDATAFILED:oradatamydbusers01.dbfSIZE128MREUSEAUTOEXTENDONNEXT1280KEXTENTMANAGEMENTLOCALMINIMUMEXTENT128KDEFAULTSTORAGE(INITIAL128KNEXT128KMINEXTENTS1MAXEXTENTS4096PCTINCREASE0);,2.3.1创建数据库,【例2.12】创建表空间。(3)创建临时表空间CREATETEMPORARYTABLESPACETEMPDATAFILED:oradatamydbtemp01.dbfSIZE32MREUSEAUTOEXTENDONNEXT640KEXTENTMANAGEMENTLOCALUNIFORMSIZE64KDEFAULTSTORAGE(INITIAL64KNEXT64KMINEXTENTS1MAXEXTENTSUNLIMITEDPCTINCREASE0);(4)创建工具表空间CREATETABLESPACETOOLSDATAFILED:Oracleoradatamydbtools01.dbfSIZE64MREUSEAUTOEXTENDONNEXT
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!