news 2026/4/16 15:28:24

国产数据库技术基础知识点总结(基于达梦DM8教程)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
国产数据库技术基础知识点总结(基于达梦DM8教程)

本文基于《数据库基础与实例教程(达梦DM8)》,梳理国产数据库技术课程的核心基础知识点,涵盖数据库核心概念、DM8安装配置、SQL基础、数据库对象操作等关键内容,适合初学者快速搭建知识框架,也可作为课程复习的核心资料。

👉 适用人群:数据库初学者、国产数据库学习爱好者、《数据库基础与实例教程(达梦DM8)》课程学习者

一、数据库核心基础概念

1. 数据库相关核心定义

  • 数据库(DB):长期存储在计算机内、有组织、可共享的数据集合,具有结构化、独立性、可共享性等特点。

  • 数据库管理系统(DBMS):位于用户与操作系统之间的一层数据管理软件,负责数据库的建立、运行和维护。达梦DM8就是一款自主研发的国产关系型DBMS。

  • 数据库系统(DBS):由数据库、DBMS、应用程序、数据库管理员(DBA)和用户组成的完整系统。

  • 关系型数据库(RDB):采用关系模型(二维表结构)组织数据的数据库,核心是“关系”(表),支持SQL查询语言。DM8属于关系型数据库,兼容主流SQL标准。

2. 数据库系统的核心特点

数据结构化:数据按统一的二维表结构组织,表之间可通过关联字段建立联系; 数据共享性高:多个用户/应用可同时访问同一数据库,减少数据冗余; 数据独立性强:包括物理独立性(数据存储结构变化不影响应用)和逻辑独立性(数据逻辑结构变化不影响应用); 数据由DBMS统一管理和控制:提供安全性、完整性、并发控制和恢复等功能。

3. 达梦DM8的核心优势

完全自主可控:核心代码自主研发,无开源依赖,满足国产化替代需求; 高性能:支持大规模并发访问、数据压缩、索引优化等,适配企业级应用场景; 高兼容性:兼容Oracle、MySQL等主流数据库的SQL语法和数据类型,迁移成本低; 高安全性:支持数据加密、访问控制、审计日志等安全特性,符合等保三级要求; 易用性:提供图形化管理工具(DM管理工具)、命令行工具(disql),简化数据库运维。

二、达梦DM8安装与环境配置

1. 安装前准备

  • 硬件要求:CPU≥2核,内存≥4GB,磁盘空间≥20GB(含安装文件和数据存储);

  • 操作系统要求:支持主流国产操作系统(银河麒麟、统信UOS)、Linux(CentOS、RedHat)、Windows(Windows 10/Server 2016及以上);

  • 依赖环境:Linux系统需安装libaio-devel、glibc等依赖库;Windows系统需安装VC++运行库。

2. 核心安装步骤(以Linux为例)

  1. 下载DM8安装包(从达梦官网获取对应操作系统版本的iso镜像);

  2. 挂载iso镜像:mkdir /mnt/dm8 && mount DM8_202XXXXX.iso /mnt/dm8;

  3. 创建数据库用户:useradd -m dmuser && passwd dmuser(避免使用root用户直接操作);

  4. 执行安装脚本:cd /mnt/dm8 && ./DMInstall.bin,按照图形化向导完成安装(选择“典型安装”或“自定义安装”);

  5. 安装后配置:运行/dm8/script/root/root_installer.sh完成权限配置。

3. 常用工具介绍

  • DM管理工具:图形化工具,用于数据库实例管理、表结构设计、数据查询、备份恢复等,是日常运维的核心工具;

  • disql:命令行工具,支持SQL语句执行、批处理操作,适合自动化脚本编写;

  • DM数据迁移工具:用于将其他数据库(Oracle、MySQL等)的数据迁移到DM8,支持结构迁移和数据迁移;

  • DM备份恢复工具:提供逻辑备份(expdp/impdp)和物理备份(备份集),保障数据安全。

4. 实例与服务管理

实例:DM8数据库的运行环境,由内存结构和进程组成,一个实例对应一个数据库服务;启动服务:Linux:systemctl start DmServiceDMSERVER;Windows:服务中启动“达梦数据库服务”;停止服务:Linux:systemctl stop DmServiceDMSERVER;Windows:服务中停止对应服务;查看状态:Linux:systemctl status DmServiceDMSERVER;disql中执行“select status from v$instance;”。

