数据库复习要点2_第1页
数据库复习要点2_第2页
数据库复习要点2_第3页
数据库复习要点2_第4页
数据库复习要点2_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

1、SQL部分复习要点每个事务的处理必须满足ACID原则,即原子性Atomicity、一致性Consistency、隔离性Isolation、持久性Durability.SQL中可被锁定的资源从小到大分别是行、页、扩展盘区、_表_和_数据库_。Sql提供了6中锁定模式分别是:排他、共享、更新、意向、架构、 键范围 如果允许用户对视图进行更新和插入操作,但又要防止用户将不符合视图约束条件的记录添加到视图,应当在定义视图时指定下列哪个子句? 在表中插入数据的语句是在表中创建视图的语句是为了去除结果集中的重复的行,可在select语句中使用以下哪个关键字?下列关于游标的说法,不正确的是(d ) A)是从

2、数据表中提取出来的数据 B)以临时表的形式存放在内存中 C)在游标中有一个数据指针 D)利用goto语句可以移动该指针 利用“fetch”游标的操作不包括(C ) A)open B)fetch C)quit D)close12、不属于存储过程的优点有(D ) A)存储过程的能力大大增强了SQL语言的功能和灵活性。 B)可以降低网络的通信量 C)在运行存储过程前,数据库已对其进行了语法和句法分析,并给出 了优化执行方案 D)存储过程可以使没有权限的用户不能直接或间接存取数据库数据,从而保证数据的安全。 系统安全性是指在系统级控制数据库的存取和使用的机制,包含: 有效的用户名/口令的组合。 一个用

3、户是否授权可连接数据库。 用户对象可用的磁盘空间的数量。 用户的资源限制。 数据库审计是否是有效的。 用户可执行哪些系统操作。 1.掌握sqlserver2005中用户的创建、删除和权限管理方法.(1)创建SQL SERVER登录名例如:以命令方式创建SQL SERVER认证方式登录名,登录名使用yan,密码是123456Create login yan with password=123456;(2)用户的创建例如:使用命令方式创建YGGL的数据库用户,用户名是yan,登录名是yanUse ygglGo Create user yan for login yan (3)删除用户例如:使用命令

4、方式删除YGGL的数据库用户yanUse ygglGo Drop user yan (4) 权限授予用户例如:以命令方式授予用户yan在YGGL数据库上salary表中的select,delete权限。Use YGGLGRANT select,delete on salary to yan(5)权限的回收例如:以命令方式撤销用户yan在salary表中的select,delete权限。Revoke select,delete on salary from yan2.掌握SQLSERVER2005中角色的管理方法(1)角色的创建例如:以命令方式创建自定义数据库角色myroleCreate rol

5、e myrole(2)权限授予角色例如:授予角色role2在pxscj数据库的xsb表上的select权限Use pxscjGoGrant select on xsb to role2(3)使用系统存储过程添加数据库角色成员Use pxscjGo Exec sp_addrolemember role2,yan(3)删除角色例如:删除角色role2Drop role role2(4)使用系统存储过程添加固定数据库角色成员例如:将pxscj数据库上的数据库用户yan添加为固定数据库角色db_owner的成员。Use pxscjGoExec sp_addrolemember db_owner,dav

6、id(5)使用系统存储过程删除固定数据库角色成员例如:将pxscj数据库上的数据库用户yan添加为固定数据库角色db_owner的成员。Use pxscjGoExec sp_droprolemember db_owner,davidOracle部分复习要点一、 掌握数据库的组成部分和各部分的具体作用 Oracle 数据库包括逻辑结构和物理结构。1) Oracle数据库的物理存储结构主要包括 1.数据文件:数据文件用来存储数据库中的全部数据,如数据库表中的数据和索引数据。通常为后缀名为.dbf格式的文件。 (1)查看数据文件路径:Select * from v$datafile; 2.重做日志文

