达梦数据库体系架构及DM8安装部署

一、DM数据库体系架构

1.DM逻辑结构概述

数据库
DM 数据库指的是磁盘上存放在 DM 数据库中的数据的集合,一般包括:数据文件、日志文件、控制文件以及临时数据文件等。

实例
实例一般是由一组正在运行的 DM 后台进程/线程以及一个大型的共享内存组成。简单来说,实例就是操作 DM 数据库的一种手段,是用来访问数据库的内存结构以及后台进程的集
合。

DM 数据库存储在服务器的磁盘上,而 DM 实例则存储于服务器的内存中。通过运行 DM实例,可以操作 DM 数据库中的内容。在任何时候,一个实例只能与一个数据库进行关联(装载、打开或者挂起数据库)。在大多数情况下,一个数据库也只有一个实例对其进行操作。
但是在 DM 共享存储集群(DMDSC)中,多个实例可以同时装载并打开一个数据库(位于一组由多台服务器共享的物理磁盘上)。此时,我们可以同时从多台不同的计算机访问这个数据库。
在这里插入图片描述

2.DM物理结构概述

DM 数据库使用了磁盘上大量的物理存储结构来保存和管理用户数据。典型的物理存储结
构包括:用于进行功能设置的配置文件;用于记录文件分布的控制文件;用于保存用户实际
数据的数据文件、重做日志文件、归档日志文件、备份文件;用来进行问题跟踪的跟踪日志
文件等
在这里插入图片描述
1)配置文件
配置文件以ini为扩展名,每创建一个DM数据库,就会自动生成dm.ini文件。

[root@localhost DAMENG]# ll *.ini
-rw-r--r--. 1 dmdba dinstall 59756 Sep 15 22:24 dm.ini
-rw-r--r--. 1 dmdba dinstall   481 Sep 15 14:27 sqllog.ini

2)控制文件
每个 DM 数据库都有一个名为 dm.ctl 的控制文件。它记录了数据库必要的初始信息,其中主要包含以下内容:

  1. 数据库名称;
  2. 数据库服务器模式;
  3. OGUID 唯一标识;
  4. 数据库服务器版本;
  5. 数据文件版本;
  6. 数据库的启动次数;
  7. 数据库最近一次启动时间;
  8. 表空间信息,包括表空间名,表空间物理文件路径等,记录了所有数据库中使用的
    表空间,数组的方式保存起来;
  9. 控制文件校验码,校验码由数据库服务器在每次修改控制文件后计算生成,保证控
    制文件合法性,防止文件损坏及手工修改。
[root@localhost DAMENG]# ll *.ctl
-rw-r--r--. 1 dmdba dinstall 6656 Sep 15 21:35 dm.ctl

3)数据文件
数据文件以 DBF 为扩展名,它是数据库中最重要的文件类型,一个 DM 数据文件对应磁
盘上的一个物理文件或者达梦分布式数据库中的一个逻辑文件,数据文件是真实数据存储的
地方,每个数据库至少有一个与之相关的数据文件。

[root@localhost DAMENG]# ll *.DBF
-rw-r--r--. 1 dmdba dinstall 157286400 Sep 15 15:18 BOOKSHOP.DBF
-rw-r--r--. 1 dmdba dinstall 134217728 Sep 15 22:11 MAIN.DBF
-rw-r--r--. 1 dmdba dinstall 134217728 Sep 16 00:23 ROLL.DBF
-rw-r--r--. 1 dmdba dinstall  52428800 Sep 16 09:31 SYSTEM.DBF
-rw-r--r--. 1 dmdba dinstall  27262976 Sep 15 14:50 TEMP.DBF
-rw-r--r--. 1 dmdba dinstall 157286400 Sep 15 21:38 USERS.DBF

4)重做日志文件
重做日志文
件以 log 为扩展名。每个 DM 数据库实例必须至少有 2 个重做日志文件,默认两个日志文件
为 DAMENG01.log、DAMENG02.log,这两个文件循环使用。

[root@localhost DAMENG]# ll DAMENG*.log
-rw-r--r--. 1 dmdba dinstall 268435456 Sep 16 10:29 DAMENG01.log
-rw-r--r--. 1 dmdba dinstall 268435456 Sep 15 14:50 DAMENG02.log

5)归档日志文件
归档日志文件,就是在归档模式下,重做日志被连续写入到归档日志后,所生成了归档
日志文件。归档日志文件以归档时间命名,扩展名也是 log。

其余还有 逻辑日志文件、物理逻辑日志文件、备份文件、SQL日志文件、事件日志文件等,这边就不一一讲述了。

