公务员期刊网 精选范文 数据库系统范文

数据库系统精选(九篇)

前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的数据库系统主题范文,仅供参考,欢迎阅读并收藏。

数据库系统

第1篇:数据库系统范文

关键词 数据库;安全特性;数据备份

中图分类号TP393 文献标识码A 文章编号 1674-6708(2010)23-0242-02

数据库,就是若干数据的集合体。这些数据存在于计算机的外存储器上,而且不是杂乱无章地排列的。数据库中数据量庞大,用户访问频繁,有些数据具有保密性,因此数据库要由数据库管理系统进行科学地组织和管理,以确保数据库的安全性和完整性。数据库系统安全,包含两种含义,分别为系统运行安全和系统信息安全。

1 数据库系统的安全特性

1.1数据独立性

数据独立于应用程序之外。理论上数据库系统的数据独立性分为两种:1)物理独立性。数据库的物理结构的变化不影响数据库的应用结构其相应的应用程序。这里的物理结构是指数据库的物理位置、物理设备等;2)逻辑独立性。数据库逻辑结构的变化不会影响用户的应用程序,数据类型的修改、增加、改变各表之间的联系都不会导致应用程序的修改。

这两种数据独立性都要靠DBMS来实现。到目前为止*物理独立性已经能基本实现,慢逻辑独立性实现起来非常困难,数据结构一旦发生变化,一般情况,相应的应用程序都要作或多或少的修改。追求这一目标也成为数据库系统结构复杂的一个重要原因。

1.2数据安全性

一个数据库能否防止无关人员得到他不应该知道的数据,是数据库是否实用的一个重要指标。如果一个数据库对所有的人都公开数据,那么这个数据库就不是一个可靠的数据库。一般地,比较完整的数据库对数据女安全采取了以下措施:1)将数据库中需要保护的部分与其他部分相隔离;2)使用授权规则。这是数据库系统经常使用的一个办沾,数据库给用户ID号和口令、权限。当用户用此ID号和口令登录后,就会获得相应的权限。不同的用户或操作会有不同的权限。比如,对于一个表,某人有修改权,而其他人只有查询权;3)将数据加密,以密码的形式存于数据库内。

1.3数据的完整性

数据完整性通常表明数据在可靠性与准确性上是可信赖的,也意味着数据有可能是无效的或不完整的。数据完整性包括数据的正确性、有效性和―致性。

1)正确性。数据在输入时要保证其输入值与定义这个表时相应的域的类型一致。如表中的某个字段为数值型,那么它只能允许用户输入数值型的数据,否则不能保证数据库的正确性;2)有效性。在保证数据正确的前提下,系统还要约束数据的有效性。例如:对于月份字段,若输入值为17,那么这个数据就是无效数据,这种无效输入也称为“垃圾输入”。当然,若数据库输出的数据是无效的,相应的称为“垃圾输出”;3)一致性。当不同的用户使用数据库,应该保证他们取出的数据必须一致。因为数据库系统对数据的使用是集中控制的,因此数据的完整性控制还是比较容易实现的。

1.4并发控制

如果数据库应用要实现多用户共享数据,就可能在同一时刻多个用户要存取数据,这种事件叫做并发事件。书一个用户取出数据进行修改,修改存入数据库之前如有其他用户再取此数据,那么读出的数据就是不正确的。这时就需要对这种并发操作施行控制,排除和避免这种错误的发生,保证数据的正确性。

1.5故障恢复

当数据库系统远行时出现物理或逻辑上的错误时, 如何尽快将它恢复正常,这就是数据库系统的故障恢复功能。

2 数据库的备份

备份对数据库的安全来说是至关重要的。备份是指在某种介质上,如磁带储数据库或部分数据库的拷贝。

数据库的备份不足实时的,应该什么时候做,用什么方式做,这主要取决于数据库的不同规模和不同的用途。数据库的备份主要考虑以下的几个因素:备份周期;使用冷备份或是热备份:使用增量备份或是全部备份,或者两者同时使用:使用什么介质进行备份,备份到磁盘还是磁带:是人工备份还是设计一个程序定期自动备份等。数据库的备份大致有三种类型:冷备份、热备份和逻辑备份。

2.1冷备份

冷备份是在没有最终用户访问它的情况下关闭数据库,并将其备份。这是保持数据完整性的最好办法,但如果数据库太大,无法在备份窗口中完成对它的备份,该方法就不适用了。

2.2热备份

热备份是在数据库正在被写入的数据更新时进行。热备份严重依赖日志文件。在进行时,日志文件将业务指令“堆起来”,而不真正将任何数据值写入数据库记录。当这些业务被堆起来时,数据库表并没有被更新,因此数据库被完整地备份。

该方法有“些明显的缺点。首先,如果系统在进行备份时崩溃,则推在日志文件中的所有业务都会被丢失,因此也会造成数据的丢失;其次,它要求DBA仔细地监视系统资源,这样日志文件就不会占满所有的存储空间而不得不停止接受业务;最后,日志文件本身在某种程度上也需要被备份以便重建数据。需要考虑另外的文件并使其与数据库文件协调起来,为备份增加了复杂度。

由于数据库的大小和系统可用性的需求,没有对其进行备份的其他办法。在有些情况下,如果日志文件能决定上次备份操作后哪些业务更改了哪些记录的话,对数据库进行增量备份是可行的。

2.3逻辑备份

逻辑备份使用软件技术从数据库提取数据并将结果写入一个输出文件。该输出文件不是一个数据库表,但是表中的所有数据是一个映像。不能对此输出文件进行任何真正的数据库操作。在大多数客户机/服务器数据库中,结构化查询语言就是用来创建输出文件的。该过程有些慢,对大型数据库的全盘备份不实用。尽管如此,当仅想备份那些上次备份之后改变了的数据,即增量备份时,该方法非常好。为了从输出文件恢复数据,必须生成逆SQL语句。该过程也相当耗时,但工作的效果相当好。

参考文献

[1]徐寿怀,胡美琛.数据库安全研究的现状与问题[J].计算 机工程,1997(3).

第2篇:数据库系统范文

一、数据库系统的安全需求

数据库安全是信息安全的一个子集,也是信息安全中最重要的部分之一。与信息安全的整体需求相似,数据库系统的安全要求主要包括数据的保密性、可用性和完整性三个方面。

1.数据的保密性数据的保密性是指禁止任何没有权限的用户非法访问数据。

2.数据的可用性 数据的可用性指任何授权用户的正常操作必须接受,同时又能保证人机交互友好、系统高效正常运行。

3.数据的完整性 数据库系统的完整性是指数据要具备正确性、一致性和相容性等特点。