7、件:用于记录数据库所做的全部变更(如增加、删除、修改),以便在系统发生故障时,用它对数据库进行恢复。名字通常为redo*.log格式. (1)查看在线重做日志文件所在位置:Select group#,members from v$log;(2)日志组、日志成员、日志切换和检查点的概念和作用 (a)在线重做日志文件最少由两组在线重做日志文件交互使用。 LGWR 按顺序向联机重做日志文件写入重做信息。一旦当前在线重做日志文件组被写满,LGWR 就开始写入第二个组,第二个组写满有重新使用第一个组,如此地循环使用,切换的这个操作叫做日志切换。每组至少一个成员,同一组内的在线重做日志文件成员大小必须一致

8、,不同的日志组里面的在线重做日志文件大小可以不同。(b)手动切换命令:Alter system switch logfile;(c)查看在线重做日志文件使用状况:Select group#,archived,status from v$log; 3. 归档日志文件:根据在事务信息将被覆盖时,是否应该将文件归档,数据库分为以下两种归档模式:ARCHIVELOG(归档日志)或NOARCHIVELOG(非归档日志)模式。(1) 查看目前数据库是以何种模式运行:achieve log list; (2)归档与非归档之间的切换步骤:(一定要在mount状态下)shutdown immediate;sta

9、rtup mount;alter database rchivelog(归档);alter database open;archive log list;注意:要改变数据库的归档模式,数据库应处于mount状态下在Oracle系统中,热备份数据库应该在归档模式。 4.控制文件:每个Oracle数据库都有相应的控制文件,用于打开、存取数据库。它们是较小的二进制文件,其中记录了数据库的物理结构。名字通常为Control*.ctl格式。 (1)查看控制文件命令 select name from v$controlfile; 5.参数文件:参数文件是一个ASCII文本文件,记录Oracle数据库运行时

10、的一些重要参数。启动实例时,oracle会先读取参数文件,将内存结构构建出来。 (1)有两种类型的初始化参数文件:pfile和SPFILE。 pfile(Static parameter file)本地初始化参数文件。文本文件,可以用任何标识的系统文本编辑工具修改。在instance启动后只读,如果里面的内容被改变只能在下次启动instance后才能生效,oracle安装完后会自动生成一个简单模板。默认名称init.ora。 spfile(Persistent server parameter file)服务器端参数文件。 二进制文件,只能由oracle server修改和维护,只能位于运行o

11、racle server的机器上(pfile可以位于客户端),可以被RMAN备份。 (2)参数文件的工作原理:当输入startup命令后,先查找初始化参数文件spfileSID.ora,若无这个文件则查找缺省spfile文件,若无这个文件则查找initSID.ora这个文件并启动instance。(3)Show parameter spfile; 显示spfile位置,若value 为空,则表示使用pfile文件。(4)将spfile复制到pfile命令:Create pfile from spfile;(5)将pfile复制到spfile命令:Create spfile from pfile

12、; 6.密码文件password file:包含了用户的认证和特权信息。 7.跟踪文件(Trace file):存放着后台进程的警告和错误信息,每个后台进程都有相应的跟踪文件。跟踪文件分为后台进程跟踪文件和用户进程跟踪文件 两种。 8.警告文件( Alert file):由连续的消息和错误组成,可以看到Oracle内部错误、块损坏错误等。2) Oracle数据库的逻辑存储结构,主要包括表空间、段、区、数据块。 1.表空间可分为:永久表空间( permanent tablespace)、还原表空间(undo tablespace)、临时表空间(temporary tablespace)。一般不加

13、特别说明时所创建的表空间是permanent tablespace,保存永久性对象;undo tablespace指定该表空间为支持事务处理回退的撤消表空间,用于保存undo segments,而不能包含其他对象;temporary tablespace是用于进行排序操作,能够被多个用户共享,不能包含永久性对象。还可以分为:系统表空间和非系统表空间。系统表空间是随数据库的创建而创建的,包括system表空间和辅助系统表空间sysaux。其中,system表空间用于保存数据文件等数据库管理所需的信息,是系统默认的表空间。数据库中可包含多个非系统表空间,主要有以下几种非系统表空间:撤销表空间(un

14、do tablespace)、用户表空间(user tablespace)、临时表空间等。UNDO表空间:用于保存Oracle数据库撤销信息。用户表空间:保存用户数据。临时表空间主要用于存储Oracle数据库运行期间所产生的临时数据。2.段(segment):是为特定的数据库对象(如表、索引、回滚等)分配的一系列数据区。(1)段是由多个区构成的。一个段只能从属于一个表空间。(2)段分为四种类型,即数据段、索引段、回退段和临时段。数据段是存储表、索引、簇、表分区等常规应用数据的地方。在索引段中保存的是索引中的条目。在创建索引的时候,Oracle为索引创建索引段。UNDO段(回滚段)用于管理数据库