三、SQL基础与DM8语法适配

1. SQL核心分类

  • 数据定义语言(DDL):用于创建、修改、删除数据库对象(表、视图、索引等),关键字:CREATE、ALTER、DROP;

  • 数据操纵语言(DML):用于对数据进行增删改查,关键字:INSERT、DELETE、UPDATE、SELECT;

  • 数据控制语言(DCL):用于权限管理和事务控制,关键字:GRANT、REVOKE、COMMIT、ROLLBACK;

  • 事务控制语言(TCL):用于管理事务,DM8默认自动提交关闭,需手动执行COMMIT提交事务。

2. 基础SQL语法(DM8适配版)

(1)数据库与表的创建
(2)数据操纵(增删改查)
(3)索引创建(优化查询性能)

3. DM8与主流数据库的语法差异

  • 字符串连接:DM8支持“||”和CONCAT函数,与Oracle一致,不同于MySQL的“+”;

  • 分页查询:DM8支持“LIMIT 起始位置, 条数”和“ROW_NUMBER() OVER()”,兼容MySQL和Oracle的分页语法;

  • 数据类型:DM8的“VARCHAR2”与Oracle一致,可直接使用,MySQL需改为“VARCHAR”;

  • 系统函数:DM8的系统函数(如获取当前时间的SYSDATE)与Oracle兼容,MySQL需改为NOW()。

四、数据库对象核心操作

1. 表(Table)

表是数据库的核心对象,用于存储数据,由行(记录)和列(字段)组成。核心操作包括: - 修改表结构:ALTER TABLE 表名 ADD 字段 类型;(添加字段)、ALTER TABLE 表名 MODIFY 字段 类型;(修改字段类型)、ALTER TABLE 表名 DROP 字段;(删除字段); - 约束管理:添加主键约束(ALTER TABLE 表名 ADD PRIMARY KEY(字段);)、添加外键约束(ALTER TABLE 子表 ADD FOREIGN KEY(字段) REFERENCES 父表(字段);)、删除约束(ALTER TABLE 表名 DROP CONSTRAINT 约束名;)。

2. 视图(View)

视图是虚拟表,基于查询语句创建,不存储实际数据,仅保存查询逻辑。核心作用:简化查询、权限控制、隐藏数据结构。 创建视图:CREATE VIEW VIEW_STUDENT AS SELECT S_ID, S_NAME, S_CLASS FROM STUDENT WHERE S_AGE > 18; 查询视图:SELECT * FROM VIEW_STUDENT; 删除视图:DROP VIEW VIEW_STUDENT;

3. 索引(Index)

索引是为了加速查询而创建的辅助数据结构,基于表的某个或多个字段构建。核心要点: - 适合创建索引的场景:查询频繁的字段、主键字段、外键字段; - 不适合创建索引的场景:更新频繁的字段、数据量少的表、重复值多的字段(如性别); - 索引类型:普通索引、唯一索引、主键索引(自动创建)、复合索引(基于多个字段)。

4. 存储过程与函数

存储过程和函数是预编译的SQL代码块,用于实现复杂的业务逻辑,可重复调用。 - 存储过程:无返回值,可通过OUT参数输出结果; - 函数:有返回值,可直接用于查询语句中; 示例(创建存储过程查询学生信息):

五、数据备份与恢复(DM8核心运维)

1. 备份的核心分类

  • 逻辑备份:备份数据的逻辑结构和数据内容,生成SQL脚本或二进制文件,适用于小数据量备份,工具:expdp(导出)、impdp(导入);

  • 物理备份:备份数据库的物理文件(数据文件、控制文件等),适用于大数据量备份,恢复速度快,工具:DM备份恢复工具、备份集管理。

2. 常用备份与恢复操作

-- 逻辑导出(导出DMUSER用户下的所有表)

expdp dmuser/dm@127.0.0.1:5236 directory=/dm8/backup dumpfile=dmuser_backup.dmp logfile=expdp_log.log

-- 逻辑导入(导入到目标数据库)

impdp dmuser/dm@127.0.0.1:5236 directory=/dm8/backup dumpfile=dmuser_backup.dmp logfile=impdp_log.log

-- 物理备份(全量备份,通过图形化工具操作更便捷)

-- 1. 打开DM备份恢复工具,选择“备份”->“全量备份”;