二、数据库加密的要求

数据库加密的目的就是要确保数据库的安全,但是加解密操作过程必然会影响操作的效率,一个好的加密系统就是要在安全性和效率之间取得一个平衡。即:稳定的数据库加密系统必须满足以下几点要求:

1.加解密速度要求足够快,这样减少影响数据操作响应时间。

2.加密强度要足够大,保证长时间而且大量数据不被破译。但是在实际应用中加密算法不一定在理论上无法破解,但在实际应用中能保证破解的代价大于获得其中数据的意义。

3.对数据库的合法用户来说加解密操作是透明的,它不会影响用户的合理操作。用户在明文数据库系统中能够进行更新、增加、删除数据,在密文数据库中也可以用相同的方法增加、更新和删除数据,而且感觉不到加解密过程的存在。

4.对加密后的数据库存储量并没有明显的增加。

5.密钥管理机制灵活,加解密密钥存储安全,使用方便可靠。

三、数据库加密的粒度

数据库加密的粒度可以分为文件级、表级、字段级、记录级和数据元素级等五个层次。

文件级加密。把数据库文件作为一个整体,对整个数据库文件用加密算法和加密密钥加密,形成密文的形式来确保数据的机密性。

2.表级加密。表级加密的对象是整个表格,与文件级加密类似,表级加密中每个表格与其他不同的表密钥经过一定的加密算法运算后形成密文存储。

3.字段级加密。字段加密又称为域加密或属性级加密,一般而言属性的个数少于相应表格中的记录数量,按字段加密需要保存的密钥数相对较少。并且字段级加密是一种选择性加密,并不是对所有数据都加密,而是选择需要保密的字段加密,其余字段仍以明文形式存储。

4.记录级加密。所谓记录级加密是指在数据库中,每条记录在相应密钥的作用下,被加密成密文数据保存起来。在数据库加密方法中记录级加密技术是较为常见的加密方式。

四、数据库加密的实现方式

数据库加密的实现方式主要体现在在数据库系统中执行加密的部件所处的位置和层次。按照数据库系统与加密部件的不同关系,加密的实现方式可以大致分为两类:库内加密和库外加密。

1.库内加密。所谓库内加密是指在DBMS内核层中实现加密过程,加/解密过程是透明的,数据完成加解密工作之后才在库里进行存取操作。优点是在DBMS内完成加密功能,实现DBMS与加密功能的无缝衔接,因此加密功能强。

2.库外加密。所谓库外加密是指在DBMS之外进行加/解密操作,DBMS负责密文管理。一般在客户端实现加/解密操作过程。与库内加密相比,库外加密有其自身的特点:首先,加解密过程是在专门的加解密服务器中实现。其次,加密的数据与加密密钥分开存放。

库外加密也有其缺点:如数据库一旦加密某些功能可能会受限制,比如数据库的数据完整性受到破坏。

3.加密算法的选择。加密算法分为非对称加密和对称加密,对称式加密就是加密和解密使用同一个密钥,通常称之为“Session Key ”这种加密技术目前被广泛采用,如美国政府所采用的DES加密标准就是一种典型的“对称式”加密法,它的Session Key长度为56Bits。

非对称式加密就是加密和解密所使用的不是同一个密钥,通常有两个密钥,称为“公钥”和“私钥”,它们两个必需配对使用,否则不能打开加密文件。它的优越性就在这里,因为对称式的加密方法如果是在网络上传输加密文件就很难把密钥告诉对方,不管用什么方法都有可能被别窃听到。而非对称式的加密方法有两个密钥,且其中的“公钥”是可以公开的,也就不怕别人知道,收件人解密时只要用自己的私钥即可以,这样就很好地避免了密钥的传输安全性问题。

在加密实施过程中,无论选择什么加密算法都应当基于下述原则:

(1)算法的安全强度需满足数据保密性的要求;

(2)与明文数据相比,密文数据量(存储空间)经加密处理后不应过量增长;

第3篇:数据库系统范文

DBMS是数据库系统管理系统,数据库系统存储的信息及数据可以通过DMBS进行建立、使用及维护。通过这个数据库系统管理系统为用户带来了更好的服务体验及控制功能,实现了数据信息统一管理,并且DBMS有着:数据及信息的安全保护、数据和信息的故障诊断及恢复、数据的完整性检测、数据及信息访问及调取、查询权限控制等功能。DBMS是使数据库系统发挥功能的关键。

2信息管理

2.1概述

分析完数据库系统,接下来再针对信息管理进行分析,信息管理就是指利用先进信息技术手段,对信息和数据进行管理、规划、组织、控制,使信息数据被更好地使用,笼统的定义就是对信息流和信息源进行控制和管理。在信息管理过程中要进行相关信息收集、加工、输入、存储、输出、整理等工作。另一方面可以把信息管理(InformationManage-ment,IM信管)理解为:用户利用相关信息技术、经济政策、法律和人文方法及手段对信息流(包括非正规信息流和正规信息流)进行控制和管理,提高信息使用效率及实现信息目的一种活动。随着时代的进步科技的腾飞,计算机技术、通信技术、信息技术、互联网技术被广泛应用,使人类社会发生着转变,人类社会已经开始向信息时代进化,信息时代的到来使经济和文化都向全球模式发展,互联网信息资源开始被人们所依赖,人们每天都在靠互联网获取信息,并且信息的利益已经开始影响社会经济发展,信息已经被应用在企业运营及管理上,信息已经可以被理解成为一种非物质社会资源,和其他的物质资源一样都在人类生活和工作中起着重要作用,甚至信息的利用将改变社会资源的分配方式,改变目前人们认知中的传统生活方式及工作方式,把办公引向无纸化办公的现代办公模式。可以说了解信息、信息科学、信息技术就是了解财富,掌握信息就是提升企业竞争力的有利手段,所以企业领导者必须把信息管理重视起来,就像重视财务管理、人力资源管理一样,将信息管理工作放在企业管理工作第一线。

2.2信息管理在新时代下面临的挑战

2.2.1全球化加大信息量

经济的发展和社会的进步,直接影响着信息量,互联网时代的到来,使经济和文化向着全球化方向发展,导致国际市场进出易频繁,国家之间文化信息交流不断,政府及民间组织接触,都产生了大量的信息流,大大了提升了信息量,所以面对如此的的信息量,必须结合现代化先进的管理技术和计算机技术才能保证信息的利用目的得以实现,信息管理手段改革迫在眉睫。

2.2.2信息传播范围广泛、传播速度快

