首页 > 数据库 >数据库设计_6.数据库实施和运行维护

数据库设计_6.数据库实施和运行维护

时间:2024-03-28 22:01:51浏览次数:26  
标签:DBMS 数据库 用户 设计 维护 数据 运行 加载

1.数据库实施

        根据逻辑和物理设计的结果,在计算机上建立起实际的数据库结构,数据加载(或称装入),进行试运行和评价的过程,叫作数据库的实施(或称实现)

1.1建立实际的数据库结构

        用DBMS提供的数据定义语言(DDL)编写描述逻辑设计和物理设计结果的程序(一般称为数据库脚本程序),经计算机编译处理和执行后,就生成了实际的数据库结构。所用DBMS的产品不同,描述数据库结构的方式也不同。有的DBMS提供数据定义语言,有的提供数据库结构的图形化定义方式,有的两种方法都提供。在定义数据库结构是,应包含以下内容。

        (1)数据库模式与子模式,以及数据库空间等的描述。例如,在Oracle系统中,数据库逻辑结果的描述包括表空间(Tablespace)、段(Segment)、范围(Extend)和数据库(Data block) 。DBA或设计人员通过对数据库空间的管理和分配,可以控制数据库中数据的磁盘分配,将确定的空间份额分配给数据库用户,能够控制数据的可用性,将数据存储在多个设备上,以此提高数据库性能等。

        (2)数据库完整性描述。所谓数据的完整性,是指数据的有效性、正确性和一致性。在数据库设计时,如果没有一定的措施确保数据库中数据的完整性,就无法从数据库中获得可信的数据。数据的完整性设计,应该贯穿在数据库设计的全过程中。例如,在数据需求分析阶段,收集数据信息时,应该向有关用户调查该数据的有效值范围。在模式与子模式中,可以用DBMS提供的DDL语句描述数据的完整性。

        (3)数据库安全性描述。数据安全性设计同数据完整性设计一样,也应在数据库设计的各个阶段加以考虑。在进行需求分析时,分析人员除了收集信息及数据间的联系之外,还必须收集关于数据的安全性说明。在设计数据库逻辑结构时,对于保密级别高的数据,可以单独进行设计。子模式是实现安全性要求的一个重要手段,可以为不同的应用设计不同的子模式。在数据操纵上,系统可以对用户的数据操纵进行两方面的控制:一是给合法用户授权,目前主要有身份验证和口令识别;二是给合法用户不同的存取权限。

        (4)数据库物理存储参数描述。物理存储参数因DBMS的不同而不同。一般可设置的参数包括块大小、页面大小(字节数或块数)、数据库的页面数、缓冲区个数、缓冲区大小和用户数等。

1.2数据加载

        数据库应用程序的设计应该与数据库设计同时进行。一般地,应用程序的设计应该包括数据库加载程序的设计。在数据加载前,必须对数据进行整理。由于用户缺乏计算机应用背景知识,常常不了解数据的准确性对数据库系统正常运行的重要性,因而未对提供的数据作严格的检查。所以,数据加载前要建立严格的数据登录、录入和校验规范,设计完善的数据校验与校正程序,排除不合格数据。 

        数据加载分为手工录入和使用数据转换工具两种。现有的DBMS都提供了DBMS之间数据转换的工具。如果用户原来就使用数据库系统,可以利用新系统的数据转换工具。

1.3数据库试运行和评价 

         当加载了部分必须的数据和应用程序后,就可以开始对数据库系统进行联合调试,称为数据库的试运行。一般将数据库的试运行和评价结合起来的目的是测试应用程序的功能;测试数据库的运行效率是否达到设计目标,是否为用户所容忍。测试的目的是为了 发现问题,而不是为了说明能达到哪些功能。所以,测试中一定要有非设计人员的参与。

        用户数据可能是以前旧系统的数据,并不完全满足新系统的数据要求,需要进行处理,同时还要做好新系统的数据库的转储和恢复工作,以免发生故障时丢失数据。

2.数据库运行维护

        数据库一旦投入运行,就标志着数据库维护工作的开始。数据库维护工作的主要内容包括对数据库性能的监测和改善、故障恢复、数据库的重组和重构。在数据库运行阶段,对数据库的维护主要由DBA完成。 

2.1对数据库性能的监测和改善

         性能可以用处理一个事务的I/O量、CPU时间和系统响应时间来度量。由于数据库应用环境、物理存储环境的变化,特别是用户数和数据量的不断增加,数据库系统的运行性能会发生变化。某些数据库结构(如数据也和索引)经过一段时间的使用以后,可能会被破坏。所以,DBA必须利用系统提供的性能监控和分析工具,经常对数据库的运行、存储空间及响应时间进行分析,结合用户的反映确定改进措施。目前的DBMS都提供一些系统监控或分析工具。例如,在SQLServer中使用SQL Server Profiler组件、Transition-SQL工具和Query Analyzer组件等可进行系统监测和分析。