15、中的undo数据,并且为事务处理提供数据库的读取一致性视图。 UNDO段作用:1.事务回滚:当用户用命令rollback时,还能回滚到初始状态。2.读取一致性:如果用户修改数据但没有提交,其它用户检索的都是UNDO段的数据。 3.事务恢复:实例恢复时,oracl要了解各个事务是否提交,已提交的做前滚(rollforward);未提交的做回滚(rollback)。3.区(extent):区是用来为段存储数据的逻辑上连续的数据块的集合。(1)段是由一个或多个区构成的。区是oracle空间分配的最小单位。(2)区的参数设置: A.initial:初始区间大小; B.next:自动分配下一增量大小;

16、C.pctincreate:设置扩展区间的增量百分比。若设置为0,则每次的增长为next。 D.maxextent:最大区间大小。4.块(block):数据库中最小、最基本的逻辑存储单元,也是Oracle从磁盘读写的最小单元。(1)块的存储参数:pctfree 和 pctused PCTFREE:留给未来数据修改所使用的。当数据块的自由空间低于PCTFREE的值时,数据块被移出FREELIST。pctfree所预留的空间太小,容易发生行迁移;设定太大的pctfree时,可以减少行迁移的发生,但会增加硬盘空间的浪费。 PCTUSED:当使用者执行删除或修改的动作时,此数据块里的data部分会减少

17、,当减少到PCTUSED的标准时,就可以再做新增的动作了。当数据块的使用空间低于PCTUSED的值时,数据块被加入到FREELIST当中。pctused设定较低时,可以减少磁盘上的消耗,但相对比较浪费空间,因为要降到很低,块才能重新被使用;设定较高的pctused 可以使每个数据块的使用率相当高,比较不浪费,但会增加磁盘的消耗,因为这些块只能再接受n行记录后又从freelist中去掉。同时也较容易造成一笔数据必须读取一个以上的数据块的情况发生。简述行迁移、行链接的产生原因?答:行迁移(RowMigration):Oracle数据库中的数据被存放在数据块中,当用UPDATE语句更新一行数据时,可

18、能使该行的数据增加,从而无法使其再放入它的数据块中。这时Oracle就寻找能容纳下该行的数据块,如果能找到这样的块,便把该行全部移入新块,这称为行迁移(Row Migration)。行链接(Chaining Row):若行太大找不到能容纳该整行的任何可用块,则Oracle将行分割为多个部分,然后把每一份分别放入一个块中,于是这样的行被存放在多个数据块中,这称为行链接(Chaining Row)。删除表中的数据的方法有delete,truncate, 它们都是删除表中的数据,而不能删除表结构,delete 可以删除整个表的数据也可以删除表中某一条或N条满足条件的数据,而truncate

19、只能删除整个表的数据,一般我们把delete 操作收作删除表,而truncate操作叫作截断表. truncate操作与delete操作对比 操作回滚高水位标记空间效率truncate不能下降回收块delete可以不变不回收慢 二、实例由内存结构和后台进程两部分构成。1.Oracle 的内存结构包含以下两个内存区:系统全局区 (SGA)和程序全局区 (PGA) 。(1).系统全局区 (SGA)由: 数据缓冲区:用于存放最近访问的数据块信息。当用户向数据库请求数据时,如果所需的数据已经位于数据缓冲区,oracle直接从数据缓冲区提取数据,不必再从数据文件中读取数据。