信息全球化不仅仅增加了信息量,更加大了信息的传播范围,可以说在信息全球化的新时代下,信息的传播范围是无限大的,并且由于现在云技术、计算机技术、通信技术的飞速发展,使信息的传播更是快上加快,信息的传播可以用光速来形容,所以对于信息处理及管理的要求就不得不提高。

2.2.3新时代对信息处理及管理提出更高要求

新时代的到来为信息处理和管理增加了难度,全球化的信息种类和形式多种多用,千变万化,并且很多数据都被相应加密和保护,所以信息管理工作需要提出更高。另一方面,信息的处理方法也就越来越复杂,传统的信息加工也在发生着变化,不再是简单的计算、归类、整理。与传统信息加工不同,新时代下的信息加工还要运用数理统计、运筹学和人工智能等方法对信息进行处理。

2.2.4信息管理领域扩大

信息全球化把整个世界都连接了起来,并且全球每个领域都开始应用信息化,全球文化经济大融合下,信息管理从科学角度已经涉及经济领域、教育领域、人文领域、互联网领域、餐饮领域、医学领域等等;技术层面里说信息管理涉及的技术有:自动化技术、互联网技术、存储技术、通信技术、计算机技术等等。可以说信息管理已经变成了一个既复杂又系统化的工程。面对新时代对信息管理的要求,信息管理面临着挑战,信息管理应结合先进技术并加大改革力度。

3数据库系统在信息管理中的作用

3.1存储信息

通过分析可以知道什么是数据库系统,形象地说数据库系统就是一个“仓库”,用来储蓄信息的仓库,由于信息全球化,加大了信息量,而庞大的信息量是需要管理和控制的,数据库系统则实现了对信息拷贝、存储管理。并且数据库系统不是单纯地对信息进行存储,在存储过程中还可将信息进行整理、分类,并且分给数据一个独有的号牌,形象地说,用户可以通过这个号牌来直接对该信息进行调取,避免了繁琐的查找工作,并且如此大的信息量下,如果没有数据库系统的帮助进行信息调取基本无法实现。这个仓库是智能化的,能够自动对信息进行存储优化,有效地解决了信息冗余问题,避免了重复存储。另一方面,利用这一系统,就算再大的信息量也不怕,因为数据库系统作为仓库是无限大的,可以实现无限存储,数据库作为一个智能的大仓库,可以起到信息存储作用。

3.2共享与整合信息

信息的传播和利用对于信息很重要,如果信息无法被利用,说明这是无用信息,所以信息的广泛应用也是信息管理应该做到的,数据库系统的共享功能,有效地提高了信息利用率,数据库系统向所有有权限的用户提供了共享的信息管理平台,实现了多用户的提取、查询、调用、利用,使信息管理效率得到了提高,使信息更具灵活性,满足了多用户需求,实现了信息利用目的,数据库系统的共享技术为信息管理带了新转机。另一方面,数据库系统的信息整合功能,也不同于以往的文件系统,相比文件系统,数据库系统更智能,这个智能的仓库通过信息的存储结构及属性,对信息进行整合和加工,使信息成为一个整体却又不失去独立性,既可实现单独调取又可进行整体调整,数据库系统的信息整合功能使信息管理更直观、更高效、更智能、更科学、更方面。数据库不仅仅实现了信息共享更实现了信息整合。

3.3加强信息质量及安全保护

数据库系统不是简单地把数据存储起来,数据库系统的安全性有效的保障了信息安全,防止了信息的损害及流失。数据库系统对信息进行安全保护时,会对数据和信息进行故障诊断及恢复和完整性检测,保障信息的完成,增加了信息可用性,提高了信息管理质量。另一方面,数据库系统有着加密功能,信息的安全对企业来说很重要,信息管理的主要基本目的就是信息安全,因为很多信息中都包含着商业机密等等,足以影响企业命运,而数据库系统的信息加密功能起到了信息保护的作用。

4结语

第4篇:数据库系统范文

关键词:硬件优化;SQL质量优化;操作系用参数设置

1. 引言

Oracle数据库是由SUN公司开发的一种具有高稳定性、高安全性、高兼容性的大型关系型数据库,目前在通信、医疗、教育等行业得到了广泛应用,已逐渐成为企业信息化建设的重要数据库平台。Oracle数据库在为各种应用提供服务的同时,也保存并管理了大量的业务数据。要使Oracle数据库适应应用需求,并能有效管理和利用由各业务系统产生积累的数据,对Oracle数据库优化显得尤为重要。

2. 影响数据库性能原因

Oracle 数据库系统性能是否能够充分发挥主要依赖于数据库服务器性能、数据库配置、网络环境、应用程序性能等几个主要方面。[1]

(1)数据库服务器性能

数据库服务器是系统的关键因素,它的性能决定了整个数据库系统的性能。数据库服务器的性能主要取决于服务器上运行的操作系统以及服务器的硬件配置情况,相同环境下服务器的性能越好,数据库的性能也就越好。

(2)数据库配置

数据库配置情况直接决定了数据库的性能优劣,是数据库性能优化的核心也是最主要的部分。主要包括共享池的设置、磁盘管理的设置、系统参数设置。

(3)网络环境

应用程序与数据库服务器之间需要通过网络来进行交互,网络的性能,特别是网络输入输出的带宽对整个系统性能有重要的影响。

(4)应用程序实现。

应用的交互方法对数据库性能也有很大的影响,特别是SQL语句的应用、数据库连接方式的选择、数据库端程序设计以及数据库对象的使用情况等,都影响系统的执行效率。本文主要讨论通过对数据库的硬件优化,操作系用参数的设置,用户SQL质量优化来提高数据库性能。[3]

3. 优化方式

(1)通过数据库硬件的优化

CPU:在任何机器中CPU的数据处理能力往往是衡量计算机性能的一个标志,而ORACLE是一个提供并行能力的数据库系统,在CPU方面的要求就比较高了,如果运行队列数目超过了CPU处理的数目,性能就会下降,通过适当增加CPU的数量可以解决队列阻塞的问题;

内存:衡量机器性能的另外一个指标,内存和我们在建数据库中的交换区进行数据的交换,读数据时,磁盘I/O必须等待物理I/O操作完成,在出现ORACLE的内存瓶颈时,我们第一个要考虑的是增加内存,I/O的响应时间是影响ORACLE性能的主要参数;

网络环境:NET*SQL负责数据在网络上的来往,大量的SQL会令网络速度变慢。10M的网卡和100的网卡就对NET*SQL有非常明显的影响,交换机等网络设备的性能对网络的影响也很明显。所以优化网络环境是提交SQL交互的一个重要手段;[4]

(2)操作系统参数设置

DBA可以通过对操作系统以下参数做调整来优化Oracle数据库

bufpages 对buffer空间不按静态分配,采用动态分配的方式