二、DM8命令行方式安装部署

根据不同的应用需求与配置,DM 提供了多种不同的产品系列:
1)标准版 Standard Edition
2)企业版 Enterprise Edition
3)安全版 Security Edition

DM软件包可以在官网下载: https://www.dameng.com/list_103.html

下面以Linux环境命令行安装方式为例:

1.环境检查

获取系统位数

getconf LONG_BIT 

#查询操作系统 release 信息

lsb_release -a 

#查询系统信息

cat /etc/issue 

#查询系统名称

uname -a

操作系统限制:
建议用户检查当前安装用户的 ulimit 参数。
运行 ulimit -a 进行查询
在这里插入图片描述
参数使用限制:
1.data seg size
data seg size (kbytes, -d)
建议用户设置为 1048576(即 1GB)以上或 unlimited(无限制),此参数过小将导
致数据库启动失败。
2. file size
file size(blocks, -f)
建议用户设置为 unlimited(无限制),此参数过小将导致数据库安装或初始化失败。
3. open files
open files(-n)
建议用户设置为 65536 以上或 unlimited(无限制)。
4.virtual memory
virtual memory (kbytes, -v)
建议用户设置为 1048576(即 1GB)以上或 unlimited(无限制),此参数过小将导
致数据库启动失败。
如 果 用 户 需 要 为 当 前 安 装 用 户 更 改 ulimit 的 资 源 限 制 , 请 修 改 文 件
/etc/security/limits.conf。

[root@ ~]# vim /etc/security/limits.conf 
* soft nproc 65536 
* hard nproc 65536 
* soft nofile 65536 
* hard nofile 65536 

创建用户授权

[root@ ~]# groupadd dinstall -g 2001 
[root@ ~]# useradd -u 2001 -g dinstall -m -d /home/dmdba/dmdbms -s /bin/bash dmdba 
[root@ ~]# passwd dmdba 
[root@ ~]# <输入密码> 
[root@ ~]# <再次输入密码> 
[root@ ~]# mkdir /home/dmdba/dmdbms 
[root@ ~]# chown -R dmdba:dinstall /home/dmdba/dmdbms  
[root@ ~]# chmod -R 755 /home/dmdba/dmdbms 

配置环境变量

export PATH=/home/dmdba/dmdbms/bin:$PATH 
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/dmdba/dmdbms/bin 
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/dmdba/dmdbms/bin2 
export JAVA_HOME=/home/dmdba/dmdbms/jdk 
export PATH=$PATH:$JAVA_HOME/bin 

将 DM 安装光盘放入光驱,然后加载(mount)光驱。一般可以通过执行下面的命令来
加载光驱:

mount /dev/cdrom /mnt/cdrom 

这里假定光驱对应的文件为/dev/cdrom 且目标路径/mnt/cdrom 已存在。
加载(mount)光驱后,在/mnt/cdrom 目录下存在 DMInstall.bin 文件,
DMInstall.bin 文 件 就 是 DM 的 安 装 程 序 。 在 运 行 安 装 程 序 前 , 需 要 赋 予
DMInstall.bin 文件执行权限。具体命令如下所示:

chmod 755 ./DMInstall.bin 

2.安装软件

命令行安装:
进入到/mnt/cdrom目录
./DMInstall.bin -i 执行安装程序

[dmdba@localhost mnt]$ ls
DM8 Install.pdf  DMInstall.bin
[dmdba@localhost mnt]$ ./DMInstall.bin -i
Please select the installer's language (E/e:English C/c:Chinese) [E/e]:C      #设置中英文
解压安装程序......... 
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 7170
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 65536
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 4096
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

欢迎使用达梦数据库安装程序

是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:    #测试环境可忽略填N
是否设置时区? (Y/y:是 N/n:否) [Y/y]:y
设置时区:                        
[ 1]: GTM-12=日界线西
[ 2]: GTM-11=萨摩亚群岛
....
[21]: GTM+08=中国标准时间
....
请选择设置时区 [21]:21

安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]:4
1 服务器组件
2 客户端组件
  2.1 DM管理工具
  2.2 DM性能监视工具
  2.3 DM数据迁移工具
  2.4 DM控制台工具
  2.5 DM审计分析工具
  2.6 SQL交互式查询工具
3 驱动
4 用户手册
5 数据库服务
  5.1 实时审计服务
  5.2 作业服务
  5.3 实例监控服务
  5.4 辅助插件服务
请选择安装组件的序号 (使用空格间隔) [1 2 3 4 5]:1 2 3 4 5
所需空间: 1602M

