达梦数据库的使用与维护

article/2025/3/20 14:27:10

本文是从安装达梦库到使用维护的过程。

1.达梦库的安装

1.1收集软硬件信息

我是用的是本地虚拟机,操作系统是中标麒麟6.0,数据库版本为dm7_setup_rh6_64_ent_7.6.0.197_20190917。安装前需确认下机器的cpu,系统版本,空间存储等等是否跟安装包匹配,对于系统而言需确认是否有glibc包,避免版本问题导致出错。
在这里插入图片描述
在这里插入图片描述

1.2 规划安装路径和用户

装库时不建议直接使用root用户,这里创建了dmdba作为安装用户
在这里插入图片描述
创建dm7为安装路径,并授权给dmdba
在这里插入图片描述

1.3安装软件

首先挂载准备好的安装包,安装文件是DMInstall.bin,可以选择图形化安装或静默安装,图形化几乎是默认下一步即可,此处我选择静默安装。
此处记得一定要切换为之前建好的安装用户dmdba!!!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此时会提示:可打开文件数过少,建议至少设置为65536或更多。
因为我这里是单机操作,可不修改,如果是集群或生产环境建议更改为65536。key文件此处可先跳过。
接下来就是各项基础参数设置,选择时区,选择安装类型和目录。
在这里插入图片描述
安装结束可以看到上面有提示以root执行/dm7/script/root/root_installer.sh,新建终端,执行即可。
在这里插入图片描述
至此安装完毕,回到/dm7下可以看到相关配置文件。
在这里插入图片描述

1.4 卸载软件

由于此时只安装了软件并未创建数据库,所以直接执行/dm7/uninstall.sh即可。若已创建数据库,则需先停止库服务,再卸载软件。

1.5创建数据库

一个数据库可以创建多个实例,而达梦则以端口号来区分各个实例,默认是5236。

1.5.1 dbca.sh

执行tool下的dbca.sh以启动图形化界面在这里插入图片描述
此处可设置数据库的名字端口信息
在这里插入图片描述
此处可看到数据文件、控制文件等位置
在这里插入图片描述
注意此处内容设置错误不能修改只能重新初始化实例
在这里插入图片描述

  • 字符集:gbk,utf-8
  • 时区:默认东八区
  • page大小(数据块,存放数据的最小逻辑单位):默认8k,如果有大字段(clob,blob等)建议设置32k
  • 簇(表空间默认申请的最小逻辑单位):默认16,大字段建议32

最后确认一遍自己设置的数据库信息是否有误
在这里插入图片描述
确认无误点完成,此时出现
在这里插入图片描述
同之前的操作新打开终端执行脚本即可
在这里插入图片描述
创建成功
在这里插入图片描述
连接disql即可查看本库信息
在这里插入图片描述

1.5.2 命令行

利用命令行创建注册语句,此方法需注意默认不会把数据库实例注册到OS,还需要手动注册数据库服务到OS。此处不再演示。
cd /dm7/bin
./dminit path=/dm7/data db_name=DM01 instance_name=TEST1 port_num=5237
利用脚本(root用户执行脚本注册服务到os)
/dm7/script/root/dm_service_installer.sh -t dmserver -p TEST1 -i /dm7/data/DM01/dm.ini

2 数据库实例的管理

2.1 实例的状态

达梦数据库有四种状态:shutdown,mount(配置模式),open(打开),suspend(挂起)
查看数据库状态:
SQL> select status$ from v$instance;
在这里插入图片描述
修改数据库状态:
在这里插入图片描述

2.2 启动实例

cd /etc/rc.d/init.d
service DmServiceTEST1 start 启动服务
service DmServiceTEST1 restart 重启服务
service DmServiceTEST1 stop 停止服务
service DmServiceTEST1 status 查看服务状态

3 表空间和用户

3.1 查看表空间

打开达梦管理工具(tool下的manager)
在这里插入图片描述
可以看到当前存在的五个(SYSTEM、ROLL、TEMP、MAIN、大表空间 )系统表空间,其中DMHR为建库时选择创建的实示例库可忽略。

在这里插入图片描述
现在我们来使用管理工具新创建一个表空间TBS1
在这里插入图片描述
注意添加数据文件的路径,大小,是否自动扩充已以及扩充上限是多少。
在这里插入图片描述
接下来用disql对刚创建的表空间TBS1添加一个数据文件
SQL> alter tablespace TBS1 add datafile ‘/dm7/data/DAMENG/tbs1_02.dbf’ size 32 autoextend on next 1 maxsize 50;
通过管理工具可以看到两个数据文件创建成功
在这里插入图片描述