20、数据缓冲区提高了查询的效率 。重做日志缓冲区:重做日志缓冲区用于存储已经被修改的数据信息。当重做日志缓冲区中的日志信息达到一定的数量时,由日志写入进程LGWR将日志信息写入重做日志文件中.重做日志缓冲区提升了数据修改的效率 。共享池:包括数据字典高速缓存(Dictionary Cache)和库高速缓存(Library Cache)字典缓存区是oracle用来缓存数据字典信息的区域,当分析SQL语句来校验表的表名,列名,数据类型等信息的时候,Oracle将频繁的使用数据字典信息放到字典缓存区中,Oracle可以减少执行SQL所引起的一些相关性能上的冲突. 库高速缓存是将SQL语句文本、解析代码和

21、执行计划放入共享SQL区Java池:java池的目的是支持在数据库中运行Java。当用户使用Java时,必须开启Java池。大共享池:提供了一个分配大内存块的隔离内存区. 固定SGA:此区域的大小无法人为控制,完全由Oracle自己独立的控制。在这个区域中,包含了一组指向SGA其他组件的变量,还有一些变量包含了各个参数的值。可以把这个区看成是SGA中的自启区,Oracle在内部要使用这个区来找到SGA的其他区。2. 程序全局区(PGA)是在用户进程连接到数据库并创建一个会话时自动分配的,保存每个与Oracle 数据库连接的用户进程所需的信息。3、SGA与PGA的区别:PGA是连接产生时被产生、

22、当结束连接时PGA被结束,SGA是永远存在的;SGA内存是被多个联机共同使用的,而PGA只被一个连接专用。4、Oracle进程分为:用户进程、服务器进程、后台进程。(1)当用户运行一个应用程序准备向数据库服务器发送请求时,即创建了用户进程。(2)当用户连接至 Oracle 数据库实例创建会话时,即产生服务器进程 。它可执行下列任务: 对应用所发出的SQL语句进行语法分析和执行。 从磁盘(数据文件)中读入必要的数据块到SGA的共享数据库缓冲区( 该块不在缓冲区时)。 将结果返回给应用程序处理。(3)后台进程主要有:数据库写入进程(DBWR)、日志写入进程(LGWR)、归档进程(ARCn)、检查点

23、进程(CKPT)、系统监控进程(SMON)、进程监控进程(PMON)、锁进程(LCKn)、恢复进程(RECO)、调度进程(Dnnn)、作业队列进程(SNPn)、队列监控进程(QMNn)、其它进程等。l DBWR (Database Writer)的主要工作是将数据缓冲区中被改过的数据写回到数据文件里。l LGWR(Log Writer)主要的工作是将Redo Log Buffer里的记录写到在线重做日志文件中。l SMON(System Monitor)有两个主要的功能。l <1>执行Instance Recovery:当数据库不正常中断后再度开启时,SMON会自动执行Instan

24、ce Recovery,也就是会将在线重做日志里面的数据回写到数据文件里面。l <2>收集空间:将表空间内相邻的空间进行合并的动作。l PMON(Process Monitor):监视数据库的用户进程。若用户的进程不当而被中断,PMON会负责清理任何遗留下来的资源,并释放失效的进程所保留的锁,然后从Process List中移除,以终止Process ID。l CKPT(Checkpoint)主要负责更新数据库的最新状态,CKPT当Checkpoint完成时,会更新控制文件和数据库文件的文件头。l ARCn(Archiver).当Oracle数据库设定为ARCHIVELOG Mod

25、e时,ARCn 会在Log Switch时自动将Redo Log File复制一份到指定的目录下称为归档日志文件(Archivedredologs)。(4)检查点的概念和作用在检查点出现期间,系统会修改控制文件与数据文件的头部, DBWR进程将数据缓冲区中的所有脏缓冲块写到数据文件中,LGWR进程将日志缓冲区中的所有记录项写到日志文件中,以确保上一个检查点至今修改过的所有数据块都被写到磁盘上。3、 掌握数据库实例的启动、关闭及状态改变的方法。查看数据库状态命令:select instance from v$instance;数据库状态:1.shutdown:关闭数据库; 2.nomount:启