dbc_max_pct 加大最大动态buffer空间所占物理内存的百分比,以满足应用系统的读写命中率的需要

desfree 提高开始交换操作的最低空闲内存下限,保障系统的稳定性,防止出现不可预见的系统崩溃

fs_async 允许进行磁盘异步操作,提高CPU和磁盘的利用率

lotsfree 提高系统解除换页操作的空闲内存的上限值,保证应用程序有足够的可用内存空间。

maxssiz_64bit 加大最大堆栈段的大小(64位操作系统)

Minfree 提高停止交换操作的自由内存的上限

Shmem 允许进行内存共享,以提高内存的利用率

Shmmax 设置最大共享内存段的大小,完全满足目前的需要

Timeslice 由于系统的瓶颈主要反映在磁盘I/O上,因此降低时间片的大小,一方面可避免因磁盘I/O不畅造成CPU的等待,从而提高了CPU的综合利用率。另一方面减少了进程的阻塞量。

unlockable_mem 提高了不可锁内存的大小,使可用于换页和交换的内存空间扩大,用以满足系统对内存管理的要求。

(3)应用服务SQL质量的优化

我们可以调整应用程序的SQL质量来提高Oracle性能。在SQL语句中我们要尽量避免全表扫描语句的出现,全表扫描会导致大量的I/O,造成资源紧张。合理的建立和使用索引,当一个表的索引达到4个以上时,Oracle的性能可能依旧改善不了,因为OLTP系统每表超过5个索引即会降低性能,而且在一个SQL中,Oracle从不能使用超过5个索引;当我们用到GROUP BY和ORDER BY时,ORACLE就会自动对数据进行排序,当排序不能在我们给定的排序区完成时,Oracle就会在磁盘中进行排序,也就是我们讲的临时表空间中排序,过多的磁盘排序将会令free buffer waits 的值变高,而这个区间并不只是用于排序的。[2]因而select、update、delete 语句中的子查询应当有规律地查找少于20%的表行。如果一个语句查找的行数超过总行数的20%,它将不能通过使用索引获得性能上的提高。索引可能产生碎片,因为记录从表中删除时,相应也从表的索引中删除。表释放的空间可以再用,而索引释放的空间却不能再用频繁进行删除操作的被索引的表,应当阶段性地重建索引,以避免在索引中造成空间碎片。

4. 结束语

Oracle数据库系统性能优化与调整是一个复杂、繁琐的系统工程,贯穿于数据库系统开发的整个过程。数据库系统的调整,包括硬件、操作系统、系统应用语句等几个方面,这几个方面直接决定了整个数据库系统的性能,应该利用各种性能优化与调整工具进行反复的调整、比较以消除瓶颈,获得系统最优性能。

参考文献

[1] 腾永昌.Oracle9i 数据库管理员使用大全[M].北京:清华大学出版社

[2] 柳丹.Oracle PL/SQL面向对象特性Web应用研究[J].计算机技术与发展

第5篇:数据库系统范文

西南空管局气象中心数据库室作为全国民航气象数据传输的结点,主要业务工作为维护位于西南空管局气象中心的民航气象数据库系统(以下称为系统)的正常运行。这套系统在接收由北京下发的全球民航气象资料的同时向西南地区各个机场传输这些资料,同时还为西南地区民航行业用户提供各种数据服务。可见该系统在西南地区民航气象业务运行中的重要性,如何对这套系统做好维护工作则是数据库室日常业务工作的重点和难点。

2业务运行现状及需求

目前数据库室负责维护的系统为7*24小时不间断运行,故要求维护人员也需要7*24小时在岗值守,保障气象数据库业务的正常运行。鉴于以上情况,数据库室系统维护人员采取值班制度,进行24小时轮班。一般情况下当班人员的日常工作有:在每日早上、下午、晚上以及第二天凌晨对系统进行四次定时巡检;并对系统的任何突况要及时响应、上报和处理;还要负责气象中心其他信息设备的日常维护以及值班日记的填写和记录。目前数据库室的业务运行存在着一些不足,主要表现在:(1)由于系统的各种设备包括小型机、服务器、通信链路、通信设备、安全设备和终端设备。对其进行一次日常巡检看似简单,实则有较大的工作量,外加中途对其他事情的处理,一次日常巡检可能就会拖上较长时间,容易造成值班员不能准确把握各个设备的实际运行情况;(2)在值班员外出吃饭,晚上休息时间,突发事件往往是通过用户告知,故对突况的应对处理会花费更多时间;(3)日常巡检的结果为离散样本,具有间断性,不能准确描述系统在24小时内的详细运行状态;(4)对气象数据库室值班员而言,虽然维护好系统是自身的核心和重点工作,但是经常有无法避免的其他工作,不能将所有注意力都集中在系统的运行情况上。针对以上实际情况,数据库室的系统维护需求为:(1)对系统进行24小时不间断监控,如果有突发事件立即提醒值班员;(2)对系统的运行状况进行不间断记录,让值班员可以随时了解系统在某一个时刻的运行状况;(3)值班员需要随时掌握数据库系统的运行情况。

3维护整合方案设计

按照上述的数据库室业务运行现状以及需求分析,将针对数据库值班员的系统维护整合方案设计为三个部分:第一是实时监控;第二是实时监控的移动终端;第三是系统的历史和实时快照显示和分析。具体方案如图1显示。其中实时监控系统运行在PC终端上,定时自动通过远程登陆和其他方式访问系统中的各个设备,获取设备硬件状态、系统状态、业务状态和网络状态等。并将获得的信息按照预先定义的阈值进行排查,在固定显示设备上显示,并提醒值班员注意需要注意的信息。同时将显示的信息通过单向网闸推送到外网的移动终端服务器上,让运行在智能手机上的监控移动端调取相关信息,在移动显示设备上显示。并且监控系统定时获取一份对系统的详细信息,形成系统快照,并将快照信息存入监控服务器中的数据库中,供电子值班日记系统调用。电子值班日记系统可以调出任意时刻的系统快照供值班员查看分析。按照以上方案,电子监控系统能够24小时不间断的对系统进行监控,有突发事件能够立即让值班员了解相关情况;由于还具有移动监控终端,让值班员在外出吃饭和晚间休息时,也能随时了解到系统的运行情况。电子值班日记对系统快照的调取,能够让值班员随时了解任意时刻系统的运行情况,就能解决值班员在解决其他问题时不能及时对系统进行巡检的问题。并且值班员能够从存储的大量系统快照中进行数据挖掘,获取设备与设备之间的关联信息或者某项故障发生前的设备信息等有价值的信息。

4维护整合方案实现

