资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第二讲,创建和管理表,Oracle,数据库管理系统,第二讲 创建和管理表 Oracle数据库,课程目标,创建表,了解数据类型,修改表的定义,简单的增、删、改、查操作,4,1,2,3,课程目标 创建表 了解数据类型 修改表的定义 简单的,第二讲内容,Oracle,体系介绍,(,物理、逻辑、服务器,),Oracle,的数据类型?,数据表的创建、修改,数据的修改和删除,简单查询,第二讲内容 Oracle体系介绍(物理、逻辑、服务器)Or,4,ORACLE 11g,体系结构概述,在,Oracle,数据库管理系统中有,3,个重要,的,概,念,需,要,理,解,,,那,就,是,实,例,(,Instance,)、数据库(,Database,)和数,据库服务器(,Database,Server,)。其中,,实例是指一组,Oracle,后台进程以及在服务,器中分配的共享内存区域;数据库是由基,于磁盘的数据文件、控制文件、日志文件、,参数文件和归档日志文件等组成的物理文,件集合;数据库服务器是指管理数据库的,各种软件工具(比如,,sqlplus,、,OEM,等),和实例及数据库三个部分。从实例与数据,库之间的辩证关系来讲,实例用于管理和,控制数据库;而数据库为实例提供数据。,一个数据库可以被多个实例装载和打开;,而一个实例在其生存期内只能装载和打开,一个数据库。,4 ORACLE 11g体系结构概述 在Orac,逻辑存储结构,本讲大纲:,1,、数据块(,Data Blocks,),3,、段(,Segment,),2,、,数据区(,Extent,),4,、表空间(,TableSpace,),逻辑存储结构 本讲大纲:1、数据块(Data Blocks,数据块(,Data Blocks,),数据块是,Oracle,逻辑存储结构中的最小的逻,辑单位,也是执行数据库输入输出操作的最小,存储单位。,Oracle,数据存放在“,Oracle,数据块”,中,而不是“操作系统块”中。通常,Oracle,数,据块是操作系统块的整数倍,如果操作系统快,的大小为,2048B,,并且,Oracle,数据块的大小为,8192B,,则表示,Oracle,数据块由,4,个操作系统块,构成。,Oracle,数据块有一定的标准大小,其大,小被写入到初始化参数,DB_BlOCK_SIZE,中。另,外,,Oracle,支持在同一个数据库中使用多种大,小的快,与标准块大小不同的块就是非标准块。,数据块(Data Blocks)数据块是Ora,数据区(也可称作数据扩展区)是由一组连续的,Oracle,数据块所构成的,Oracle,存储结构,一个或多个数据块组成一,个数据区,一个或多个数据区再组成一个段(,Segment,)。,当一个段中的所有空间被使用完后,,Oracle,系统将自动为该,段分配一个新的数据区,这也正符合,Extent,这个单词所具有,的“扩展”的含义,可见数据区是,Oracle,存储分配的最小单,位,,Oracle,就以数据区为单位进行存储控件的扩展。,使用数据区的目的是用来保存特定数据类型的数据,也,是表中数据增长的基本单位。在,Oracle,数据库中,分配存储,空间就是以数据区为单位的。一个,Oracle,对象包含至少一个,数据区。设置一个表或索引的存储参数包含设置它的数据区,大小。,数据区(,Extent,),数据区(也可称作数据扩展区)是由一组连续的Ora,段(,Segment,),数据区(也可称作数据扩展区)是由一组连续的,Oracle,数据块所构成的,Oracle,存储结构,一个或多个数据,块组成一个数据区,一个或多个数据区再组成一个段,(,Segment,)。当一个段中的所有空间被使用完后,,Oracle,系统将自动为该段分配一个新的数据区,这也正符,合,Extent,这个单词所具有的“扩展”的含义,可见数据区,是,Oracle,存储分配的最小单位,,Oracle,就以数据区为单位,进行存储控件的扩展。,使用数据区的目的是用来保存特定数据类型的数据,,也是表中数据增长的基本单位。在,Oracle,数据库中,分配,存储空间就是以数据区为单位的。一个,Oracle,对象包含至,少一个数据区。设置一个表或索引的存储参数包含设置它,的数据区大小。,段(Segment)数据区(也可称作数据扩展区,表空间(,TableSpace,),Oracle,使用表空间将相关的逻辑结构(比如段、数据,区等)组合在一起,表空间是数据库的最大逻辑划分区域,,通常用来存放数据表、索引、回滚段等数据对象(即,Segment,),任何数据对象在创建时都必须被指定存储在,某个表空间中。表空间(属逻辑存储结构)与数据文件,(属物理存储结构)相对应,一个表空间由一个或多个数,据文件组成,一个数据文件只属于一个表空间;,Oracle,数,据的存储空间在逻辑上表现为表空间,而在物理上表现为,数据文件。举个例子来说,表空间相当于操作系统中的文,件夹,而数据文件就相当于文件夹中的文件。每个数据库,至少有一个表空间(即,SYSTEM,表空间),表空间的大小,等于所有从属于它的数据文件大小的总和。,表空间(TableSpace)Oracle使用,物理存储结构,本讲大纲:,1,、数据文件,3,、日志文件,4,、,服务器参数文件,5,、,密码文件、警告文件和跟踪文件,2,、,控制文件,物理存储结构 本讲大纲:1、数据文件 3、日志文件 4、,数据文件,数据文件是用于保存用户应用程序数据和,Oracle,系统内,部数据的文件,这些文件在操作系统中就是普通的操作系,统文件,,Oracle,在创建表空间的同时会创建数据文件。,Oracle,数据库在逻辑上由表空间组成,每个表空间可以包,含一个或多个数据文件,一个数据文件只能隶属于一个表,空间。,数据文件 数据文件是用于保存用户应用程序数据和O,控制文件是一个二进制文件,它记录了数据库的物,理结构,其中主要包含数据库名、数据文件与日志文件,的名字和位置、数据库建立日期等信息。控制文件一般,在,Oracle,系统安装时或创建数据库时自动创建,控制文,件,所,存,放,的,路,径,由,服,务,器,参,数,文,件,spfileorcl.ora,的,control_files,参数值来指定。,由于控制文件存放有数据文件、日志文件等的相关信,息,因此,,Oracle,实例在启动时必须访问控制文件。如,果控制文件正常,实例才能加载并打开数据库;但若控,制文件中记录了错误的信息,或者实例无法找到一个可,用的控制文件,则实例无法正常启动。,控制文件,控制文件是一个二进制文件,它记录了数据库的物理,日志文件的主要功能是记录对数据所作的修改,对数,据库所作的修改几乎都记录在日志文件中。在出现问题时,,可以通过日志文件得到原始数据,从而保障不丢失已有操,作成果。,Oracle,的日志文件包括重做日志文件(,Redo Log,File,)和归档日志文件(,Archive Log File,),它们是,Oracle,系统的主要文件之一,尤其是重做日志文件,它是,Oracle,数据库系统正常运行所不可或缺的。下面将介绍这,两种日志文件。,日志文件,日志文件的主要功能是记录对数据所作的修改,对数据,服务器参数文件,服务器参数文件,SPFILE,(,Server parameter File,)是二进制文件,,用来记录了,Oracle,数据库的基本参数信息(如,数据库名、控制文件所,在路径、日志缓冲大小等)。数据库实例在启动之前,,Oracle,系统首先,会读取,SPFILE,参数文件中设置的这些参数,并根据这些初始化参数来,配置和启动实例。比如,设置标准数据块的大小(即参数,db_block_size,的值)、设置日志缓冲区的大小(即参数,log_buffer,的值,)等等,所以,SPFILE,参数文件非常重要。服务器参数文件在安装,Oracle,数据库系统时由系统自动创建,文件的名称为,SPFILEsid.ora,,,sid,为所创建的数据库实例名。,与早期版本的初始化参数文件,INITsid.ora,不同的是,,SPFILE,中的参,数由,Oracle,系统自动维护,如果要对某些参数进行修改,则尽可能不要,直接对,SPFILE,进行编辑,最好通过企业管理器(,OEM,)或,ALTER,SYSTEM,命令来修改,所修改过的参数会自动写到,SPFILE,中。,服务器参数文件 服务器参数文件SPFILE(Se,Oracle,系统运行时,除了必须的数据文件、控制文件、,日志文件及服务器参数文件外,还需要一些辅助文件,如,,密码文件、警告文件和跟踪文件,下面将对这些辅助文,件进行简单的介绍。,密码文件、警告文件和跟踪文件,Oracle系统运行时,除了必须的数据文件、控制,Oracle 11g,服务器结构,本讲大纲:,1,、系统全局区(,SGA,),2,、,程序全局区(,PGA,),3,、,前台进程,4,、,后台进程,Oracle 11g服务器结构 本讲大纲:1、系统全局区(,系统全局区(,SGA,),系统全局区(,System,Global,Area,)是所有用户进程共享的一块内存区域,,也就是说,,SGA,中的数据资源可以被多个用户进程共同使用。,SGA,主要由高,速数据缓冲区、共享池、重做日志缓存区、,java,池和大型池等内存结构组成。,SGA,随着数据库实例的启动而加载到内存中,当数据库实例关闭时,,SGA,区,域也就消失了。,系统全局区(SGA)系统全局区(System,程序全局区(,PGA,),程序全局区(,Program,Global,Area,)也可称作用户进,程全局区,它的内存区在进程私有区而不是共享区中。虽,然,PGA,是一个全局区,可以把代码、全局变量和数据结构,都可以存放在其中,但区域内的资源并不像,SGA,一样被所,有的用户进程所共享,而是每个,Oracle,服务器进程都只拥,有属于自己的那部分,PGA,资源。,在程序全局区(,PGA,)中,一个服务进程只能访问属,于它自己的那部分,PGA,资源区,各个服务进程的,PGA,区的,总和即为实例的,PGA,区的大小。通常,PGA,区由私有,SQL,区,和会话区组成。,程序全局区(PGA)程序全局区(Program,前台进程,1,用户进程,用户进程是指那些能够产生或执行,SQL,语句的应用程,序,无论是,SQL*Plus,,还是其它应用程序,只要是能生成,或执行,SQL,语句,都被称作用户进程。,2,服务器进程,服务进程就是用于处理用户会话过程中向数据库实例,发出的,SQL,语句或,SQL*Plus,命令,它可以分为专用服务器,模式和共享服务器模式。,前台进程 1用户进程 用户进程是指那些能够产生,后台进程,Oracle,后台进程是一组运行于,Oracle,服务器端的后台,程序,是,Oracle,实例的重要组成部分。进程包括,DBWR,、,CKPT,、,LGWR,、,ARCH,、,SMON,、,PMON,、,LCKN,、,RECO,、,DNNN,、,SNPN,。其中,SMON,、,PMON,、,DBWR,、,LGWR,和,CKPT,这,5,个后台进程必须正常启动,否则将导致,数据库实例崩溃。此外,还有很多辅助进程,用于实现相,关的辅助功能,如果这些辅助进程发生问题,只是某些功,能受到影响,一般不会导致数据库实例崩溃。,后台进程 Oracle后台进程是一组运行于Ora,Oracle,的数据类型,第二讲,创建和管理表,数据类型,描述,VARCHAR2(,size,),可变长字符数据,CHAR(,size,),定长字符数据,NUMBER(,p,s),可变长数值数据,DATE,日期型数据,LONG,可变长字符数据,最大可达到,2G,RAW,可变长二进制
展开阅读全文