参考: https://blog.csdn.net/IT_ITO/article/details/80035403
参考:学堂在线战德臣老师的数据库课程
数据库系统
数据库(DB):Database
数据库管理系统(DBMS):Database Management System
数据库应用(DBAP):DataBase Application
数据库管理员(DBA):DataBase Administrator
计算机基本系统
数据库系统(DataBase System)简称DBS,DBS是个大的概念,包括数据库(DataBase)简称DB、数据库管理系统(DataBase Management System)简称DBMS、数据库应用系统、数据库管理员(DataBase Administrator)简称DBA 。
数据库DB是专门存数据的集合;
DBMS是由DBA对DB的查询、更新、删除、修改操作的。DBMS用来操纵和管理DB的软件,用于建立、使用和维护DB。它对DB进行统一的管理和控制,以保证DB的安全性和完整性,用户可以通过DBMS访问DB中的数据,DBA也可以通过DBMS进行DB的维护工作,它可使多个应用程序和用户拥有不同的方法在同时或不同时刻去建立、修改和询问DB(也就是说DBMS可以将控制权发挥到极致(也就是所说的安全性))。
DB是长期存储在计算机内的有组织、可共享的大量的数据集合。它可以供各种用户共享,具有最小冗余度和较高的数据独立性。
联系:DBS中的“系统”是指能够提供一系列数据库相关服务组件的有机结合体。它应该包括:DB、DBMS(以及开发工具)、应用系统、DBA和用户构成。所以联系就是DBS包括DBMS和DB。
目前占据中低端市场大半*的Oracle就是数据库管理系统,也称之为关系型数据库管理系统(Relational DataBase Management System)简称RDBMS。
(1)从用户角度看数据库管理系统应具有什么功能?
数据库定义: 定义数据库中Table的名称、标题(内含的属性名称及对该属性的值的要求)等
DBMS提供一套数据定义语言(DDL:Data Definition Language)给用户
用户使用DDL描述其所要建立表的格式
DBMS依照用户的定义,创建数据库及其中的Table
数据库操纵: 向数据库的Table中增加/删除/更新数据及对数据进行查询、检索、统计等
DBMS提供一套数据操纵语言(DML:Data Manipulation Language)给用户
用户使用DML描述其所要进行的增、删、改、查等操作
DBMS依照用户的操作描述,实际执行这些操作
数据库控制: 控制数据库中数据的使用——哪些用户可以使用,哪些不可以
DBMS提供一套数据控制语言(DCL:Data Control Language)给用户
用户使用DCL描述其对数据库所要实施的控制
DBMS依照用户的描述,实际进行控制
数据库维护: 转储/恢复/重组/性能监测/分析…
DBMS提供一系列程序(实用程序/例行程序) 给用户
在这些程序中提供了对数据库维护的各种功能
用户使用这些程序进行各种数据库维护操作
数据库维护的实用程序,一般都是由数据库管理员(DBA)来使用和掌握的
(2)什么是数据库语言?
(3)从系统实现角度看数据库管理系统应具有什么功能?
DBMS为完成DB管理,在后台运行着一系列程序…
语言编译器:将用数据库语言书写的内容,翻译成DBMS可执行的命令。例如: DDL编译器, DML编译器, DCL编译器等;
查询优化(执行引擎)与查询实现(基本命令的不同执行算法):提高数据 库检索速度的手段;例如贯穿于数据存取各个阶段的优化程序;
数据存取与索引:提供数据在磁盘、磁带等上的高效存取手段。例如:存储管理器,缓冲区管理器,索引/文件和记录管理器等;
通信控制:提供网络环境下数据库操作与数据传输的手段
事务管理:提供提高可靠性并避免并发操作错误的手段
故障恢复:使数据库自动恢复到故障发生前正确状态的手段,例如提供 了备份、运行日志操控等实用程序
安全性控制:提供合法性检验,避免非授权非法用户访问数据库的手段
完整性控制:提供数据及数据操作正确性检查的手段
数据字典管理:管理用户已经定义的信息
应用程序接口(API):提供应用程序使用DBMS特定功能的手段
数据库数据装载、重组等实用程序
数据库性能分析:统计在运行过程中数据库的各种性能数据,便于优化 运行
......
(4)典型的数据库管理系统(DBMS)
--Oracle
--DB 2 (IBM)
--Sybase
--MS SQL Server
--MS Access
--MS Foxpro
… …
总 结
(1索树)从用户角度看数据库管理系统的功户角度看数据库管理系统的功能?