为了易于维护和修改,实时监控端采用C#编程语言,在WINDOWS操作系统下的VS2008平台上开发,并需要FRAME⁃WORK4.0支持,程序独立运行。以SSH协议登录各个服务器,在后台自动采集各项数据,本地收到数据后进行分析处理,将错误信息向值班员报警并写入错误日志,将正常情况生成报表供值班员了解当前气象数据库系统的运行情况。实时监控端的界面如图2所示,提示界面如图3所示。移动监控端采用JAVA编程,在WINDOWS操作系统上的ANDROIDSTUDIO平台上开发。显示收到的正确和错误信息,并对错误信息进行提醒,因此值班员注意。移动监控端的界面如图4所示。电子值班日记中的系统快照显示部分采用C#语言,在WINDOWS操作系统下的VS2008平台上的.NET框架下开发,并需要FRAMEWORK4.0支持,需要电子值班日记的统一支持。显示界面如图5所示。

5维护整合方案运行效果

以上维护整合方案在数据库室已经经过一年多的持续运行,在此期间,经过使用人员的不断反馈和根据业务发展的需要,具体细节也在不断修改,使之满足各项业务的实际需求。在该方案的运行后,数据库室值班员能在第一时间主动发现系统在运行过程中发生的各项异常情况,且随之能够立即着手分析问题和解决问题,工作效率得到大幅提高,并对其他部门的业务影响降低到了最小。通过监控移动端的运行,值班员在吃饭和休息期间也能随时了解到数据库系统的运行情况,尤其是晚上休息期间。根据历史记录分析,在监控系统运行的这一年多以来,系统在晚上值班员休息期间累计发生异常情况共计19次,其中需要立即处理的异常情况13次,值班员在收到移动端的报警信息后,马上前往办公室解决相关异常。这13次异常的平均相应时间为7分钟,且这13次异常都为值班员主动发现,响应时间远小于以前的半小时左右。在异常得到处理后,也未对其他部门的业务造成任何影响。通过对系统快照的查看,让值班员能够随时了解系统的运行状况,提前分析出系统的未来发展趋势。根据统计数据,值班员有6次得出磁盘空间使用率将满的结论,提前清理磁盘空间;有11次得出ORACLE的SGA区使用率将满的结论,提前清理ORACLE连接和对SGA区进行处理。真正让系统达到了高效运行的目的。

6结论和展望

第6篇:数据库系统范文

关键词:dbms复制联邦数据库

1.引言

随着经济的发展,企业的规模越来越大,其积累的信息也越来越多。存在着各部门所处理的信息多数只对本部门有效,仅有少数信息需给其它某些部门共享的问题。这种信息的分布性和独立性要求对所处理的数据进行分类,使各部门既能独立地处理本部门大多数数据,也使部门间能协调处理跨部门的事务。在这种情况下,对整个企业建立一个完全的紧密耦合的分布式数据库是很困难的,也是没必要的,特别是大型企业,这样的数据库的效率往往是很低的。

为解决这个问题,我们采用以下策略:每个部门使用一套紧密耦合的数据库系统,而在存在跨部门事务处理的数据库系统间用一个协调器联起来。这样就组成了一个横跨整个企业,各部门高度自治的联邦数据库系统。

dm2是由华中理工大学数据库多媒体技术研究所研制的数据库管理系统。它采用客户/服务器模型,客户机与服务器,服务器与服务器均通过网络互连,通过消息相互通讯,组成一个紧密耦合的分布式数据库系统。它的工作流程如下:客户机登录到一台服务器上,这台服务器便成为它的服务器;它接收来自客户机的消息,然后根据全局数据字典决定是自己独立完成该操作,还是与其它服务器协作处理这条消息,处理完成之后,再由服务器将处理结果返回给客户机。

而数据字典,作为记录数据库所有元数据的系统表,它向以上过程中提供各类有用的信息,引导它们向正确的方向运行,起着“指南针”的作用。它分为局部数据字典和全局数据字典。其中,局部数据字典用于记录一个服务器站点中数据库的控制信息,如表的模式,视图的模式及各个数据区的的文件名等信息。全局数据字典用于记录分布式数据库系统中各个服务器站点上有关全局数据的控制信息,如服务器站点信息,各服务器站点的全局表名及表内码记录,各服务器站点上的全局数据视图名及视图内码记录,用户名及口令记录,用户权限记录等信息。各个局部数据字典可以各不相同,但为了保证在各个服务器上所看到的全局数据库是一致的,因此,全局数据字典必须一致。我们所关心的是全局数据字典中的基表控制块tv_ctrl_block,它的内容主要包括:全局基表总数,每个全局基表名和其对应的表内码,该基表所在的服务器站点的编号等信息。它的功能是将各个服务器站点号与存储在其上的表名及表内码联系起来。这样,服务器从客户消息中找到被处理的表名,然后通过查询基表控制块tv_ctrl_block,就能知道该表存在哪个服务器上,以便将相关消息发给该服务器。

由于dm2上各个服务器站点的全局字典完全相同,任何全局表的信息都会记入全局字典。若用它来构建一个企业的数据库系统,则大量只对企业某部门有用的信息将会充斥在各部门所有服务器的全局字典中,增加了冗余。而且,当对全局表进行ddl操作时,为了确保全局字典的一致性,须对所有服务器的全局字典进行加锁。dm2对全局字典的封锁方式是采用令牌环方式,即令牌绕虚环(非实环)传输,某个服务器想对全局字典进行操作,必须等令牌到达该服务器才可以执行。每个部门建立的全局表绝大多数只对本部门有用,当对这些表进行ddl操作时,却要对所有服务器的全局字典进行封锁,通过令牌来实现对全局字典的互斥访问。假如,两个部门都要分别对本部门的内部表进行ddl操作,这应该是可以并行处理的操作,现在却只能串行执行。而且,当服务器数目庞大时,每个服务器等待令牌的时间将会很长。这严重损害了数据库的效率。

为弥补以上不足,在dm2的改进版本dm3中增加了协调器,用以联接各个独立的dm3数据库子系统,并协调各子系统间的各种关系,使各子系统既能高度自治地工作,又能进行有效的信息共享。

2.体系结构

本系统可看作多个数据库子系统被协调器联起来的,高度自治的一个联邦数据库系统。其中,每个子系统独立处理本系统内部的事务,而子系统间的信息共享由复制技术提供,副本间的一致性由协调器协调处理,处理所需的信息在初始化时写入协调器的组间数据字典中。当对某子系统中的一份数据副本进行修改时,该子系统会将修改通知协调器,由协调器对该数据的其它副本进行修改,从而保证了所有副本的一致性。

