oracle总结参考.doc
《oracle总结参考.doc》由会员分享,可在线阅读,更多相关《oracle总结参考.doc(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、oracle总结oracle总结Oracle总结当今应用最广泛的数据库产品莫过于oracle数据库,从工业领域到商业领域,从大型机到微机,从Unix操作系统到Windows操作系统,到处都可以找到oracle数据库的应用案例。随着oracle数据库的发展,越来越多的企业都将oracle数据库应用到自己的企业中,对数据进行储存、管理。Oracle之所以广受用户的青睐,其主要原因在于一下几个方面。(1)支持多用户、大事务量的事物处理(2)提供标准操作借口(3)实施安全控制和完整控制(4)支持分布式数据处理(5)具有可移植性、可兼容性和可连续性伴随这些条件,作为我们信息与计算科学专业的学生,如果能够
2、掌握oracle数据库这门重要的技术,将对我们以后在数据库技术的学习中启到举一反三的作用。不管是以前学习的SQLserver,还是以后将要学到的数据挖掘,通过学习oracle数据库后,就能够对数据库的结构有更深的理解,便于数据的处理。下面我就将自己对oracle数据库的理解做如下的总结。一、在Windows系统下,安装好oracle数据库。二、可以用DBCA创建或手动创建数据库。既然使用DBCA创建数据库没有难度,我就主要说下手动创建数据库。其概要内容如下:(1)确定新建数据库的名称与实例名称(在cmd下setoracle_sid=test)(2)在相应的地方创建初始化参数文本文件(修改示例的
3、四个名称复制到相应的地方)(3)创建口令文件(orapwdfile=d:oracleproduct10.0.0db_1databasepwdtest.ora)(4)创建实例(oradimnewsidteststartmodeautopfiled:oracleproduct10.0.0admintestpfileinittest.ora)(5)启动实例(1、sqlplus/nolog,2、conn用户名/密码assysdba,3、startupnomount)(6)创建数据库(7)创建附加表空间(8)运行脚本创建数据字典视图(9)创建服务器初始化参数文件三、数据库的存储结构Oracle数据库的存
4、储结构分为物理存储结构和逻辑存储结构两种。物理存储结构描述了oracle数据库中的数据在操作系统中的组织和管理,逻辑存储结构,描述了oracle数据库内部的组织和管理。Oracle数据库的物理结构由数据文件、控制文件、重做日志文件、归档文件、初始化参数文件、跟踪文件、口令文件、警告文件、备份文件组成。(1)数据文件(.dbf)数据文件是用于保存数据库中数据的文件,系统数据、数据字典数据、临时数据、索引数据、应用数据等都物理地址存储在数据文件中。用户对数据库的操作,例如数据库的插入、删除、修改、查询等,其本质都是对数据文件进行操作。在oracle数据库中,数据文件都是衣服与表空间而存在的。一个表
5、空间可以包含几个数据文件,但一个数据文件只能属于一个表空间。在逻辑上,数据库对象都存放在表空间中,实质上是存放在表空间所对应的数据文件中。(2)控制文件(.ctl)控制文件描述了整个数据库的物理结构信息。控制文件在创建数据库时创建,每个数据库至少有一个控制文件。在数据库启动时,数据库实例依赖初始化参数定位控制文件,然后根据控制文件的信息加载数据文件和重做日志文件,最后打开数据文件和重做日志文件。控制文件主要存储与数据结构相关的一些信息,包括数据库的名称和标识、数据库创建的时间、表空间名称、数据文件和重做日志文件的名称和位置、当前重做日志文件序列号、数据库检查点的信息、回退段的开始和结束、重做日
6、志的归档信息、备份信息、数据恢复所需要的同步信息。(3)重做日志文件(.log)重做日志文件以重做记录的形式记录、保存用户对数据库所进行的变更操作,包括用户执行DDL,DML语句操作。(4)归档文件(.arc)用于保存已写满的重做日志文件。(5)初始化参数文件(.ora)用于设置数据库启动时的参数初始值。(6)跟踪文件用于记录用户进程、数据库后台进程等的运行情况。(7)口令文件(.ora)用于保存具有有SYSDBA,SYSOPER权限的用户名和SYS用户口令。(8)警告文件用于记录数据库的重要活动以及发生的错误。(9)备份文件用于存放数据库备份所产生的文件。Oracle10g数据库的逻辑储存结
7、构分为数据块、区、段、表空间4种。其中,数据块是数据库中最小I/O单元,由若干个连续的数据块组成的区是数据库中最小的存储分配单元,由若干个区形成的段是相同类型数据的存储分配区域,由若干个段形成的表空间是最大的逻辑存储单元,所有的表空间构成一个数据库。(1)表空间一个数据库由一个或多个表空间构成。表空间是存储模式对象的容器,一个数据库对象只能存储一个表空间中(分区表和分区索引除外),但是可以存储在该表空间所对应的一个或多个数据文件中。若表空间只有一个数据文件,则该表空间中所有对象都保存在该文件中;若表空间对应多个数据文件,则表空间中的对象可以分布于不同的数据文件中。表空间分为系统表空间和非系统表
8、空间两类,其中非系统表空间包括撤销表空间、临时表空间和用户表空间。1)系统表空间。系统表空间包括SYSTEM表空间和辅助系统表空间SYSAUX,他们是数据库创建时自动创建的。其中,SYSTEM表空间是系统默认的表空间。SYSTEM。System表空间主要存储数据库的数据字典、PL/SQL程序的源代码和解释代码、数据库对象的定义等信息。SYSAUX。Sysaux表空间主要用于存储数据库组件等信息,以减小system表空间的负荷。2)非系统表空间。撤销表空间。撤销表空间由回滚段组成。每个数据库可以有多个撤销表空间,但每个数据库实例只能使用一个由参数UNDO_TABLESPACE设置的撤销表空间。当
9、初始化参数UNDO_TABLESPACE=AUTO时,系统使用撤销表空间自动进行回滚信息管理。临时表空间。临时表空间是指专门进行临时数据管理的表空间,这些临时数据在会话结束时会自动释放。如果没有用户指定临时表空间,那么oracle会自动将系统的默认临时表空间(DefaultTemporaryTablespace)作为用户的临时表空间。用户表空间。3)大文件表空间与小文件表空间所谓大文件表空间是指一个表空间只包含一个大数据文件,该文件的最大尺寸为128TB(数据块大小为32KB)或只32TB(数据块大小为8KB)。系统默认创建的表空间称为小文件表空间。那件表空间可以多达1024个数据文件。小文件
10、表空间的总容量与大文件表空间的容量基本相似。表空间管理。表空间管理只要包括表空间的创建、修改、删除,以及表空间内部区的分配、段的管理。1)创建表空间。创建永久表空间使用CREATETABLESPACE语句来实现,包含以下子句。设定表空间对应的数据文件Datafile、表空间的管理方式EXTENTMANAGEMENT(默认LOCAL)、定区的分配方式(默认AUTOALLOCATE)、设定段的管理方式SEGMENTSPACEMANAGEMENT(默认AUTO)。创建临时表空间使用CREATETEMPORARYTABLESPACE语句实现,用TEMPFILE子句设置临时数据文件。本地管理的临时表空间
11、中区的分配方式只能是UNIFORM。创建撤销表空间使用CREATEUNDOTABLESPACE语句实现,其他子句不变。2)修改表空间。修改表空间的读/写性。使用ALTERTABLESPACEREADONLY|READWRITE设置。设置默认表空间。在创建数据库用户时,如果没有使用DEFAULTTABLESPACE选项指定默认(永久)表空间,则该用户使用数据库的默认表空间;如果没有使用DEFAULTTEMPPRARYTABLESPACE选项指定默认临时表空间,则该用户使用数据库的默认临时表空间。使用ALTERDATABASEDEFAULTTABLESPACE语句设置数据库的默认表空间;使用ALT
12、ERDATABASEDEFAULTTEMPORARYTABLESPACE语句设置数据库的默认临时表空间。表空间的重命名。使用ALTERTABLESPACERENAMETO语句重命名表空间,但是不能重命名SYSTEM表空间和SYSAUX表空间,不能重命名处于脱机状态或部分数据文件处于脱机状态的表空间。3)表空间的备份使用ALTERTABLESPACEBEGINBACKUP语句将表空间市值为备份模式。在操作系统中备份表空间所对应的数据文件。使用ALTERTABLESPACEENDBACKUP语句结束表空间的备份模式。4)删除表空间使用DORPTABLESPACEINCLUDINGCONTENTS语
13、句可以删除表空间及其内容。(2)数据块Oracle数据块是数据库中最小单元的逻辑存储单元,也是数据库执行输入/输出操作的最小单位,由一个或多个操作系统块构成。在oracle10g中,数据块包括标准块和非标准块两种,其中标准块在数据库创建时由DB_BLOCK_SIZE参数设置,其大小不可更改。数据块的结构由块头部和存储区两部分构成。块头部包括标题、表目录、行目录三部分。对块的管理分为手动和自动两种。如果简历表空间时使用本地管理方式,并且将段的管理方式设置为AUTO,则蚕蛹自动方式管理块。否则,DBA可以采用手动管理方式,通过为段设置PCTFREE和PCTUSED两个参数来控制数据块中空闲空间的使
14、用。(3)区区是由一系列连续的数据块构成的逻辑存储单元,是存储空间分配与回收的最小单位。(4)段段是由一个或多个连续或不连续的区组成的逻辑存储单元。段分为数据段、索引段、临时段和回滚段4类。四、数据库实例Oracle数据库主要由两部分构成:放在磁盘中的物理数据库和对物理数据库进行管理的数据库管理系统。数据库与实例是一一对应的。在并行oracle数据库服务器结构中,数据库与实例是一对多的关系。Oracle实例由内存结构和后台进程组成,内存结构又分为系统全局区(SGA)和程序全局区(PGA)。(1)SGASGA主要由数据高速缓冲区、共享池、重做日志缓冲区、大型池、JAVA池、流池和其他结构组成。(
15、2)PGAPGA由排序区、会话区、游标区和堆栈区组成。Oracle后台进程进程随数据库实例的启动而启动,它们协调服务器进程的工作,优化系统的性能。可以通过初始化参数文件中参数的设置来确定启动后台进程的数量。后台过程包括DBWR、LGWR、CKPT、SMON、ARCH、RECO、LCKn、Dnnn。五、数据库服务工作模式与数据字典Oracle数据库创建服务器进程来处理连接到数据库的用户进程的请求。根据工作方式的不同。可以分为专用服务器模式和共享服务器模式两种。如果要数据库运行在共享服务器模式,则需要进行数据库吃实话参数的配置。服务器进程与用户进程是一对一的关系。各个专用服务器进程之间是完全独立的
16、,它们之间没有数据共享。Oracle数据库的数据字典是数据库在创建的过程中创建的,由一系列表和视图构成,这些表和视图对与所有的用户,都是只读。六、模式对象在oracle数据库中,用户数据是以对象的形式存在的,并以模式为单位进行组织。所谓模式是指一系列逻辑数据结构或对象的集合。模式与用户相对应,一个模式只能被一个数据库用户所拥有,并且模式的名称与这个用户的名称相同。表是数据库中最基本的对象,数据库中所有数据都以二维表的形式存在。在oracle数据库中,根据表生存周期的不同,可以分为永久性表和临时表;根据表中数据组织方式的不同,可分为标准表、索引化表、分区表及外部表等。(1)表的创建。创建表使用C
17、REATETABLE语句,语法为Createtabletable_name(column_namedatatypecolumn_level_constraint,column_namedatatypecolumn_level_constraint,table_level_constraint)parameter_list;创建临时表。使用CREATEGLOBALTEMPORARYTABLE语句创建临时表,使用ONCOMMIT子句说明表的类型,默认为事务级别的临时表。(2)表约束。表创建后,可以通过ALTERTABLE语句添加和删除约束。添加约束可以分为添加主键约束、添加唯一行约束、添加检查约束
18、、添加外键约束、添加空/非空约束。(3)修改表表创建后,可以对表进行修改,包括列的添加、删除、修改,表参数的修改,表的移动或重组,存储看哦哦你关键的分配与回收,表的重命名和约束的添加、删除、修改、激活、禁用。索引化表是一种特殊的表。要创建索引化表,必须在CREATETABLE语句中显式地指定ORGANIZATIONINDEX关键字,同时必须建立一个PRIMARYKEY约束。分区表。所谓分区是指将一个巨型表或巨型索引分成若干个独立的组成部分进行存储和管理,每一个相对小的、可以独立管理的的部分。外部表是一种特殊的表,在数据库中只保存表的鼎,而数据以文字形式保存在数据库之外的操作系统中,数据源文件与
19、表之间维持映射关系。七、安全管理Oracle数据安全控制机制包括以下六个方面。(1)用户管理:为了保证只有合法的身份的用户擦能访问数据库。(2)权限管理:用户登录数据库后,只能进行其权限范围内的操作。(3)角色管理:通过角色方便地实现用户权限的授予与收回。(4)表空间的设置和配额:通过设置用户的默认表空间、临时表空间和在临时表空间上的使用配额,可以有效的控制用户对数据库存储空间的使用。(5)用户资源限制:通过概要文件,限制用户对数据库资源的使用。(6)数据库审计:监视和记录用户在数据库中的活动。八、备份与恢复数据库备份就是数据库中部分或全部数据进行复制,形成副本,存放到一个相对独立的设备上,如
20、磁带、磁盘,以备将来数据库出现故障时使用。根据数据备份方式的不同,数据库备份分为物理备份和逻辑备份两类。武库备份是将组成数据库的数据文件、重做日志文件、控制文件、初始化参数文件等操作操作系统文件进行复制,将形成的副本保存到与当前系统独立的磁盘或磁带上。逻辑备份是指利用oracle提供的当初工具将数据库中的数据抽取出来存放到一个二进制文件中。以上就是我目前学习到有关oracle数据库的一些知识。虽然,现在只学习到oracle数据库的一些皮毛,但是我相信在以后的学习或工作将继续对oracle数据库做更加深刻的理解。扩展阅读:Oracle总结Oracle一些概念Linux中登录oracle的命令:s
21、qlplus用户名/密码showuser显示当前登录的身份.setpauseon(网页中分页)setpauseoff分页显示(SQL*plus中在网页中是不分页).oracle中默认日期和字符是左对齐,数字是右对齐tableorviewdoesnotexist;表或示图不存在edit命令用于自动打开vi修改刚修执行过的sql的命令。查看表的结构(包含的字段):descs_dept(控制台);descdept(浏览器)查询:selecttable_namefromuser_tables;(控制台)一、数据库基本概念1)数据库管理系统:一种操纵和管理数据库的大型软件,是用于建立、使用和维护数据库,
22、Oracle、DB2、Mysql、MSServer;2)数据库:按照数据结构来组织、存储和管理数据的仓库。3)数据:4)表(Table):数据库中的表与我们日常生活中使用的表格类似,它也是由行(Row)和列(Column)组成的。5)视图:其实是一个虚拟的表,在数据库中并不实际存在。视图数据是由查询数据库表产生的,它限制了用户能看到和修改的数据。6)索引:索引是根据指定的数据库表列建立起来的顺序。它提供了快速访问数据的途径,并且可监督表的数据,使其索引所指向的列中的数据不重复。7)存储过程:存储过程是为完成特定的功能而汇集在一起的一组SQL程序语句,经编译后存储在数据库中的SQL程序。8)触发
23、器:触发器是一个用户定义的SQL事务命令的集合。当对一个表进行插入、更改、删除时,这组命令就会自动执行。9)ER图:实体关系图10)范式:第一范式:数据库表的每一列都是不可分割的基本数据项;第二范式:要求实体的属性完全依赖于主关键字primarykey:SelectCourse表(学号,姓名,年龄,课程名称,成绩,学分)1、数据冗余2、更新异常3、插入异常4、删除异常第三范式:数据表中如果不存在非关键字段对任一候选关键字段的传递函数依赖;11)事务特性:原子性、一致性、隔离性、持久性设置oracle事务隔离界别:settransactionisolationlevelserializable;
24、未提交读:事务A可以读取事务B未提交的数据。提交读:事务A只能读取事务B提交了的数据可重复读:在同一个事务A里,先后执行同一个查询语句,得到的结果是一样的。序列化读:事务A在执行的时候不允许其他事务的执行,隔离级别最高。12)SQL:结构化查询语言,是操作关系型数据库中的对象。二、SQL语句SQLStatement(SQL语句)1)DDLDataDefinationLanguage数据库定义语言create,alter,drop,truncate2)DMLDataManagementLanguage数据库操纵语言insert,upate,delete3)DCLDataControlLangua
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- oracle 总结 参考
限制150内