26、动实例; 3.mount:数据库与实例连接; 4.open:实例的打开。关闭数据库的方式:1. shutdown normal:不允许新的连接,坚持当前在线用户完成所有操作后中止;2. shutdown immediate:将在线的所有交易中止;3. shutdown abort:数据库崩溃时强制关闭;4. shutdown transactional:使用者完成当前操作后中止。启动数据库的命令是:StartUp;   数据库状态改变的方法:1. startup nomount;(shutdown->nomount) 2. Startup mount;(sh

27、utdown->mount) 3. alter database mount;(nomount->mount)4. Startup (open);(shutdown->open)5. alter database open;(mount->open)启动数据库包括三个步骤: 启动实例:Oracle根据初始化参数文件中的参数值确定内存的分配并启动后台进程,启动实例。 装载数据库:mount阶段将数据库和实例联系在一起。Oracle根据初始化文件中的CONTROL_FILES参数给出的名称和位置找到并打开控制文件,Oracle从控制文件中得到数据库中所有的数据文件和联机重做

28、日志文件的名称的位置。 打开数据库:Oracle打开所有的数据文件和联机重做日志文件,检查数据库是否需要进行恢复,如果数据库状态是一致的,则数据库打开供所有用户使用。 shutdown命令关闭数据库,发生的次序:关闭数据库 卸载数据库 关闭实例3、增加日志组和日志成员的方法例如:向数据库中添加一个新的重做日志组group4,日志文件名为'd:oracleproduct10.2.0oradataorclredo4.log' ,日志文件大小为5mb.alter database add logfile group 4('d:oracleproduct10.2.0oradat

29、aorclredo4.log') size 5m;例如:为重做日志组group4添加一个新的成员,新的成员日志文件路径为'd:oracleproduct10.2.0oradataredo5.log'alter database add logfile member 'd:oracleproduct10.2.0oradataredo5.log' to group 4;4、删除日志组和日志成员的方法例如:删除4号重做日志组的第二个成员,该成员日志文件路径为'd:oracleproduct10.2.0oradataredo5.log'alter

30、 database drop logfile member 'd:oracleproduct10.2.0oradataredo5.log'例如:删除4号重做日志组alter database drop logfile group 4;创建、修改、删除和扩展表空间的方法:1 a.查看表空间的状况: select tablespace_name from dba_tablespaces;b.创建普通表空间:例如:创建一个表空间 EXER_TABSPACE,该表空间采用本地化管理方式,分配的初始空间为50MB,数据文件名为exer_tabspace.dbf,路径为d:oracle C

31、reate tablespace EXER_TABSPACE datafile 'd:oracleexer_tabspace.dbf' size 50m extent management local;(本地管理) c修改表空间的大小(1) .修改数据文件的大小:例如:修改表空间EXER_TABSPACE 大小为140mb,表空间路径是d:oracleexer_tabspace.dbf Alter database datafile ' d:oracleexer_tabspace.dbf ' resize 140m;(2) .设置数据文件自动增长:例如:修改表空

32、间EXER_TABSPACE的大小,将该表空间数据文件修改为自动扩展方式,每一次扩展增加20M,最大值为300mb 。Alter database datafile ' d:oracleexer_tabspace.dbf ' autoextend on next 20m MAXSIZE 300M;(3) .增加数据文件:例如:修改表空间EXER_TABSPACE的大小,将该表空间增加一个数据文件exer_tabspace02.dbf,路径是d:oracle,大小是20mb. Alter tablespace exer_tablespace add datafile '

33、d:oracleexer_tabspace02.dbf ' size 20m ; d .修改默认表空间: Alter database default tablespace exer_tablespace; e .删除表空间: Drop tablespace exer_tablespace including contents and datafiles;2 .a. 创建临时表空间:例如:创建本地化管理的临时表空间 T2,分配的初始大小为20MB,临时文件名为T2,路径为d:oracle,最大空间为100MB。Create temporary tablespace T2 tempfil

34、e 'd:oracleT2.DBF ' SIZE 20M AUTOEXTEND ON maxsize 100m extent management local;b.查看临时表空间信息。Select * from v$tempfile; c.重置临时表空间大小:例如:修改临时表空间T2 大小为150mb. 临时表空间路径是d:oraclet2.dbfAlter database tempfile ' d:oracleT2.DBF ' resize 150m; b.让临时表空间自动扩展:例如:修改临时表空间t2的大小,将该表空间数据文件修改为自动扩展方式,每一次扩展

35、增加20M,最大值为300mb 。 Alter database tempfile ' d:oracleT2.DBF ' auto_extend on next 20m Maxsize 300m; c.增加临时文件:例如:修改临时表空间t2的大小,将该表空间增加一个临时文件t02.dbf,路径是d:oracl,大小是20mb,最大空间是300mb. Alter tablespace t2 add tempfile 'd:oraclet02.dbf' size 20m Maxsize 300m; d.查看默认临时表空间: Select username,tempo

36、rary_tablespace from dba_users; e.修改默认临时表空间: Alter database default temporary tablespace t2;f.删除临时表空间: drop tablespace t2 including contents and datafiles;3.a.创建undo表空间:例如:创建undo表空间UNDO2, 数据文件为UNDO_TBS01.DBF, 路径是d:oracle,分配的初始大小为100MB, 该表空间采用本地化管理方式。 Create undo tablespace undo2 datafile 'd:orac

37、leUNDO_TBS01.DBF' size 100m extent management local; b.查看默认undo表空间: Show parameter undo_tablespace; c.修改默认undo表空间 alter system set undo_tablespace=undo2; d.删除默认undo表空间 drop tablespace undo2;15、Oracle 中的 SYSTEM 用户和 SYS 用户具有管理权限采用sysdba登录数据库默认用户是SYS.数据库字典内的对象和动态性能视图的拥有者是sys. 以SYSDBA身份登录数据库,连接的模式是

38、sys例如:Sys/orcl as sysdba输入:Show user;17用户与模式的关系(一)什么叫用户(user):用户是用连接数据库和访问数据库对象的。(用户是用来连接数据库访问数据库)。(二)什么叫模式(schema):A schema is a collection of database objects (used by a user.)。Schema objects are the logical structures that directly refer to the databases data.模式是数据库对象的集合。模式对象是数据库数据的逻辑结构。(把数据库对象用模

39、式分开成不同的逻辑结构)。(三)用户(user)与模式(schema)的区别:用户是用来连接数据库对象。而模式用是用创建管理对象的。模式与用户在Oracle 是一对一的关系。16、掌握oracle中用户的创建、修改、删除和权限管理方法a.查看所有用户的用户名: select user_name from dba_users;b.创建用户tempuser密码为oracle,用户默认表空间exer_tabspace,临时表空间temp,没有限制用户使用表空间exer_tabspace的大小。Create user tempuser identified by oracle default tabl

40、espace exer_tabspace temporary tablespace temp quota unlimited on exer_tabspace;c授予用户TEMPUSER创建表的权限grant connect, create table to tempuser;c. 查看用户默认的表空间select username,default_tablespace,temporary_tablespace from dba_users where username=TEMPUSER;(注意大写)d. 以tempuser身份登陆,在tempuser模式下创建表studentconn tem

41、puser/oraclecreate table student(name char(8),sex char(2) tablespace exer_tabspace;Oracle中创建表常用的数据类型注意:char(10)和varchar2(10)区别:1CHAR的长度是固定的,而VARCHAR2的长度是可以变化的, 比如,存储字符串“abc",对于CHAR (10),表示你存储的字符将占10个字节(包括7个空字符),而同样的VARCHAR2 (10)则只占用3个字节的长度,10只是最大值,当你存储的字符小于10时,按实际长度存储。e 删除用户(同时删除用户拥有的对象)drop us

42、er tempuser cascade;在 Oracle 中创建用户时,若未提及 DEFAULT TABLESPACE 关键字,则 Oracle 就将SYSTEM表空间分配给用户作为默认表空间。17、ORACLE中系统权限的作用,以及授予和收回系统权限的方法系统权限比如select any table, create any table等,create,alter传递:给一个用户授予系统权限带上with admin option 时,此用户可把此系统权限授予其他用户或角色Grant drop any table to user1 with admin option;对象权限:select ,i

43、nsert ,update,delete传递:with grant option用于对象授权时,被授予的用户也可把此对象权限授予其他用户或角色Grant update , insert to user1 with grant option;以系统管理员身份登陆Conn sys/orcl as sysdbaa授予用户TEMPUSER创建表的权限grant create table to tempuser;b.回收权限revoke create table from tempuser;18、对象权限的作用,以及授予和收回对象权限的方法以系统管理员身份登陆Conn sys/orcl as sysdb

44、aa授予用户TEMPUSER查看的权限grant select on to tempuser;以tempuser身份登陆Conn tempuser/orcle用户TEMPUSER查看select * from ;b.回收权限revoke select on from tempuser;20、掌握oracle中角色的管理方法a创建角色myrole,采用数据库认证方式,口令abc。Create role myrole identified by abc;b为角色myrole授予查看scott模式dept表的权限。Grant

45、select on scott.dept to myrole;c.为tom分配connect、resource、myrole系统角色。Grant connect, resource,myrole to tom;16、掌握数据字典、动态性能视图的作用(使用各种类型的数据字典、常用的动态性能视图)17、每一个用户有一个安全域,它是一组特性,安全域可决定的内容不包括(D ) A)用户可用的特权和角色; B)角色可用的特权和角色; C)用户可用的表空间的份额; D)角色可用的表空间的份额; 19、各种索引的应用以及建立方法答:B-Tree索引结构的键值后面跟着ROWID,位图索引是在索引的叶块中存储的