-- 2. 选择备份目标路径,设置备份名称,点击“开始”。

-- 物理恢复(通过备份集恢复)

-- 1. 关闭数据库服务;

-- 2. 打开DM备份恢复工具,选择“恢复”->“从备份集恢复”;

-- 3. 选择备份集文件,设置恢复目标路径,点击“开始”。

六、常见问题与解决方案

  • 安装失败:检查操作系统依赖库是否齐全,磁盘空间是否充足,用户权限是否足够;

  • 无法连接数据库:检查数据库服务是否启动,IP地址、端口号是否正确,防火墙是否开放5236端口(DM8默认端口);

  • SQL执行报错:检查语法是否符合DM8规范,字段类型是否匹配,约束条件是否满足;

  • 查询性能差:检查是否缺少索引,SQL语句是否需要优化(如避免全表扫描),表数据量是否过大(考虑分区表)。

七、学习资源与拓展建议

  • 官方文档:达梦官网提供《DM8数据库系统管理员手册》《DM8 SQL参考手册》,权威且详细;

  • 实操练习:结合教程中的实例,搭建DM8环境,反复练习表创建、SQL查询、备份恢复等操作;

  • 进阶方向:学习DM8的高可用架构(主从复制、集群)、性能优化、数据迁移实战,适配企业级应用场景;

  • 社区交流:达梦技术社区、CSDN国产数据库专栏,可获取实操问题解决方案和行业应用案例。

以上是基于《数据库基础与实例教程(达梦DM8)》的核心基础知识点总结,后续可根据学习进度补充进阶内容(如事务原理、锁机制、性能优化等)。如果有具体知识点的疑问或需要补充实操细节,欢迎在评论区交流!

📌 本文同步收录于个人学习笔记,持续更新中... 点赞+收藏,学习不迷路!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 14:51:34

LangFlow投资者关系问答生成器

LangFlow投资者关系问答生成器 在上市公司与资本市场之间,每一次信息披露都可能影响股价走势。投资者关系(IR)团队常常面临这样的挑战:如何在财报季快速、准确地回应大量专业提问?传统依赖人工撰写回复的模式效率低、…

作者头像 李华
网站建设 2026/4/16 14:16:49

Centos7安装Git环境

1、使用yum(CentOS 7及更早版本) 更新yum sudo yum update安装git sudo yum install git2、使用dnf(CentOS 8及更高版本) 更新dnf sudo dnf update安装git sudo dnf install git3、使用官方仓库 导入官方Git仓库的GPG密钥 sudo rp…

作者头像 李华
网站建设 2026/4/16 14:20:05

基于Python+大数据+SSM基于数据挖掘的高考志愿推荐系统(源码+LW+调试文档+讲解等)/高考志愿填报系统/志愿推荐工具/高考志愿辅助系统/志愿填报推荐平台

博主介绍 💗博主介绍:✌全栈领域优质创作者,专注于Java、小程序、Python技术领域和计算机毕业项目实战✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 2025-2026年最新1000个热门Java毕业设计选题…

作者头像 李华
网站建设 2026/4/15 21:56:28

Python+OpenCV实现棋盘格标定板生成

前言:在计算机视觉领域,相机标定是基础且关键的步骤,其目的是获取相机的内参矩阵和畸变系数,而棋盘格是最常用的标定模板。手动绘制棋盘格不仅繁琐,还容易出现尺寸不精准、格子不规整等问题,影响标定精度。…

作者头像 李华
网站建设 2026/4/15 21:58:02

Arduino平台下L298N电机驱动模块全面讲解

从零玩转L298N:Arduino驱动直流电机的实战全指南你有没有试过用Arduino直接带一个轮子转动的小车?结果一通电,Arduino“啪”一下重启了——或者电机纹丝不动,芯片却烫得能煎蛋?这几乎是每个创客、电子爱好者甚至工程科…

作者头像 李华
网站建设 2026/4/16 9:19:38

飞书多维表格vsTeable 如何选?把握“内外兼修”是关键决策点

在数字化转型的浪潮中,企业如何选择适合自身的多维表格平台,已成为提升管理效率和协同能力的关键决策。面对市场上众多的选择,飞书多维表格和Teable无疑是两个备受关注的选项。而在这场选择中,“内外兼修”的理念或许能为我们指明…

作者头像 李华