3.2 用户

通过管理工具查看本库的用户,系统默认的管理员用户为SYSDBA
在这里插入图片描述
此处我们新建一个用户USER1,密码设置dameng123。表空间栏默认MAIN,此处我选定刚才创建的TBS1
在这里插入图片描述
资源限制这一栏,注意可以设置登陆失败次数和失败以后锁定时间
在这里插入图片描述

4 表

创建一个简单的包含学号、姓名、性别的学员表,注意表字段类型,长度的设置,并添加注释,对表进行增加列、修改列、删除列等操作均在此处,如图所示
在这里插入图片描述
建表语句如下:
create table “USER1”.“STU_INFO”
(
“STU_ID” CHAR(3),
“STU_NAME” VARCHAR2(50),
“STU_SEX” CHAR(1)
)
storage(initial 1, next 1, minextents 1, fillfactor 0)
;

comment on table “USER1”.“STU_INFO” is ‘学生信息表’;

comment on column “USER1”.“STU_INFO”.“STU_ID” is ‘学号’;

comment on column “USER1”.“STU_INFO”.“STU_NAME” is ‘姓名’;

comment on column “USER1”.“STU_INFO”.“STU_SEX” is ‘性别’;

5 视图

把刚才创建的学员表封装成视图,显示列为汉字
CREATE VIEW “USER1”.“V_STU”
AS
SELECT
STU_ID “学号”,
STU_NAME “姓名”,
STU_SEX “性别”
FROM
USER1.STU_INFO;
在这里插入图片描述

6 同义词

创建STU_INFO 表的同义词AAA
CREATE SYNONYM “USER1”.“AAA” FOR “USER1”.“STU_INFO”;
直接查询AAA会报错说无效的表或视图名,因为此处直接在USER1内创建同义词是属于普通同义词,仅限本用户使用,SYSDBA不可以查询,可以切换用户查询,或直接创建公共同义词供所有用户使用。

在这里插入图片描述

7.索引

为了加快表的查询,在对数据库做DML操作的时候,数据库会自动维护索引。索引是一棵倒置的多叉树,使用索引就是对索引树进行遍历。
给学生表STU_INFO的学号列STU_ID创建索引
需注意建完索引后最好重新收集一下统计信息,以确保新建的索引生效,可通过查看执行计划来确认。

在这里插入图片描述

8 数据库的备份与还原

8.1 备份

为了安全起见数据库需要定期做备份,达梦库支持冷备和热备两种方式。由于冷备需要停止数据库服务,因此备份过程容易丢失数据,所以相比之下更推荐热备的方式。
(1)确认数据库服务和dmap服务是打开的
/etc/rc.d/init.d/DmAPService start
/etc/rc.d/init.d/DmServiceDMSERVER start

在这里插入图片描述
(2) 开启归档
查看是否开启归档:
SQL>select arch_mode from v$database;
在这里插入图片描述
右键管理服务器,切换数据库为mount状态(或者用语句切换)
在这里插入图片描述
添加归档日志文件的路径,并切换为归档模式
在这里插入图片描述
注意查看此时数据库mount状态下是无法对表视图进行操作的
在这里插入图片描述
切换数据库为open状态,再次查看是否开启归档
在这里插入图片描述
(3)创建备份
完全备份:backup database full backupset ‘/dm7/backup/full_bak_1028’;
在这里插入图片描述
在备份目录下也可以看到备份文件
在这里插入图片描述
数据库备份无比重要,可定期做全量备份,不方便的话也可定期做增量备份:backup database increment backupset ‘/dm7/backup/incr_bak_1028’;

8.2 还原

现将刚才创建的数据文件损坏,并用刚才的全量备份对数据库进行还原
在这里插入图片描述
重启数据库,可以看到数据库已不正常,处于mount状态
手动open后,查看表空间状态,可以看到tbs1_01为离线状态
在这里插入图片描述
下面利用备份文件进行恢复
在这里插入图片描述
重新使tbs1在线,alter tablespace tbs1 online;
在这里插入图片描述
数据文件目录下也重新生成了数据文件
在这里插入图片描述

9 作业

在生产环境中,我们会有定期备份数据库或定期收集索引统计信息等需求,作业就可以定期帮助我们执行某项任务。

9.1 代理环境

打开管理工具,连接本地库,点创建代理环境
在这里插入图片描述

9.2 创建作业

