事务日志文件记录了数据库中所进行的一切改变。
它在恢复数据库时非常重要,它保存了所有当系统出错时恢复数据库时所需要的信息。
缺省情况下,事务日志记录的尺寸为数据文件的 1/4,每一个数据库必须有一个日志,而且,事务日志必须与数据存在不同的文件中。
在 SQL Server2000 中,使用文件组来管理具有相似特征的一组文件。
一个主文件或者辅助文件只能属于一个文件组,日志文件是独立的,不属于任何文件组。
而一个文件组也只属于一个数据库。
在 SQL Server 2000 中,对数据库的一切操作,都可以通过两种方式进行:一种是通过图形化的工具:Enterprise Manager另一种是通过使用 Transact-SQL 语言,直接进行对数据库的操作。
前一种方式,比较直观,操作简单。
后一种方式,比较复杂,需要对 Transact-SQL 语言语法特别熟悉。
。
SQL Server2000 是 Microsoft 公司于 2000 年 8 月推出的最新数据库引擎,商务数据仓库的数据库解决方案,它具有以下几个特点: 1 熟悉的界面 作为大型电子 SQL Server 2000 与 SQL Server 7.0 就界面而言并没有太大差别,相信许多曾经使用过 SQL Server7.0 的读者见到 2000 时会有一种十分熟悉的感觉,这方便了用户从 7.0 版本到 2000 的升级: 2 更加强大的数据引擎 SQLServer2000 拥有增强的数据引擎,高级的管理方式,这样就大大降低了检索的开销。
此外 SQL Server 2000 支持 XML,HTTP,并与 Web 相结合,使其功能更加强大。
3 与 Windows 2000 更好的结合 4 MS SQL Server 2000 相对其他数据库产品,更好地利用了 Win2000 的优 势。
此外 SQL Server 2000 还支持高达 32 个 CPU,64GB。
2.2.2 数据库管理系统的基本概念 1 数据库的安全性 在计算机系统中,安全措施一般是分级设置的,在数据库系统中,对数据的存取权限一般支持自主存取控制和强制存取控制两种机制,以对数据提供保护。
在自主存取控制中,用户对不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,用户还可将自己的权限转授给其他用户。
而强制存取控制中,每一个数据对象被标以一定的密级,每个用户也被授予某密级的许可证,因此只有数据对象的密级和许可证上标明的密级相匹配时用户才能存取数据对象。
通过为不同的用户定义不同的数据视图,就可以向不同的用户展示不同的数据,这样实现了一定程度的数据隐藏,因而能对数据提供保护。
此外,可以利用数据库系统提供的审计功能将所有用户对数据的操作自动记录下来,存入电子记录簿,必要时可用它跟踪某些用户对数据库的操作。
最后常用的安全措施还有数据加密技术,即将数据通过一定方式变换成密文保存在数据库中,必要时再变换成原始数据。
若非法用户不知道解密的方法,即使读取了数据也不明白其含义。
2 数据的完整性 数据库的完整性指数据的正确性和兼容性。
数据库管理系统一般提供下面三种手段支持数据的完整性。
定义功能 向用户提供定义完整性约束条件的机制。
检查功能 检查用户的操作是否违背了完整性约束条件。
错误处理功能 在检查到用户的操作违背了完整性约束条件后,就采取相应的应对措施。
3 数据库恢复 虽然数据库系统是非常可靠的,但是有时也会遭到各种破坏活动,包括自然的和人为的原因。
例如自然灾害、硬件故障、软件故障和人为破坏等。
如何将数据库恢复到一个已知的正确状态就是数据库的恢复。
数据库的恢复经常涉及到下面两个问题。
如何建立数据备份 如何利用所建立的数据备份恢复数据库 建立数据备份常用的技术是数据转储和覆盖文件,一般同时使用这两种方法。
数据转储就是管理人员定期地将数据备份到磁带或磁盘上以建立数据备份的过程。
利用数据备份可将数据库恢复到建立备份时的状态。
若要将数据库恢复到当前状态,就需要将备份后所有更新数据库的事务运行一遍,因此需要用日志记录运行过的事务。
4 并发控制 在数据库系统中,通常有很多事务同时运行,同时对数据进行存取和更新,如不加以控制,就会产生下面导致数据一致性错误的三个问题。
丢失修改 事务 A 和 事务 B 同时操作同一数据库并修改,A 先将结果写入,接着 B 也将结果写入这样事务 A 对数据所作的修改就会丢失。
不能重读 事务 A 先对数据库作了修改,而事务 B 接着对数据库作了更新或修改,或删除或增加某一纪录,这样当事务 A 第二次读的时候,发现和第一次读的结果不同。
脏读 事务 A 修改了某一数据,并将其写回磁盘,事务 B 读了该数据并使用了该数据,结果因某种原因被取消,它所修改的数据回到了以前的状态,那么事务 B 所读得数据就是不正确的,也称为读脏数据。
解决这三个问题的主要方法之加锁。
锁有两种类型,即排他锁和共享锁。
如事务 A 对数据对象加上了排他锁,则该数据对象将由它独占地使用,不能被其他事务读取、修改和加锁,直到事务 A 释放自己加的排他锁。
若某事务 A 对数据对象加上了共享锁,则它只能读这个数据对象而不能修改它,其他事务也可以在该数据对象上加共享锁,而不能加排他锁。
在对数据对象加锁时,需要遵循一定的规则,这些规则称为加锁协议,常用的是三级封锁协议,现介绍如下。
一级封锁协议 事务在修改数据之前必须先对其加排他锁,事务结束时释放所加的锁,若需要读操作,则不用加锁.
上一篇:
【精品】TFSGuide
下一篇:
法律专业开题报告范文