




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
天行健君子当自强不息 地势坤君子以厚德载物 db2交流QQ 1378803287DB2学习笔记目录第2章创建实例和管理服务器3实例3管理服务器3第3章创建数据库和表空间33.1创建数据库33.1.1DB2数据库存储模型33.2表空间设计53.2.1创建表空间53.2.2表空间维护63.2.3表空间设计注意事项63.3缓冲池63.3.1缓冲池的使用方法73.3.2缓冲池和表空间之间关系7第5章创建数据库对象75.1模式8第9章DB2性能监控89.1快照监视器8第10章锁和并发1010.1锁1010.1.1数据一致性1010.1.2事务和事务边界1010.1.3锁1010.2锁的属性、策略及模式1110.2.1锁的属性1110.2.4如何获取锁1110.3隔离级别(Insolation Levels)1210.3.1可重复读(RRRepeatable Read)1210.3.5隔离级别小结13第13章数据库安全1413.1DB2安全机制概述1513.1.1身份认证(authentication)1513.1.2权限(authorization)1513.1.3特权(privilege)1513.1.4 安全层次1613.2 认证(authentication)16DB2安装配置第2章创建实例和管理服务器实例实例也称为数据库管理器(Database Management Application)是数据库管理器在内存中的映像,是管理一个系统可以包含多个DB2实例,每个实例能够管理一个或多个数据库。实例是DB2的执行代码和数据库对象的中间逻辑层,可以看成是关于所有的数据库及其对象的逻辑集合管理服务器 第3章创建数据库和表空间3.1创建数据库3.1.1DB2数据库存储模型DB2利用一个逻辑存储模型和一个物理存储模型来处理数据。用户操作的实际数据放在表中。表由行和列组成,用户并不知道数据的物理表示。表本身放在表空间中,表空间是存放表的储藏室(容器),一个表空间可以包含多个表,同时,表空间物理上又对应着若干个表空间容器。容器可以由目录名、裸设备名或文件名标识。容器被分配给表空间。表空间可以跨越许多容器,这样,表空间作为就逻辑设计中的表与物理设计中的容器之前的一个桥梁,表通过表空间实实在在地将存储到容器(文件或者目录)中。DB2物理存储和逻辑存储模型 物理存储层PROD InstanceDatabase MYDB1CatalogUserspace1DB Configfile_1BufferpoolTempspace1LogsRegular DMStablespace 1Table ATable BTable CRegular DMStablespace 2Index 1 on Table AIndex 1 on Table BIndex 2 on Table ARegular DMStablespace 3Index 1 on Table CLong DMStablespace 4LOBS for Table ALOBS for Table CSMStablespace1Index 1 on Table DIndex 1 on Table ELOBS for Table DTable DTable EtypetexttypetexttypetexttypetexttypetexttypetexttypetextRaw DeviceContainersFileContainersRaw DeviceContainerRaw DeviceContainersDirectoryContainers从图中可以看到:一个数据库可以有很多表空间,可以把数据库看做是很多个表空间的集合;我们可以根据需要创建多个表空间。而我们用户创建的表、索引等数据库对象存放在表空间中。表直接面向应用。而同时表空间又和底层的物理存储对应,表空间可以有多个容器,而容器是在底层存储上的。所以通过表空间数据库实现了物理存储和逻辑存储的统一。3.2表空间设计3.2.1创建表空间表空间建立数据库系统使用的物理存储设备与用来存储数据的逻辑对象或表之间的关系。对于非自动存储器表空间,在创建表空间时,必须知道将引用的容器的设备名或文件名。另外,必须知道与要分配给表空间的每个设备名或文件名及分配空间大小。对于自动存储器表空间,数据库管理器将根据与数据库关联的存储路径将容器指定给表空间。在一个数据库内创建表空间,会将容器分配到表空间,并在数据库系统目录表中记录它的定义和属性,然后就可以在此表空间内创建表。当创建数据库时,会创建3个初始表空间。这3个初始表空间的页大小基于使用CREATE DATABASE命令时建立或接受的默认值。此默认值还表示所有将来CREATEBUFFERPOOL和CREATETABLESPACE语句的默认页大小。如果在创建数据库时不指定页大小,那么默认大小是4KB。如果在创建表空间时不指定页大小,那么默认页大小是创建数据库时设置的页大小。创建表空间可以通过控制中心或命令行创建。1.创建用户表空间创建SMS表空间:CREATE TABLESPACE MANAGED BY SYSTEM USING ()创建DMS表空间:CREATE TABLESPACE MANAGED BY DATABASE USING(DEVICE |FILE)创建自动存储器表空间CREATE TABLESPACE 或 CREATE TABLESPACE MANAGED BY AUTOMATIC STORAGE2.创建系统临时表空间系统临时表空间用来存储分组、排序、连接、重组、创建索引操作。数据库必须始终至少有一个这样的表空间。创建数据库时,定义的3个默认表空间之一便是名为“TEMPSPACE1”的系统临时表空间。创建名为tmp_tbsp的表空间CREATE SYSTEM TEMPORARY TABLESPACE tmp_tbsp MANAGED BY SYSTEM USING (d:tmp_tbsp,e:tmp_tbsp)对于每个页大小至少应该具有一个和该页大小匹配的系统临时表空间。3.创建用户临时表空间用户临时表空间不是在创建数据库时默认创建的。如果应用程序需要使用临时表,则需要创建用来驻留临时表的用户临时表空间。用户临时表空间通常用来批量插入、批量更新和批量删除以加快速度。使用DECLARE GLOBAL TEMPORARY TABLE语句声明临时表时必须要求用户临时表空间存在。创建名为usr_tmp的用户临时表空间CREATEUSERTEMPORARYTABLESPACEusr_tbsp MANAGED BY DATABASE USING(FILE d:db2datauser_tbsp 5000,FILEe:db2datauser_tbsp 5000)3.2.2表空间维护3.2.3表空间设计注意事项1.表空间类型选择SMS表空间优点:根据需要,系统按需分配空间由于不必须定义容器,所以创建表空间需要的初始工作较少DMS表空间优点:通过使用ALTER TABLESPACE 语句,可添加或扩展容器来增加表空间的大小。现有数据可自动在新的容器集合中重新平衡,以保持最佳I/O效率根据存储的数据的类型,可以把一个表长字段(LF)和大对象(LOB)数据、索引和常规表数据分割存放在多个表空间中以提高性能和空间存储容量。通过分割表数据,可以提高性能和增加每个表存储的数据量。例如,如果您要使用4KB页大小的大型表空间,那么可以有一个包含2TB正规表数据的表、有一个包含2TB索引数据的单独表空间和另一个包含2TB长型数据数据的单独表空间。如果这3中类型的数据存储在一个表空间中,那么总空间将限制为2TB。使用较大的页大小将存储更多数据。对范围分区数据创建的索引可以与表数据存储在不同的表空间中在操作系统允许的情况下,可控制数据在磁盘上的位置DMS表空间的性能通常优于SMS表空间3.3缓冲池缓冲池指的是从磁盘读取表和索引数据时,数据库管理器分配的用于高速缓存这些表或索引数据的内存区域。每个DB2数据库都必须具有至少一个缓冲池。数据库中的数据访问都需要经过缓冲池:读的数据要先读到缓冲池才能交个应用,写的数据也是要先写到缓冲池才能进行I/O。缓冲池是影响数据库性能最大的参数。创建数据库时,DB2会自动创建一个名为IBMDEFAULTBP的默认缓冲池,所有的表空间都共享该缓冲池。可以使用CREATE BUFFERPOOL、DROP BUFFERPOOL和ALTER BUFFERPOOL语句来创建、删除和修改缓冲池。SYSCAT.BUFFERPOOLS目录视图记录数据库中所定义的缓冲池的信息。缓冲池的默认大小是BUFFPAGE数据库配置参数所指定的大小,但是可以通过在CREATE BUFFERPOOL命令中指定SIZE关键字来覆盖该默认值。足够的缓冲池大小是数据库拥有良好性能的关键所在,因为它可以减少磁盘I/O这一最耗时的操作。大型缓冲池还会对查询优化产生影响,因为更多的工作可以在内存中完成,而无须进行I/O。3.3.1缓冲池的使用方法首次访问表中的数据行时,数据库管理器会将包含该数据的页放入缓冲池中。这些页将一直保留在缓冲池中,直到关闭数据库或者其他页需要使用某一页所占用的空间为止。缓冲池中的页可能正在使用,也可能没有使用,它们可能是脏页,也可能是干净页。正在使用的页就是当前正在读取或更新的页。为了保持数据一致性,数据库管理器只允许一次只有一个代理程序更新缓冲池中的给定页。如果正在更新某页,那么它只能允许一个代理程序互斥地访问。如果正在读取该页,那么多个代理程序可以同时读取该页。“脏”页包含已更改但尚未写入磁盘的数据。将一个已更改的页写入磁盘之后,它就是一个“干净”页,并且可能仍然保留在缓冲池中。3.3.2缓冲池和表空间之间关系每个表空间都与一个特定的缓冲池相关。IBMDEFAULTBP是默认缓冲池。数据库管理器还会分配下列系统缓冲池:IBMSYSTEMBP4K、IBMSYSTEMBP8K、IBMSYSTEMBP16K和IBMSYSTEMBP32K(以前称为“隐藏缓冲池”)。要使另一个缓冲池与表空间相关,那么该缓冲池必须存在它们具有相同的页大小。关联是在使用CREATE TABLESPACE语句创建表空间时定义的,但以后可使用ALTER TABLESPACE语句更改此关联。如果拥有多个缓冲池,那么可以配置数据库使用更多的内存,以改善整体性能。例如,对于OLAP类型的应用,我们建议采用一个大的缓冲池,以利于大块顺序读取;用于联机事务应用程序的表空间可以根据业务特点使用多个小的缓冲池,以便可以更长时间地高速缓存应用程序所使用的数据页,以便响应时间更快。访问数据库第5章创建数据库对象DB2数据库中数据库对象有模式、表、索引、序列、视图和触发器,可以使用图形用户界面或通过显式执行SQL语句来创建这些数据库对象。用于创建数据库对象的语句称为“数据定义语言(DDL)”,通常以关键字CREATE或ALTER作为前缀。5.1模式数据库中的大多数对象指定一个由两部分组成的唯一名称,如图所示,第一部分(最左边的)称为限定词或模式,而第二部分(最右边的)称为简单(或未限定)名称。从句法上来说,这两部分并置成用句点分隔的单个字符串。第一次创建可以由模式名限定的任何对象(例如表、索引、视图、用户定义的数据类型、用户定义的函数、昵称、程序包或触发器)时,会根据对象名称中的限定词将该对象指定给一个特定模式。 数据库对象名的组成Schema.ObjectName数据移动数据库备份与恢复DB2故障诊断第9章DB2性能监控DB2数据库为我们提供了很多监控工具,如快照监视器、事件监视器、db2pd工具、db2mtrk、Activity Monitor等。9.1快照监视器Snapshot Monitor快照监视器提供在特定时刻有关数据库活动的信息。它是数据库活动当前状态的图像。当拍下快照时,返回给用户的数据量由监视器开关来决定。这些开关可以在DBM配置文件中或在会话级别上设置。在数据库管理器级别,可以通过数据库管理器配置参数来设置监视器开关。要查看所有用于监视器开关设置的设置选项,请使用get dbm cfg|grep DFT_MON(在Windows执行命令get dbm cfg|find /I “dft_mon”)。要启用或禁用数据库管理器级别的监视器开关设置,请使用UPDATEDBMCFG命令,并指定要更改的个别监视器开关。db2 update dbm cfg using DFT_MON_TIMESTAMP off 关闭DFT_MON_TIMESTAMP监视器,终止时间戳记监视器数据的收集每个连接至数据库的应用程序(会话)都有其自己的监视器开关集,这些监视器开关与数据库管理器和其他应用程序(会话)无关。应用程序(会话)在连接至数据库时,从数据库管理器上继承它们的监视器开关设置。GET MONITOR SWITCHES查看会话的所有监视器开关设置的设置选项UPDATE MONITOR SWITCHES更改会话的监视器开关设置db2 update monitor switches using LOCK on打开LOCK监视器开关,启用SNAPSHOT_LOCK 快照表函数所使用的监视器元素的收集快照监视器以计算器的形式提供累计信息。快照信息由一种特殊的数据结构提供,这种数据结构可以通过应用程序发出快照来检查。由监视数据结构返回的数据根据表中所定义的开关来设置。这些开关可以在实例(DBM配置)级别或应用程序会话级别(UPDATE MONITOR SWITCHES)上打开或关闭。快照监视器开关参数组别所提供的信息监视器开关DBM参数排序所用堆的数目、溢出、排序性能SORTDFT_MON_SORT锁定保持锁定数目、死锁数目LOCKDFT_MON_LOCK表测量活动(读行、写行)TABLEDFT_MON_TABLE缓冲区读和写的次数,所用时间BUFFERPOOLDFT_MON_BUFPOOL工作单元开始时间、结束时间、完成时间UOWDFT_MON_UOWSQL语句开始时间、结束时间、完成时间STATEMENTDFT_MON_STMP在DBM(实例)配置参数中设置默认的开关值,讲影响该实例中的所有数据库。而且每个与数据库相连接的session(会话)将继承在DBM配置中所设置的默认开关值。第10章锁和并发10.1锁10.1.1数据一致性如果用户忘记了进行所有必要的更改,或者在进行更改的过程中系统崩溃了,又或者数据库应用程序由于某种原因过早地停止了,那么数据库中的数据就变得不一致。当即个用户同时访问相同的数据库表时,也可能发生不一致。DB2采用事务、锁、隔离级别来保护数据的一致性。10.1.2事务和事务边界事务(也称为工作单元)是一种将一个或多个SQL操作组合成一个单元的可恢复操作序列,通常位于应用程序进程中。在关系数据库中,事务是最小的恢复和交易单位,事务具有ACID(原子性、一致性、隔离性和永久性)。事务的启动和终止定义 了数据库的 一致性:要么将一个事务中执行的所有SQL操作的结果都应用于数据库(提交),要么完全取消并丢弃已执行的所有SQL操作的结果(回滚)。运行嵌入式SQL应用程序或脚本,在可执行SQL语句第一次执行时(在建立与数据库的连接之后或在现有事务终止之后),事务就会 自动启动。在启动事务之后,必须有启动事务的用户或应用程序显式地终止它,除非使用了自动提交(automatic commit),使用自动提交时,发出的每个单独的SQL语句被看做单个事务,它一执行就被隐式地提交了。在大多数情况下,通过执行COMMIT和ROLLBACK语句来终止事务。当执行COMMIT语句时,自从事务启动以来对数据库的所有操作都被写到磁盘。当执行ROLLBACK语句时,自从事务启动一来对数据库的所有操作都被撤销,并且数据库返回到事务开始之前所处的状态。不管是那种情况,数据库在事务完成时都保证能回到一致状态。10.1.3锁锁是一种用来将数据资源与单个事务关联起来的机制,其用途是当某个资源与拥有它的事务关联在一起时,控制其他事务如何与该资源进行交互。基本的锁有两中类型:排它锁(Exclusive locks,记为X锁)和共享锁(Share locks,记为S锁)。DB2数据库管理程序用锁来禁止事务访问其他事务写入的未提交数据(除非使用了未提交的读隔离级别),并禁止其他事务在拥有锁的事务使用限制性隔离级别时对这些进行更新。一旦获取了锁,在事务终止之前,就一直持有该锁;该事务终止时释放锁,其他事务就可以使用被解锁的数据资源了。锁等待是指如果一个事务尝试访问数据资源的方式与另一个事务所持有的锁不兼容,则该事务必须等待,直到拥有锁的事务终止为止。当锁等待发生时,尝试访问数据资源的事务所做的只是停止执行,直到拥有锁的事务终止或不兼容的锁被释放为止。事务T对数据D加X锁,则其它任何事务都不能再对D加任何类型的锁,直至T释放D上的X锁;一般要求在修改数据前要向该数据加X锁,所以X锁又称为写锁。若事务T对数据D加S锁,则其它事务只能对D加S锁,而不能加X锁,直至T释放D上的S锁;一般要求在读取数据前要向该数据加共享锁,所以S锁又称为读锁。通过对数据库对象加锁,我们可以避免以下情况对象的发生:由于并发更改造成数据的丢失如果应用程序在一个事务中多次执行同一SQL语句,而且后续执行会返回附加行,就是发生了“幻象读”。10.2锁的属性、策略及模式10.2.1锁的属性锁的基本属性:object:该属性标识要锁定的数据资源。DB2数据库管理程序在需要时锁定数据资源(如表空间、表和行)。DB2支持对表空间、表、行和索引加锁(大型机上的DB2还支持对数据页加锁)来保证数据库的并发完整性。不过,在考虑用户应用程序的并发性问题上,通常并不检查用于表空间和索引的锁。size:该属性指定要锁定的数据资源部分的物理大小。锁并不总是必须控制整个数据资源。例如,DB2数据库管理程序可以让应用程序独占地控制表中的特定行,而不是让该应用程序独占地控制整个表。duration:该属性指定持有锁的时间长度。事务的隔离级别通常控制着锁的持续时间。mode:该属性指定允许锁的拥有者执行的访问类型,以及允许并发用户对被锁定数据资源执行的访问类型,通常称为锁状态。10.2.4如何获取锁大多数情况下,DB2数据库管理程序在需要锁时会隐式地获取它们,因此这些锁在DB2数据库管理程序控制之下。除了使用未提交读隔离级别的情况外,事务从不需要显式地请求锁。事实上,唯一有可能被事务显式锁定的数据库对象是表(lock table)DB2数据库管理程序总是尝试获取行级锁。但是,可以通过执行特殊形式的ALTER TABLE语句来修改这种行为,如下所示:ALTER TABLE TableName LOCKSIZE TABLE其中的TableName标识一个现有表的名称,所有事务在访问它时都要获取表级锁。也可以通过执行LOCK TABLE语句,强制DB2数据库管理程序为特定事务在表上获取表级锁,如下所示:LOCK TABLE TableName IN SHARE|EXCLESIVE MODE其中TableName标识一个现有表的名称,对于这个表应该获取表级锁(假定其他事务在该表上没有不兼容的锁)。如果在执行这个语句时指定了共享(SHARE)模式,就会获得一个允许其他事务读取(但不能更改)存储在表中的数据的表级锁;如果在执行时指定了互斥(EXCLUSIVE)模式,就会获得一个不允许其他事务读取或修改存储在表中的数据的表级锁。ALTER TABLE语句的LOCKSIZE子句指定行级别、或表级别的锁定的作用域。默认情况下使用的是行锁定。由这些已定义的表锁定仅请求S(共享)和X(互斥)锁定。ALTER TABLE语句的LOCKSIZE ROW子句不会阻止正常的锁定升级。在下列情况下,由ALTER TABLE语句定义的永久表锁定可能比使用LOCK TABLE语句获得的单个事务表锁定更可取:表是只读的,并且始终只需要S锁定。其他用户也可以获取表的S锁定;表通常由只读应用程序访问,但有时也需要单个用户访问以进行简单维护,该用户需要X锁定。当维护程序运行时,将只读应用程序锁定在外,但在其他情况下,只读应用程序可以使用最小锁定开销的同时访问表。ALTER TABLE语句在全局指定锁定,它影响访问该表的所有应用程序和 用户。单个 应用程序可以使用LOCK TABLE语句来指定应用程序级别的表锁定。10.3隔离级别(Insolation Levels)维护数据库的一致性和数据完整性,同时又允许多个应用程序同时访问同一数据,这样的特性称为并发性。DB2数据库用来尝试强制实施并发性的方法之一是通过使用隔离级别,它决定在第一个事务访问数据时,如何对其他事务锁定或隔离该事务所使用的数据。DB2使用下列隔离级别来强制实施并发性:可重复读(Repeatable Read)、读稳定性(Read Stability)、游标稳定性(Cursor Stability)、未提交读(Uncommitted Read)。可重复读可以防止所有现象,但是会大大降低并发性;未提交读提供了最大的并发性,但是“脏读”、“幻象读”、“不可重复读”都可能出现。默认的隔离级别是游标稳定性CS。10.3.1可重复读(RRRepeatable Read)可重复读隔离级别是最严格的隔离级别。在该隔离级别下,一个事务的影响完全与其他并发事务隔离,脏读、不可重复的读、幻象读现象都不会发生。当使用 可重复读隔离级别时,在事务执行期间会锁定该事务以任何方式引用的所有行。因此,如果在同一事务中发出同一个SELECT语句两次或更多次,那么产生的结果数据集总是相同的。因此,使用可重复读隔离级别的事务可以多次检索同一行集,并对它执行任意操作,知道提交或回滚操作终止该事务。但是,在事务存在期间,不允许其他事务执行会影响这个事务正在访问的任何行的插入、更新或删除操作。为了确保这种行为不会发生,锁定该事务所引用的每一行,而不是仅锁定被实际检索或修改的那些行。因此,如果一个事务扫描了1000行,但只检索10行,那么它扫描的1000行都会被锁定。在使用可重复读隔离级别时,一个事务中所有被读取过的行上都会被加上S锁,知道该事务被提交或回滚,行上的锁才会被释放。这样可以保证在一个事务中即使多次读取同一行,得到的值也不会改变。另外,在同一事务中即使以同样的搜索标准重新打开已被处理过的游标,得到的结果集也不会改变。可重复读相对于读稳定性而言,加锁的范围更大。对于读稳定性,应用程序只对符合要求的所有行加锁;而对于可重复读,应用程序对所有被扫描过的行都加锁。可重复读(RR)会锁定应用程序在工作单元中引用的所有行。利用“可重复读”,在打开游标的相同工作单元内一个应用程序发出一个SELECT语句两次,每次都返回相同的结果。利用“可重复读”,不可能出现丢失更新、脏读和幻象读的情况。在该工作单元完成之前,“可重复读”应用程序可以尽可能多次地检索和操作这些行。但是,在该工作单元完成之前其他应用程序均不能更新、删除或插入可能会影响结果表的行。“可重复读”应用程序不能查看其他应用程序的未落实更改。10.3.5隔离级别小结隔离级别摘要隔离级别访问未落实的数据不可重复读幻象读现象可重复读(RR)不可能不可能不可能读稳定性(RS)不可能不可能可能游标稳定性(CS)不可能可能可能未落实的读(UR)可能可能可能选择隔离级别的准则应用程序类型需要高数据稳定性不需要高数据稳定性读写事务RSCS只读事务RR或RSUR因为获取和释放锁定所需的CPU和内存资源会随隔离级别的不同而不同,所以隔离级别不但影响应用程序之间的隔离程度,而且还影响个别应用程序的性能特征。潜在的锁等待情况也会随隔离级别的不同而不同。通常,使用的隔离级别越严格,并发性就越小,某些应用程序的性能还可能会越低,因为它们要等待资源上的锁被释放。如果正在执行大型查询,而且不希望并发事务所做的修改会导致查询的多次运行而返回不同的结果,则使用可重复读隔离级别。如果希望在应用程序之间获得一定的并发性,并且希望限定的行在事务执行期间保持稳定,则使用读稳定性隔离级别。如果希望获得最大的并发性,同时不希望查询看到未提交的数据,则使用游标稳定性隔离级别。如果正在只读的表/视图/数据库上执行查询,或者并不介意查询是否返回未提交的数据,则使用未提交读隔离级别。尽管隔离级别控制事务级上的行为,但实际上是在应用程序级被指定的。对于嵌入式SQL应用程序,在预编译时或在将应用程序绑定到数据库(如果使用延迟绑定)时指定隔离级别,在这种情况下,使用PRECOMPILE或BIND命令的ISOLATION选项来设置隔离级别。对于开放数据库连接(Open Database Connectivity,ODBC)和调用级接口(Call Level Interface,CLI)应用程序,隔离级别是在应用程序运行时通过调用指定了SQL_ATTR_TXN_ISOLATION连接属性的SQLSetConnectAttr()函数进行设置的(另外,也可以通过指定db2cli.ini配置文件中的TXNISOLATION关键字的值来设置ODBC/CLI应用程序的隔离级别。但是,这种方法不够灵活,不能像第一种方法那样为一个应用程序中的不同事务修改隔离级别)。对于Java数据库连接(Java Database Connectivity,JDBC)和SQLJ应用程序,隔离级别是在应用程序运行时通过调用DB2的java.sql连接接口中的setTransactionIsolation()方法设置的。当没有使用这些方法显式指定应用程序的隔离级别时,默认使用游标稳定性隔离级别。这个默认设置适用于从命令行处理程序(CLP)执行的DB2命令、SQL语句和脚本,以及嵌入式SQL、ODBC/CLI、JDBC和SQLJ应用程序。因此,也可以为从CLP执行的操作(以及传递给DB2 CLP进行处理的脚本)指定隔离级别。在这种情况下,隔离级别是通过在建立数据库连接之前在CLP中执行CHANGE ISOLATION命令来设置的:在DB2 UDB 7.1及更高版本中,能够指定特定查询所用的隔离级别,方法是在SELECT SQL语句中加上WITH RR|RS|CS|UR子句。适用于应用程序在大多数时候需要比较宽松的隔离级别以支持最大的并发性,但是对于其中的某些查询必须防止某些现象出现,就可以直接指定隔离级别。SELECT * FROM EMPLOYEE WHERE EMPID = 101WITH RR数据库运行维护数据库常用工具第13章数据库安全在系统架构的不同级别上,可以采用不同的技术来进行安全性控制。例如可以通过安装防火墙来防止外部网络对服务器的未经授权的访问。可以使用一些安全网络协议技术,例如IPSec,来保证网络上计算机间通信信道的安全性。又如,可以实行严格的密码策略,要求用户选择一个强密码,并经常更换密码。应用系统的安全需要在操作系统、网络、应用、中间件和数据库等层面相应的安全性防范措施协同工作,这样才能构建一个牢固的安全体系。13.1DB2安全机制概述 DB2中有3种主要的安全机制,分别是:身份认证(authentication)、权限(authorization)和特权(privilege)13.1.1身份认证(authentication)身份认证是用户在尝试访问DB2实例或数据库时遇到的第一道安全闸门。身份认证是使用安全机制验
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年驾照三力测试试题题库及答案
- 阿里地区2024-2025学年七年级上学期语文期中模拟试卷
- 安徽省2024年高二学业水平合格性考试物理考试题目及答案
- 2025 年小升初太原市初一新生分班考试英语试卷(带答案解析)-(人教版)
- 2025 年小升初承德市初一新生分班考试数学试卷(带答案解析)-(人教版)
- 天津2025年上半年造价工程师考试造价管理:工程项目目标控制的内容试题
- 社区老年食品安全知识培训课件
- 北师大版四年级上册数学第七-八单元 生活中的负数、数学好玩 可能性检测题 (无答案)
- 代销服装协议合同范本
- 法院卫生保洁合同范本
- 医院检验科实验室生物安全程序文件SOP
- 新入辅导员职员工培训
- IPS内置保温体系施工方案(经典)
- 房屋买卖合同范本Word模板下载
- 授权委托书保险理赔
- 保安公司安全生产培训课件
- 光伏发电项目技术标投标文件
- 普通话声母资料
- 社区开展康复护理知识讲座
- 《测量降水量》教学课件
- 楼顶发光字采购安装投标方案
评论
0/150
提交评论