46、是位图信息,而不是rowid。(1)如果表中的索引列的取值只有有限的几个,就可以在此列上采用位图索引。因为此时在位图索引上根据列的取值,每条记录得到一个0/1值,在位图索引中就可以存储这些0/1值。(2)如果一张表中的值经常需要进行修改,此时不能使用位图索引,因为对表的值进行修改后对应的位图值也要进行修改,但是对于B-Tree索引而言,ROWID是不会改变的。所以对于表中的值需要经常修改的,不宜采用位图索引。(3)由于位图索引的特性,在索引的列值上进行相等/OR/AND等逻辑操作时,使用位图索引进行查询,将会大大提高查询速度。因为在进行这些操作时,进行的是一些逻辑操作,这是计算机最拿手的。但是

47、,如果要在索引列上进行大于/小于等查询操作,此时使用位图索引不但不能提高性能,反而会降低性能,因为位图索引中存储的一些0/1位图,这些0/1串要通过映射才能够转化为rowid,从而得到对应的值,然后进行比较,这样性能会大大下降。(4)位图索引可以节省大量的存储空间,这对于数据量特别大的情形,就特别明显了。另外,在位图索引中可以包含键值为NULL的行。伪列rowid的作用是让使用者很容易找到所需的数据。Rowid是一个虚拟的字段,也就是说,rowid并没有实际存放在数据库里。Rowid用于标识各条记录,记录的物理地址。而不是保存记录的头信息,26、掌握数据字典、动态性能视图的作用(使用各种类型的

48、数据字典、常用的动态性能视图)a.查看表空间的状况: select tablespace_name from dba_tablespaces;27、掌握Oracle数据库的备份方法Oracle数据库的备份一般分为:物理备份和逻辑备份,rman备份。根据物理备份时数据库的状态,可将备份分为冷备份(或脱机备份)和热备份(或联机备份)。 冷备份(Cold Backup):冷备份主要指在关闭数据库的状态下进行的数据库完全备份,备份内容包括所有数据文件、控制文件、联机日志(REDO LOG)文件、初始化参数文件init.ora。2.冷备份及恢复1)以管理员身份登录connect system/password as sysdba;2)关闭数据库shutdown immediate;3)将数据库中所有文件拷贝到d:backup4)模拟误删除操作系统下将数据库中users01.dbf删除5)将d:backup目录中的所有文件拷回数据库目录6)以管理员身份登录connect system/p

温馨提示

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

评论

0/150

提交评论