请选择安装目录 [/home/dmdba/dmdbms]:
可用空间: 10G
是否确认安装路径(/home/dmdba/dmdbms)? (Y/y:是 N/n:否)  [Y/y]:y

安装前小结
安装位置: /home/dmdba/dmdbms
所需空间: 1602M
可用空间: 10G
版本信息: 
有效日期: 
安装类型: 自定义
是否确认安装? (Y/y:是 N/n:否):y

配置文件/etc/dm_svc.conf已存在,是否进行替换? (Y/y,N/n) [Y/y]:y
2022-09-16 11:35:19 
[INFO] 安装达梦数据库...
2022-09-16 11:35:19 
[INFO] 安装 基础 模块...
2022-09-16 11:35:22 
[INFO] 安装 服务器 模块...
2022-09-16 11:35:23 
[INFO] 安装 客户端 模块...
2022-09-16 11:35:25 
[INFO] 安装 驱动 模块...
2022-09-16 11:35:26 
[INFO] 安装 手册 模块...
2022-09-16 11:35:27 
[INFO] 安装 服务 模块...
2022-09-16 11:35:28 
[INFO] 移动日志文件。
2022-09-16 11:35:28 
[INFO] 安装达梦数据库完成。

请以root系统用户执行命令:

/home/dmdba/dmdbms/script/root/root_installer.sh

安装结束


切换到root用户,执行 /home/dmdba/dmdbms/script/root/root_installer.sh

```bash
[root@localhost ~]# /home/dmdba/dmdbms/script/root/root_installer.sh
移动 /home/dmdba/dmdbms/bin/dm_svc.conf 到/etc目录
修改服务器权限

3.初始化数据库

dminit工具介绍:
dminit 是 DM 数据库初始化工具。在安装 DM 的过程中,用户可以选择是否创建初始
数据库。如果当时没有创建,那么在安装完成之后,可以利用创建数据库工具 dminit 来创
建。

dminit参数详解可以参考官方文档:https://eco.dameng.com/document/dm/zh-cn/pm/dminit-parameters.html

我们这边使用dminit工具来初始化数据库

[dmdba@localhost dmdbms]$ cd /home/dmdba/dmdbms/bin
[dmdba@localhost bin]$ ./dminit PATH=/home/dmdba/dmdbms charset=1 log_size=2048 case_sensitive=0 page_size=32 
initdb V8
db version: 0x7000c
file dm.key not found, use default license!
License will expire on 2023-06-30
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL

 log file path: /home/dmdba/dmdbms/DAMENG/DAMENG01.log


 log file path: /home/dmdba/dmdbms/DAMENG/DAMENG02.log

write to dir [/home/dmdba/dmdbms/DAMENG].
create dm database success. 2022-09-16 11:46:16

此时在/home/dmdba/dmdbms 目录下会出现一个 DAMENG 文件夹,内容包含初始数据库 DAMENG 的相关文件和 DM 数据库启动所必须的配置文件 dm.ini。

4.注册数据库

参考官方文档:https://eco.dameng.com/document/dm/zh-cn/pm/dm8_linux-script-manual.html

[root@localhost ~]# cd /home/dmdba/dmdbms/script/root/
[root@localhost root]# ./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/dmdbms/DAMENG/dm.ini -p DMSERVER
Created symlink from /etc/systemd/system/multi-user.target.wants/DmServiceDMSERVER.service to /usr/lib/systemd/system/DmServiceDMSERVER.service.
创建服务(DmServiceDMSERVER)完成

启动数据库

[root@localhost root]# service DmServiceDMSERVER start
Redirecting to /bin/systemctl start  DmServiceDMSERVER.service
[root@localhost root]# netstat -lntp |grep 5236
tcp6       0      0 :::5236                 :::*                    LISTEN      95745/dmserver 

5.登录数据库

接下去就可以使用DM管理工具连接数据库了
SYSDBA默认密码SYSDBA
在这里插入图片描述
查询数据库信息:

SELECT B.SVR_VERSION AS "数据库版本", C.DB_MAGIC AS "数据库MAGIC",A.NAME AS "数据库名",B.INSTANCE_NAME AS "实例名",B.STATUS$ AS "系统状态",B.MODE$ AS "模式",DECODE(A.ARCH_MODE,'Y','是','N','否') AS "是否归档",B.START_TIME AS "服务启动时间" FROM V$DATABASE A,V$INSTANCE B,V$RLOG C;

在这里插入图片描述

社区地址: https://eco.dameng.com
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值