由以上可知,子系统彼此并不直接接触,而是各自都与协调器直接相联,由协调器统一管理子系统间的通信。这样,当子系统对副本进行修改时,不必关心相应的子系统处于何种状态,也不必等待回应消息,以及异常处理,所有这些都由协调器进行管理。因此,既提高了系统运行的效率,也保证了子系统的独立性。其体系结构如下图所示。

协调器主要有三大功能,首先,它对协调器和服务器进行初始化,并将有关信息存入组间字典;其次,它管理不同子系统间的通信,维护副本的一致性;最后,它在子系统出现崩溃时,进行异常管理及恢复工作。

dm3多数据库系统体系结构

3.主要策略

多个dm3系统间的信息共享是通过副本实现的,副本的一致性是由协调器来维持的,是一种弱一致性。通常,多数据库系统间的一致性是通过协调器周期性地访问服务器的日志来完成的。由于副本的更新带有随机性,因此,若采用这种方法,可能数据被修改多次,但其相对应的副本仍未被修改,这样就损害了数据的一致性;也可能数据并未被修改,但协调器已多次访问了服务器的日志了,这样就降低了系统的效率。

所以,本系统采用的方法是当数据被修改时,由服务器通知协调器有关信息,再由协调器通知相关系统,修改相关数据。这样,数据的修改及时(仍然是弱一致性),而协调器也不会在数据未被修改的情况下访问服务器,提高了准确性。

为了使协调器正常工作,我们对底层数据库管理系统dm2进行了修改。在基表控制块tv_ctrl_block中增加一项isreplication。建表时,该项初始化为false;当为该表建立一个副本时,该项赋值为true。具体算法如下。

3.1初始化算法。

协调器:

从用户或应用程序接收待连接的两个系统中的服务器名,需复制的表名;

分别登录到两个系统的服务器上;

向存有待复制表的服务器发预复制消息;

等待服务器消息;

若失败,发一条失败的消息给服务器和用户或应用程序,转11);

若成功,从消息中取出待复制表的有关信息,根据这些信息,发一条建表消息给另一个系统的服务器;

等待服务器消息;

若失败,发一条失败的消息给服务器和用户或应用程序,转11);

若成功,调数据转移程序,进行数据复制;

将有关信息写入组间字典。

退出。

服务器:

当服务器收到预复制消息后,将基表控制块tv_ctrl_block中的isreplication赋为true。同时,取出待复制表的有关信息,组成应答消息发给协调器。

当服务器收到失败的消息后,将基表控制块tv_ctrl_block中的isreplication赋为false。

3.2维护算法。

协调器:

从组间字典读出相关信息,根据这些信息,登录到相应系统上;

等待消息;

从某系统的服务器上收到一条修改消息后,通过查找组间字典,确定该消息的目的地,然后将它转发过去;

若失败,定时重发;

转2);

服务器:

1)等待消息;

2)当收到某客户或应用程序的消息后,检查它是否是修改数据的操作(如delete,update或insert等);

若不是,转7);

若是,检查基表控制块tv_ctrl_block中的isreplication是否为true;

若不是,转7);

若是,向协调器发修改消息;

继续执行服务器程序的其它部分。

3.3恢复算法。

若协调器所联接的系统中有一个跨掉了,则对副本的修改无法及时地反映到跨掉的系统中来。这时,需要恢复算法来进行处理。

协调器:

当协调器发现有一个系统已经崩溃后,采取以下步骤。

将与该系统相关的变量open赋值为false;

打开记时器;

等待消息;

若收到的消息是其它系统发出的修改崩溃了的系统上的副本的命令,则依次将这些消息存储起来,转3);

若收到的消息是记时器发出的时间到的消息,则向崩溃的系统发登录命令;

若登录成功,将open的值改为true;

将存储的消息依次发送过去,转9);

若登录失败,转3);

退出。

4.结论

我们曾在三个dm3数据库系统上,用两个协调器进行联接。结果,运行情况良好,各副本最终都能保证一致,且各副本间存在差异的时间间隔很短。另外,在出现异常的情况下,协调器也能正常工作。

主要参考文献

1.周龙骧等,分布式数据库管理系统实现技术,科学出版社,1998。

第7篇:数据库系统范文

关键词 分布式数据库系统;安全策略

中图分类号:TP311 文献标识码:A 文章编号:1671-7597(2013)17-0040-01

1 分布式管理信息系统的安全问题

分布式管理系统所面临的安全问题同普通管理信息系统相仿,主要包括:物理安全、数据库安全、管理系统的安全等。接下来对分布式环境和不可信环境下的安全问题进行探讨。

1.1 中心系统安全问题

一般意义上,子系统数据都依附于中心系统基础数据。根据近年来的实践,面临的安全问题主要有:第三方企图窃取数据包,并以此为蓝本创建新型数据库或间接获得子系统的相关安装程序,即将自己伪装成接收方;或者对数据包内部的重要数据信息进行恶意修改,导致接收方读取困难。在分发业务数据时面临着类似的安全问题,子系统向中心系统提供业务数据。在这个数据交换过程中,有可能出现下列问题:数据包来源不明;数据包发出者不承认自身操作;传输过程中有人恶意介入,修改数据包敏感信息。

1.2 子系统安全问题

数据包来源伪造、数据包被植入恶意程序常常威胁到子系统的安全运行。不可信赖的子系统运行环境对分布式管理信息系统造成的安全威胁最大。子系统网络环境风险高、操作系统防御能力低,黑客很容易破解防线,进行木马程序植入、数据窃取活动。这其中,如果使用子系统的人员不可信任,将是一大潜在威胁。他们很容易利用自己的权限越过子系统防火墙,窃取重要信息。例如,目前注册会计师考试一般采用计算机答题,考场相关人员可能在开考前事先从数据库中盗取试题答案,或者直接修改成绩,一般只有权限较高的考场数据库管理员才拥有数据库的用户密码。子系统处在不可信环境中时,系统安全无法通过操作系统和数据系统安保措施获得保证,这时系统本身的安全保护能力成为保护系统安全的唯一手段。

2 分布式数据库安全策略

2.1 身份验证

为了保障数据库的安全、防止数据库被不法分子攻击,在客户访问数据库时有必要对客户的身份进行识别,而且客户利用数据库进行登录、录入、修改、传输等操作时都要进行不同程度的身份验证。以Kerberos协议为例,它在工作的过程中,每个服务站只有从密钥管理中心得到即时通信密钥,才能获得与目标站点之间的通信权限。密钥管理中心数据处理任务繁重,在进行复杂密钥大规模分发、调配时,很容易引起系统崩溃,严重降低系统性能,并且系统内部必须有一个管理中心,它能够为所有站点信任,又要具有很好的稳定性。因为应用条件较为苛刻,该协议应用场合受限较大。