2.2数据库的备份及故障恢复

         数据库是企业的一种资源,所以在数据库设计阶段,DBA应根据应用要求制定不同的备份方案,保证一旦发生故障能很快地将数据库恢复到某种一致性状态,尽量减少损失。数据库的备份及故障恢复方案,一般基于DBMS提供的恢复手段。

2.3数据库重组和重构 

         数据库运行一段时间后,由于记录的增、删、改,数据库物理存储碎片记录链过多,影响数据库的存取效率。这时,需要对数据库进行重组和部分重构。数据库的重组是指在不改变数据库逻辑和物理结构的情况下,去除数据库存储文件中的废弃空间以及碎片空间中的指针链,使数据库记录在物理上紧连。

        数据库系统运行过程中,会因为一些原因而对数据库的结构做修改,称为数据库重构。重构包括表结构的修改和视图的修改。表结构的修改有数据列增删和修改、约束的修改、表的分解与合并。

 

标签:DBMS,数据库,用户,设计,维护,数据,运行,加载
From: https://blog.csdn.net/huaqianzkh/article/details/137122793

相关文章

  • 数据库设计_5.物理设计
        一般来说,物理设计的主要工作步骤包括确定数据分布、存储结构和访问方式。1.确定数据分布     从企业计算机应用环境出发,需要确定数据是集中管理还是分布式管理,目前企业内部网及因特网的应用越来越广泛,数据大都采用分布式管理。对于数据如何分布需要从以......
  • Python机器学习从入门到高级:导入数据(包含数据库连接)
    python数据科学系列https://developer.aliyun.com/article/1174199 ......
  • kafka维护
    1,检测参考:https://kafka-python.readthedocs.io/en/master/apidoc/KafkaClient.htmlfromkafka.adminimportKafkaAdminClient,NewTopicfromkafkaimportKafkaProducerfromkafkaimportKafkaConsumerfromkafkaimportKafkaClientimporttime#配置Kafka集群信息......
  • Qt5.14.2 无所不能的Qt数据库操作之旅
    身为程序员,数据库无疑是我们最为亲密无间的好伙伴。但如何高效地操作数据库,却一直是一个令人颇感棘手的难题。不过,没关系,我们的Qt大神们早已为此开辟出一条华丽绝伦的大道,就让我带你一览他们的绝世数据库操作艺术吧!一、查询驱动,方能驱车万里在对数据库开展操作之前,我......
  • ansible维护
     参考:https://docs.ansible.com/ansible/latest/collections/ansible/builtin/unarchive_module.html1,检测网络-hosts:allgather_facts:nobecome:yestasks:-name:Installtraceroutepackage:name:"{{item}}"state:present......
  • 在window10或window11 上运行带有签名的.msix 文件。
    1)、单击有签名的.msix文件》属性》    ok,这样就可以成功安装了 ......
  • Mysql(数据库)知识详解【4】~{索引,主键优化}
    记住满元素中间元素向上裂变就行了因为如果是5个节点,比第一个节点小的算一个指针,逼最后一个节点大的算一个指针,里面是4个指针所有元素都会出现在叶子节点并且诸多叶子节点通过指针构造一张单项链表看我:除了最下面节点,上面的节点(叶子空间最大16k)全部放满内存......
  • COMP9311 24T1 数据库处理
    COMP931124T1:项目1截止时间:3月29日星期五16:59:59(悉尼时间)1.目的这个项目旨在让你在阅读和理解一个适度大的关系模式(MyMyUNSW)。实现SQL查询和视图以满足信息请求。实现PL/pgSQL函数以帮助满足信息请求。目标是在MyMySUNSW数据库上构建一些有用的数据访问操作。数据可能包......
  • 基于数据库实现分布式锁
    基于数据库实现分布式锁实现1.创建表CREATETABLE`methodLock`(`id`int(11)NOTNULLAUTO_INCREMENTCOMMENT'主键',`method_name`varchar(64)NOTNULLDEFAULT''COMMENT'锁定的方法名',`desc`varchar(1024)NOTNULLDEFAULT'备注信......
  • Oracle查询数据库万能SQL
    Oracle数据库表简要说明数据库表描述USER开头的只能查询自身用户的表DBA开头的最高权限,只能用sys、system用户才能查询CDB开头的ContainerDatabase数据库容器,ORACLE12版本引入ALL开头的sys、system、普通用户都能查查询数据库表--查询数据......