zoukankan      html  css  js  c++  java
  • 数据库学习之(5)详解DBMS

    DBMS是数据库系统的核心软件,数据库的一切操作都是通过DBMS进行的。用户对数据库进行操作,是由DBMS把操作从应用程序带到外模式、模式,再导向内模式,进而操作存储器中的数据的。DBMS的主要目的是提供一个可以方便的、有效的存取数据库信息的环境。

      一、DBMS具有的功能

    (1)数据库定义功能

      DBMS提供数据描述语言(DDL),定义外模式、模式、内模式及相互间映射关系,定义数据的完整性、安全控制等约束。

    (2)数据库操纵功能

      DBMS提供数据操纵语言(DML)来实现对数据库中数据的操作。基本的数据操作有查询、插入、删除和修改。该功能是面向用户的主要操作。

    (3)数据库保护功能

      DBMS提供了数据恢复、数据并发控制、数据安全性控制和数据完整性控制等保护工具。

      数据恢复功能是指在数据库被破坏或数据不正确时,系统有能力把数据库恢复到正确状态。

      数据并发控制在多个用户对同一数据的操作可能会破坏数据库中的数据,或者用户读了不正确的数据时,能防止错误发生,正确处理好多用户、多任务环境下的并发操作。

      数据安全性控制能防止未经授权的用户蓄谋或无意地存取或修改数据库中的数据,以免造成数据的修改、泄密或破坏。

      数据完整性控制可以保证数据及语义的正确性和有效性,防止任何对数据造成错误的操作。

    (4)数据库存储管理

      数据库存储管理的主要任务是把各种数据操纵语言转换成底层的文件系统命令,起到数据的存储、检索和更新的作用,简化和促进对数据的访问。

    (5)数据库维护功能

      数据库维护功能由数据装载程序、备份程序、文件重组程序和性能监控程序等实用程序实现,由数据库管理员使用。

      数据装载程序是把正文文件或顺序文件中的数据转换成数据库中的格式,并装入数据库中的软件。

      备份程序是把磁盘中的数据库完整地存储到磁带上,产生备份的软件。在系统发生灾难性故障后,可以把备份中的数据库重新装入其他磁盘,供用户使用。

      文件重组程序是把数据库中的文件重新组织成其他不同形式的文件以改善系统的性能的软件。

      性能监控程序用于监控用户使用数据库的方式是否合乎要求,收集数据库运行的统计数据。数据库管理员根据这些统计数据做出判断,决定采取何种重组方式来改善数据库运行的性能。

    (6)数据字典

      数据字典是对实际数据库各级模式所做的解释库,即对数据库的描述库。数据库的操作都要通过访问数据字典才能实现。通常的数据字典中还存放数据库运行时的统计信息,如记录个数、访问信息等。

    二、数据库管理系统的组成

    数据库管理系统由查询处理器和存储管理器两大部分组成。

    (1)查询处理器由DDL编译器、DML编译器、嵌入式DML的预编译器和查询运行核心程序四部分组成。

    (2)存储管理器由授权和完整性管理器、事务管理器、文件管理器和缓冲区管理器四部分组成。

     三、DBMS的工作过程

     (1)应用程序通过相应的数据操纵语言向DBMS发出数据操作请求,并提交诸如记录类姓名和要读取的记录的关键字值等必要的参数,控制转入DBMS.

     (2)DBMS对应用程序中的数据操作进行分析,通过子模式/模式的映像、模式/存储模式的映像关系,转换成复杂的底层代码。同时,还要对应用程序及其所要进行的操作进行合法性和有效性检查,若检查不通过,则拒绝执行该操作,并返回相应的出错信息;否则就是合法操作,进入下一步。

     (3)DBMS向操作系统发出相应请求,通过操作系统实现对数据库的操作。

     (4)DBMS接收操作系统对数据库操作中返回的结果。

     (5)DBMS对操作结果进行处理,转化为应用程序所需要的外部记录,并将其送入到应用程序的工作区,同时,也向应用程序送回本次执行的状态信息,记录工作日志,启动应用程序继续执行。

     四、DBMS的体系结构

    (1)DBMS基本功能

    (2)客户端与服务器的通信机制

    (3)模块协作

    (4)RDBMS(关系数据库管理系统)总体架构

    参考:https://blog.csdn.net/bluespeedinfo/article/details/79812053

    https://blog.csdn.net/bluespeedinfo/article/details/79884458

    https://blog.csdn.net/spfLinux/article/details/74905154

  • 相关阅读:
    7-3色彩平衡
    Flex 布局
    JS获取当前周
    虚树学习笔记
    当然,perl等脚本服务器是一般默认安装了,你入侵了一台主机,总不能先装配 Java 环境然后再开干吧?
    还有这种书,程序开发心理学(豆瓣)
    Codeforces Round #143 (Div. 2)
    Codeforces Round #142 (Div. 2)
    Codeforces Round #141 (Div. 2)
    2018-2019-1 20189221 书籍速读 第 1 周
  • 原文地址:https://www.cnblogs.com/Harriett-Lin/p/10826593.html
Copyright © 2011-2022 走看看