实际中,为了提高工作效率,尽量简化密钥分发,人们开始应用双向身份验证协议来进行身份验证。该技术的原理是:每个站点都具有一个公钥,站点内部则保存各自的私钥,它通过一种特殊的渠道将公钥公布在其它系统上。这种新的身份验证协议的出现,使得任意两个站点进行双向身份验证成为可能。

2.2 通信保密

数据在传输的过程中,客户与服务器之间必须完成一系列的身份验证才能实现数据的传输。在数据传输时,为了防止传输的数据被人窃听或者数据重复被发送导致系统繁忙,发送方和接收方需要一条专属接收渠道,完成对数据包的加密、传输、接收、解密等工作。分布式数据系统容量较大,如果采用的加密算法非常复杂,会导致系统性能的下降。在实际应用中,常用的做法是在数据传输的过程中添加加密卡、配备安全路由器,并在通信软件中安装一些安全软件。

2.3 访问控制

在保障分布式数据库系统安全的过程中,有时需要控制系统用户的访问,具体的操作方式有自主访问授权控制和强制访问授权控制这两种。前一种控制方式由管理员直接设立一个控制访问的表,在表中定义了用户访问的权限,规定用户的哪些操作是被允许的,哪些操作是严禁进行的。后者给系统用户和数据对象设定分明的安全等级,用户的操作是否被禁止由用户操作项目的安全等级来决定。在某些数据库管理系统中,系统为了防止用户的访问超越自己的权限而禁止用户直接访问数据库。用户如果需要访问数据库,必须填写访问申请,当用户的访问申请经过相关的审核后,再由系统为用户指定一个代替用户完成相应的用户操作,并将查询结果反馈给用户。

数据对象的综合性越高,为数据访问设定的权限就越严格。数据库的安全性得到更大的保障的同时也给数据库系统的管理造成了影响,尤其是分布式数据库系统的管理。由于它的数据量和用户量都比较大,在对用户的访问进行控制的过程中,系统要处理的数据非常多。在实际应用的过程中,由于很多用户的权限差别都不是很大,系统可以按照用户的权限来定义角色,一个角色能定义不同的用户,一个用户也可以同时拥有几个不同的角色。这样不仅不会使对系统的运行造成影响,而且大大减轻了系统的压力。

2.4 库文加密

随着信息技术的发展,黑客也越来越多,许多黑客非常擅长利用数据库系统的安全漏洞,想方设法绕过数据库的安全网,窃取数据库的数据。为了防止黑客的入侵,对库文进行加密处理是比较常用的办法。具体的操作方法是在分布式数据库外层设置一个具备加密解密能力的加密层。库文加密系统应具有很好的灵活性,能根据不同的操作系统的不同要求,提供不同等级的安全级别、不同类型的加密算法给用户进行自主选择。除此之外,系统应该具备随时对加密数据进行调整的能力,平衡数据库的访问速度和安全性。

2.5 密码体制和密码管理

以上提到的几种加强分布式数据库系统安全的措施中都利用了加密和解密算法。系统在应用算法时应该根据它们算法不同的功能,在操作中按要求选择适合的算法。在分布式数据库中用到的公钥和密钥的管理也要规范,以确保公钥和密钥只能由指定的人知晓。

2.6 防范恶意代码入侵

因为程序恶意代码而产生的安全问题层出不穷。除了以上提到的一些措施外,还应注意加强对程序编译人员的教育和管理,加强他们的守法意识。使用单位要加强软件测试和代码检查工作;做好工作人员的技术培训工作,防患于未然。

参考文献

[1]展巍,朱端.基于物联网的分布式实时数据库研究[J].电子元器件应用,2011(03).

[2]左朝树,庞飞,易涛.分布式一体化安全数据库系统体系结构[J].通信技术,2011(05).

第8篇:数据库系统范文

[关键词]VBS脚本 ACCESS数据库 VB

中图分类号:G250.74 文献标识码:A 文章编号:1009-914X(2015)05-0363-01

一、引言

在钢铁工业发展的今天,要提高钢铁企业核心竞争力和可持续发展力,必须以信息化带动工业化,但由于管理信息层和过程控制层所服务的对象和实现的功能不同,因此就在管理信息层和过程控制层出现断层,管理信息层很难直接得到第一手的生产数据,必然会产生诸多问题:

1、人工抄送报表的方式不仅繁琐而且容易出错,这就是管理层不能及时准确地了解现场,制定的生产策略也就产生了滞后性,不利于生产的稳定高效。

2、对于重要考核参数的记录与计算采用手工方式实现,不可避免人为因素造成的数据偏差,不能完全客观地反映生产状况,从而为企业造成损失。

3、在进行事故分析、改进工艺、优化生产时,传统模式不便于数据的分析和查询。

现在的高炉冶炼生产过程实现了全部采用PLC自动化控制系统,能够对生产的实时情况进行监控。为了更好的发掘炉子的潜能,提高高炉冶炼时更高的利用系数,就需要生产的管理人员、操控人员精准的掌握原料的消耗情况统计,进行吨铁成本核算和生产指标考核,这就要求对高炉各个生产区域进行设备运行的状态掌握,还要对设备数据进行采集,并对采集到的大量数据进行存档,方便指导以后的生产实践并预测未来的发展趋势。所以,就需要开发二级数据库系统,实现生产过程的数据入库查询。为ERP系统的L3级和L4级提供有利的数据保障。

二、系统设计

为了解决以上各种问题,只有开发基于实时数据库系统的生产系统,才能从根本上解决问题。现在国内大多数从事一级自动化程序编程调试人员作不到把生产数据存储到数据库,需要专门编程二级的程序开发人员,而且随着现在生产管理的科学化、信息化。所以,我们极为迫切的开发能够存储数据的软件平台,跟上自动化控制领域前沿的自主数据库系统。见图1。

1、通过以太网的TCP/IP协议与一级PLC系统进行通讯,通过一级PLC系统的监控软件把高炉矿槽上料的消耗数据、高炉炉顶布料设备的运行数据存储到Access数据库中。利用VB编程开发软件编制操控界面,其中矿槽称斗重量、炉顶布料方式等不但可以在画面中显示,还将数据保存到数据库并生成报表,便于较长时间连续地监控、掌握实际生产过程,能够保证生产的顺利进行。

2、后台的数据库采用的Access数据库,前台的应用程序采用Microsoft Visual Basic 6.0进行编制。强大的通讯处理是组态软件最关键的部分,其工作性能的好坏直接关系到整个系统的优劣,精心设计了一套性能优越的通讯系统,在速度、易用、移植等方面独具特色。