环境创建好后,右键新建作业,选择作业类型,此处我选择的是备份数据库
在这里插入图片描述

9.3 设置调度

现在对创建好的作业设置调度,每周日23点备份一次数据库
在这里插入图片描述
创建完成点确认,报错
在这里插入图片描述
这里我发现作业的调度名必须和该作业名一致,不能单独起名
在这里插入图片描述
在这里插入图片描述
至此作业创建成功,日后可通过
select * from sysjob.sysjobs; 按时巡检作业是否正常执行

10 存储过程

针对STU_INFO表建立两个简单的存储过程。
STU_INFO表,对表进行更新或插入操作,此处需要注意单引号的作用:call DDD(004,‘参数’,1)和call DDD(‘004’,‘参数’,‘1’)会出现两种不同的结果。
在这里插入图片描述
带返回值的存储过程,STU_INFO表根据学号查姓名
在这里插入图片描述

11 触发器

触发器不需要调用,在执行某些操作的时候,就会自动执行。一般当表或者视图执行 增,删,改操作的时候,就会自动执行触发器中的语句。
现在新建STU_INFO的备份表STU_INFO_BAK,建立触发器当STU_INFO的数据删除时,STU_INFO_BAK的数据同步删除。
删除刚才学号为4的测试数据,操作如下图:
在这里插入图片描述
以上,为本人安装并使用数据库的过程!感谢阅读~( ̄▽ ̄~)(~ ̄▽ ̄)~


http://chatgpt.dhexx.cn/article/Gd43A8iy.shtml

相关文章

SQL Server 维护计划(数据库备份)

通过维护计划实现数据库完整备份 步骤一 打开数据库——》在资源管理器中找到管理——》找到维护计划——》鼠标右键新建维护计划 步骤二 在资源管器左边——》选择工具箱——》将"备份数据库"任务、"清除维护任务"、"收缩数据库"任务选项——…

【数据库管理】数据库自动维护任务介绍

概述自动维护任务的演变 10g 预定义的维护窗口Maintenance Windows预定义的自动系统任务Predefined Automatic System Tasks 11g 预定义的维护窗口Maintenance Windows预定义自动维护任务Automated Maintenance Tasks 12c 预定义的维护窗口Maintenance Windows预定义自动维护任…

服务器数据库维护需要做哪些,数据库运维究竟需要做什么?

数据库是存放数据、经常是那些高敏感度数据的宝库,因此它也毫无疑问的是合规检查程序的重点区域。几乎所有的企业合规都会对哪些人、能在什么时间、访问什么数据库作出规定,并且需要一个专职人员来管理这些权限。那么,作为管理数据库的专职人员,需要做些什么呢?下面来了解…

创建与维护MySQL数据库

目录 一、创建MySQL数据库 1.链接MySQL 2.查看当前的数据库 3.创建数据库 4.创建数据库时设置字符编码 5.查看和显示数据库的编码方式 6.使用alteer database 数据库名character set utf8; 修改数据库编码 7.进入或切换数据库 8.显示当前数据库 select database(); 二…

第10章 数据库运行维护与优化

10.1数据库运行维护基本工作 一般来说,维护工作主要包括:数据库的转储和恢复;数据库的安全性和完整性控制;数据库性能的监控分析和改进;数据库的重组和重构。 ①数据库的转储与恢复 作为数据库管理员,应该针对各种数…

SQL Server维护计划自动备份数据库

GPS平台、网站建设、软件开发、系统运维,找森大网络科技! https://cnsendnet.taobao.com 来自森大科技官方博客 http://www.cnsendblog.com/index.php/?p1841 使用SQL Server 2008的维护计划可以实现自动备份数据库,并自动删除过期备份的功…

mysql数据库维护(mysql学习笔记)

数据库备份: 2.数据库维护: analyze table用来检查表键是否正确,如下: check table 用来针对许多问题对表进行检查。在myisam表上海对索引进行检查。check table支持一系列的用于myisam表的方式,changed检查自最后一次…

Oracle DB 数据库维护

• 管理优化程序统计信息 • 管理自动工作量资料档案库(AWR) • 使用自动数据库诊断监视器(ADDM) • 说明和使用指导框架 • 设置预警阈值 • 使用服务器生成的预警 • 使用自动任务 数据库维护 通过复杂的Oracle DB 基础结构,可以方便地执行预先数据库维护&#xf…

使用SQL命令创建与维护数据库