三、系统功能和关键技术

1、如何实现数据服务器与现场控制器系统之间的联网数据通讯,即数据库实现L1和L2之间的自动信息交换。使用功能强大的数据库连接程序,通过时间或事件,把现场的实时数据存储到您指定的数据库中。WINCC上位机软件通过时间和事件来触发数据库连接,可以定时与数据库进行连接,也可以通过某个现场的事件来触发,能达到毫秒级的数据采集速度,具有无与伦比的性能。建立access表(图2)。

2、Microsoft Visual Basic 6.0软件将ODBC数据源中的数据库对应于运行数据库中的各种变量,不需要更多的数据库语言,就可以通过脚本操纵运行数据库,完成对Access数据库记录的读取、修改。操作极其简便,只需几分钟便可完成连接组态,利用数据库并配合DATA、MSFlexGrid控件,实现强大报表功能(图3);

3、报表制作由三步完成。

与数据库连接(进行报表数据库和运行数据库的对应)

进行报表格式设计

报表内容查询、打印(使用画面中的报表控件)

用户数据库查询按钮-方便用户查询ODBC数据源中数据,报表制作程序,制作各种样式的报表格式;利用系统内置的报表组件打印各种类型的报表(班报表、日报表、周报表、月报表、季度报表、年度报表、自由报表),同时还支持预览和条件过滤输出.

4、数据管理功能。

为方便用户进行数据处理,VB提供了强大的数据管理功能。L2系统根据高炉生产参数的短期、中期、以及长期的参数平均值的变化制定了指导高炉操作的多个系列专家推理机规则。

四、系统运行后效果

山西美锦实现全厂统一管理和调度,很快成为管理人员的得力助手,会收到良好效果,主要表现在以下几个方面:

1、提高生产管理效率。管理人员在办公室就可以通过IE浏览器了解全厂各个工艺数据的实时变化,为生产决策提供第一手资料,生产节奏会明显加快。

2、提高生产调度的快速性和准确性。为生产调度人员以最直接的方式提供生产实时数据,弥补了以往打电话速度慢、失误多的缺点。

3、实现数据整合和共享。数据从各个子系统直接采集进入系统,实现炼铁平台的数据共享和整合,为数据的上行进行整合,并留有端口。

4、 确保生产稳定性。有效避免很多安全事故,减少非计划性休风次数,很大程度上保证生产的稳定性、安全性并延长生产周期。

5、 生产工艺水平提高。利用该系统为辅助工具,对原有设备管理及工艺进行差异性分析,及时进行改进。反过来利用管理系统中的需求对系统进行不断升级,从而形成企业管理和监控系统之间相互促进的良性循环。

五、结束语

炼铁生产数据库系统的成功应用,使炼铁平台生产数据得以共享,将办公室和工业现场连接起来,填补了管理调度层与过程控制系统之间的空白,实现了整个生产平台的实时监控、数据存储、处理、异常分析、远程管理调度,提高了炼铁劳动生产效率和管理及操作水平、减少炼铁生产事故,在节焦增铁和降低成本上具有显著的经济效益和社会效益。

参考文献

第9篇:数据库系统范文

一、自主访问控制模型

自主访问控制模型是基于用户身份的访问和控制。在自主型访问安全模型中,每个用户都要被分配一定的权限,例如用户或者是被允许读取,或是被允许写入。也就是说,在自主型访问安全模型中,对资源对象的“拥有”是用户最核心的权限属性。当某个用户要求访问某个数据库资源时,系统检查该用户对该资源的所有权限,或衍生出来的访问权限,如果通过,则允许该访问在许可的方式下进行,如果不能通过,则拒绝继续访问系统。在自主型安全模型中,拥有某种权限的用户可以自主地将其所拥有的权限传授给其他任意在系统中登录的用户,它是该模型存在的致命缺点。自主访问安全模型的典型代表是存取矩阵。DAC模型可对用户提供灵活和易行的数据访问方式,但安全性相对较低。在该模型中,尽管访问控制只在授权后才能得到,但攻击者也很容易越过访问的授权限制。如当一个用户有权对某数据进行读操作时,它可以把这个权利传递给无权读此数据的人,而数据的所有者并不知道这一切。一旦某个信息为用户所获得,那么该模型策略对信息的使用是不加任何限制的。也就是说,在该模型中,尽管有自主型控制,对于非授权的人来说,非法读取数据是可能的,这样一来,系统就很容易受到类似特洛伊木马的攻击。特洛伊木马可以改变系统的保护状态,使系统安全受到威胁。

二、改造数据库实现数据库安全

(一)采用对数据库驱动程序进行安全扩展的方法

在数据库存取接口上,通过扩展标准的SQL语句,透明地实现对数据库中敏感信息的加密和完整性保护,对关系数据库的操作可以采用SQLDDL和SQLDML语言,通过ODBC、.IDBC、BDE等数据库驱动程序实现对数据库中表格、记录或字段的存取控制;并对用户操作进行日志记录和审计,从内部增强关系数据库的存储和存取安全。这种方式具有通用性,并且不会对数据库系统的性能造成大的影响。该模型在常规数据库驱动程序中增加密钥管理、审计日志管理、完整性验证和数据加解密等安全扩展模块,通过附加的安全属性如数据库存储加密密钥和审计日志等与安全相关的信息来加强数据库的安全;同时,增加数据库主密钥设置、更新和加密算法设置等安全属性来提高SQL语句的安全性。

(二)采用基于视图的数据库安全模型

SQLServer通用安全模型的特点是将权限赋予表,用户要查询数据、更改数据或对数据库进行其它操作时,直接存取表,用户只要有对表的Select权限,就可以检索表中所有的信息。但是,现实世界中大多数的应用都要求对信息本身划分为不同的保密级别,如军队中对信息的分类就不能简单地划分为公开和保密2类,而是需要更加细致的分类,可能对同一记录内的不同字段都要划分为不同的保密级别。甚至同一字段的不同值之间都要求划分为不同的保密级别。多级保密系统中,对不同数据项赋予不同的保密级别。然后根据数据项的密级,给存取本数据项的操作赋予不同的级别。SQLServer通用安全模式显然不能将不同的字段和同一字段的不同值分为不同的保密级别。这是因为用户直接存取存储数据的数据库表。采用基于视图的数据库安全模型。这个问题就可迎刃而解。

利用视图限制对表的存取和操作:通过限制表中的某些列来保护数据;限制表中的某些行来保护数据。视图和权限创建一个视图后,必须给视图授予对象权限,用户才能存取和操作视图中的数据,不必给作为视图表的基础表授予权限。