创建数据库 create database DB_Book -- 数据库名,在现有连接中不可重复 on primary -- 主文件 (name DB_Book, -- 数据文件逻辑名filename D:\A_file\数据库\图书管理\DB_Book.mdf, -- 文件名及位置size 1mb, -- 初始大小maxSize 1…

sqlserver数据库得管理及维护

sqlserver数据库得管理及维护 sqlserver数据库得管理及维护 sqlserver数据库得管理及维护前言一、手动备份及恢复二、自动备份及定期清除备份集计划三、数据库日志收缩方法一:直接通过企业管理器收缩日志方法二:分离数据库及日志文件 四、数据库索引碎片…

《数据库系统实训》实验报告——数据库维护

数据库维护 第一部分:样例库的应用 1)备份数据库命令: mysqldump -u root -p --databases test1 > /usr/local/mysql/test1.bak.sqltest1是数据库的备份文件 2)恢复备份数据: 首先删除原有的数据库test1&#xf…

SQL Server 数据库维护计划

SQL Server 数据库维护计划 开始 SQL Server 维护计划向导选择计划属性新建作业计划选择维护任务选择维护任务顺序维护任务配置1. 数据库检查完整性2. 数据库完整性备份3. 数据库差异性备份4. 数据库事务日志备份5. 清除维护 选择报告选项启用邮件配置文件重启代理服务执行维护…

MySQL之数据库维护

文章目录 1 数据库维护1.1 数据库文件1.1.1 MySQL创建并管理的数据库文件1.1.2 MySQL数据库存放位置 1.2 性能状态关键指标QPS和TPS1.3 开启慢查询日志1.4 数据库备份1.4.1 myqldump示例 1.5 数据库修复1.5.1 myisamchk修复1.5.2 mysqlcheck修复1.5.3 .frm文件修复1.5.3.1 Inno…

数字电路实验怎么接线视频讲解_电工知识:三相电表怎么接线?2种接线方法一一讲解,实物对照...

之前我们介绍单项电表接线方法,本期我们介绍三相电表接线方法,主要说两种,一种是直接式一种是带电流互感器的。这2种接线从测量原理和构成角度来说,没什么差别。只不过直接式的三相电表额定电流是根据负载的电流来选的&#xff0c…

数电实验七:译码显示电路

转载自https://wu-kan.cn/_posts/2018-07-03-译码显示电路/ 数字电子技术实验报告 实验题目:译码显示电路 预习报告 内容一 74LS194芯片相关。 功能与真值表 CP时钟 C r ‾ \overline{Cr} Cr清零 S 1 {S_1} S1​ S 0 {S_0} S0​工作状态 Q A Q_A^ QA​ Q B …

【数电实验3】Verilog—1位十进制可逆计数器

【2022.04西南交大数电实验】 【2022.04.17 更新修改了一个错误: assign CO (upd & (Q 4d9)) | (~upd & (Q 4d0) & ~clr); ~clr改为了clr: assign CO (upd & (Q 4d9)) | (~upd & (Q 4d0) & clr); 另外 ,把…

数电实验三-点亮四个数码管(Multisim和Basys3)

【ChatGPT】前些天发现了一个巨牛的人工智能学习电子书,通俗易懂,风趣幽默,无广告,忍不住分享一下给大家。(点击查看学习资料) 特别说明:该系列内容均是本人实验记录,无盗取侵权之嫌…

数电实验八 译码显示电路(2)点阵的原理和应用

仅作笔记用途。 器件:16*16 点阵、74LS138 、74LS00 等。 注:proteus上用4个8*8点阵组合为16*16点阵时,要先旋转8*8点阵直到其行有效电平为高,列有效电平为低才和实验箱上的一致,并且针脚分别控制哪几行哪几列也需要…

数电实验--Verilog第一次实验验收题目汇总

【本人只是想自己总结一下,大部分代码和原理图来源于教程https://www.stepfpga.com/doc】 1、点亮LED 目的:利用开发板上的四个拨码开关和四个按键分别控制8个LED灯的亮灭(按键按下时输出高电平,LED亮)。 module LE…

桂电 数电实验 期末考试 试卷+解析(74LS192 + 74LS153 + 74LS139 + 74LS00 / 74LS20)

目录 考试注意事项 A卷 74LS192 74LS00 B卷 74LS153 74LS00 / 74LS20 74LS139 C卷 74LS153 74LS00 / 74LS20 74LS139 课程感悟 考试注意事项 1.考试前请检查实验箱号和仪器号与座位号是否一样,不一样请请示老师更换; 2.请自行检查导线、芯片、仪器的…