一、简介
DM数据库是达梦数据库有限公司基于ORACLE数据库推出的一款关系型数据库,以RDBMS为核心、SQL为标准,支持 SQL92/SQL99、ODBC、JDBC、PHP、.NET Provider 等国际标准或行业标准。提供对(WINDOWS/LINUX/UNIX /AIX/SOLARIS 等)、硬件(X64/X86/SPARC/POWER/TITAM)平台的完备支持。 支持WINDOWS 2000/XP/2003、2.4 及2.4 以上内核的LINUX(Redhat、Debian、 Suse、红旗、中标等)、麒麟操作系统(Kylin)、 AIX、SOLARIS 等国内外常用操作系统。DM 的管理工具、应用开发工具集使用 Java 编写,从而可以跨平台工作,即同一程序 无需重新编译,将其执行码拷贝到任一种操作系统平台上都能直接运行。这也保证了它们在 各种操作系统平台上都有统一的界面风格。
DM 核心系统的多线程机制利用了操作系统的线程调度,系统的工作线程在单 CPU 和多 CPU 机器上都能并行操作。对于多 CPU 的系统,采用的操作系统只要支持多CPU 机制,DM 就能实现多CPU 协同工作。
目前 DM 系统支持了Unicode 字符集和其他多种字符集,可以在安装 DM 系统时, 指定服务器端使用UTF8 字符集。
DM 共享存储数据库集群(DM Data Shared Cluster,简称DMDSC),允许多个数据库 实例同时访问、操作同一数据库,具有高可用、高性能、负载均衡等特性。DMDSC 支持故 障自动切换和故障自动重加入,某一个数据库实例故障后,不会导致数据库服务无法提供。
二、发行版本说明
DM 开发版
DM 开发版是指用于业务场景开发时所用的数据库,除不支持数据库集群等企业级功能,开发版提供了完整的功能,支持 TB 级数据量,支持多用户并发访问能力,满足各种中、小型应用的需要。但开发版有授权许可的限制,仅供开发者用于学习、测试、开发用途。试用时间为 1 年,1 年后如果想继续用该库,就需要增加 dm.key。
DM Standard Edition 标准版
DM 标准版是为政府部门、中小型企业及互联网/内部网应用提供的数据管理和分析平台。它拥有数据库管理、安全管理、开发支持等所需的基本功能,支持 TB 级数据量,支持多用户并发访问等。该版本以其前所未有的易用性和高性价比,为政府或企业提供支持其操作所需的基本能力,并能够根据用户需求完美升级到企业版。
DM Enterprise Edition 企业版
DM 企业版是伸缩性良好、功能齐全的数据库,无论是用于驱动网站、打包应用程序,还是联机事务处理、决策分析或数据仓库应用, DM 企业版都能作为专业的服务平台。DM 企业版支持多 CPU,支持 TB 级海量数据存储和大量的并发用户,并为高端应用提供了数据复制、数据守护等高可靠性、高性能的数据管理能力,完全能够支撑各类企业应用。
DM Security Edition 安全版
DM 安全版拥有企业版的所有功能,并重点加强了其安全特性,引入强制访问控制功能,采用数据库管理员 (DBA)、数据库审计员 (AUDITOR)、数据库安全员 (SSO)、数据库对象操作员 (DBO) 四权分立安全机制,支持 KERBEROS、操作系统用户等多种身份鉴别与验证,支持透明、半透明等存储加密方式以及审计控制、通信加密等辅助安全手段,使 DM 安全级别达到 B1 级,适合于对安全性要求更高的政府或企业敏感部门选用。
版本对比
对比项 | 开发版 | 标准版 | 企业版 | 安全版 |
---|---|---|---|---|
最大连接数 | 无限制 | 25 | 65536 | 65536 |
最大物理CPU数量 | 2 | 2 | 无限制 | 无限制 |
最大逻辑 CPU 核数 | 32 | 32 | 无限制 | 无限制 |
使用时间 | 一年(过期需dm.key) | 无限制(付费) | 无限制(付费) | 无限制(付费) |
硬件平台支持 | Windows、Linux 6 系列、xLinux 7 系列、龙芯、飞腾、鲲鹏等 | Windows 全系列、Linux 全系列、龙芯、飞腾、神威、鲲鹏 | Windows 全系列、Linux 全系列、龙芯、飞腾、申威、泰山、海光、兆芯、Power、安腾、鲲鹏 | Windows 全系列、Linux 全系列、龙芯、飞腾、申威、泰山、海光、兆芯、Power、安腾、鲲鹏 |
最大存储容量 | 500 GB | 500 GB | 无限制 | 无限制 |
单表最大行数 | 1 亿 | 1 亿 | 无限制 | 无限制 |
单表最大列数 | 1024 | 1024 | 2048 | 2048 |
列存储 | 不支持 | 不支持 | 支持 | 支持 |
分区表 | 不支持 | 不支持 | 支持 | 支持 |
并行查询 | 不支持 | 不支持 | 支持 | 支持 |
闪回查询 | 不支持 | 不支持 | 支持 | 支持 |
全文索引 | 支持 | 不支持 | 不支持 | 支持 |
数据守护集群 | DataWatch不支持 | 不支持 | 支持 | 支持 |
读写分离集群 | DMRWC不支持 | 不支持 | 支持 | 支持 |
共享存储集群 | DMDSC不支持 | 不支持 | 支持 | 支持 |
通讯加密 | 不支持 | 不支持 | 支持 | 支持 |
存储加密 | 不支持 | 不支持 | 支持 | 支持 |
资源限制 | 不支持 | 不支持 | 不支持 IP 和时间段限制 | 支持 |
审计和实时侵害检测 | 不支持 | 不支持 | 不支持 | 支持 |
二、安装
2.1 安装包下载
达梦官网下载:达梦官网(需要注册账号)
2.2 安装流程(Linux)
1、检查软硬件信息,是否满足DM8数据库安装要求;
2、规划安装路径和安装用户(官方不建议用root), 并将安装目录所有文件的拥有者改为安装用户和安装组;
3、上传DM8数据库镜像文件到虚拟机并挂载镜像文件;
4、通过Xmanager-Passive显示图像界面安装数据库(这里使用图像化界面安装);
5、启动并初始化数据库;
2.3 安装
2.3.1 预安装工作
(1)收集软硬件信息
系统要求:Linux(glibc 2.3以上,内核2.6,已安装KDE/GNOME桌面环境,建议预先安装UnixODBC组件 gcc包);
CPU要求:特别注意:国产的芯片 华为,安腾,飞腾;
内存要求:安装数据库建议最小内存1G,Linux服务器swap分区为物理内存1.5倍以上;
磁盘要求:安装达梦程序,如需记录大量数据库SQL日志,需要扩大分区/tmp临时目录至少600M;
网络要求:100M以上支持TCP/IP协议的网卡;
注意:
远程访问数据库的要求,需要设置防火墙和selinux策略。
1)查看操作系统信息
[root@localhost ~]# uname -ra
如图为麒麟10
2)查看依赖包[root@localhost ~]#
3)查看CPU
[root@localhost ~]# cat /proc/cpuinfo
如图为华为鲲鹏
rpm -aq|grep glibc
4)查看内存
[root@localhost ~]# free -m
5)查看磁盘
[root@localhost ~]# fdisk -l
[root@localhost ~]# df -h
(2)规划安装路径
规划安装路径 /dm8
[root@localhost ~]# mkdir /dm8
(3)规划用户(不建议使用root)
规划用户 id dmdba
1)创建安装用户组 dinstall
[root@localhost ~]# groupadd dinstall
2)创建安装用户dmdba,并指定所属群组dinstall
[root@localhost ~]# useradd -g dinstall dmdba
[root@localhost ~]# id dmdba
3)初始化用户密码
[root@localhost ~]# passwd dmdba
4)将安装目录/DM8的拥有者改为安装用户dmdba和安装组dinstall
[root@localhost ~]# chown -R dmdba:dinstall /dm8
(4)配置环境变量(可选项)
进入新建的用户目录
[root@localhost dmdba]# vi .bash_profile
增加下面两条
export DM_HOME=/dm8
export PATH=PATH:PATH:HOME/.local/bin:HOME/bin:HOME/bin:DM_HOME/bin:$DM_HOME/tool
(5)操作系统参数调优
检查文件最大打开数,默认是1024:
[root@localhost ~]# ulimit -a
方式一:(临时扩大,立即可用,重启后失效)
[root@localhost ~]# ulimit -n 65536
方式二:(重新登录有生效)
[root@localhost dmdba]# vi /etc/security/limits.conf
增加下面四行
dmdba hard nofile 65536
dmdba soft nofile 65536
dmdba hard stack 32768
dmdba soft stack 16384
切换用户
su - dmdba
查看配置是否生效
ulimit -a
(6)上传数据库镜像文件并挂载
1)上传镜像文件/opt
2)挂载ISO镜像
[root@localhost opt]# cd /opt/
[root@localhost opt]# mount -o loop /opt/dm8_setup.iso /mnt
2.3.2、安装
安装前,首先新建安装目录。本文在根目录下创建 /dm8 文件夹,用来安装 DM 数据库。命令如下
mkdir /dm8
安装后的目录,需要修改安装目录权限:
chown dmdba:dinstall -R /dm8/
给安装路径下的文件设置 755 权限。命令如下:
chmod -R 755 /dm8
1、图形化安装
就是选择语言点点点(next),非常简单
2、命令行安装(linux)
切换至 dmdba 用户下,切换至 dmdba 用户下,在 /mnt 目录下使用命令行安装数据库程序,依次执行以下命令安装 DM 数据库。
切换用户:
su - dmdba
cd /mnt/
(1)在安装文件目录中运行(自建用户,官方推荐dmdba)
./DMInstall.bin -i
注:-i 为命令行方式安装
(2)选择安装语言
(3)验证 Key文件
用户可以选择是否输入 Key文件路径。不输入则进入下一步安装,输入 Key文件路 径,安装程序将显示 Key文件的详细信息,如果是合法的 Key文件且在有效期内,用户 可以继续安装。如下图所示:
(4)选择时区
国内一般为东8区:21
(5)选择安装类型
此处选择默认典型安装:1
(6)选择安装路径
用户可以输入DM的安装路径,不输入则使用默认路径,默认值为$HOME/dmdbms(如 果安装用户为 root,则默认安装目录为/opt/dmdbms,但不建议使用 root 系统用户 来安装 DM)。 如下图所示:
注意:安装选择的文件夹必须要读写权限,否则会报创建失败
数据库安装完成后,需要切换至 root 用户执行上图中的命令 /dm8/script/root/root_installer.sh 创建 DmAPService,否则会影响数据库备份。
(7)配置环境变量
切换到 root 用户进入 dmdba 用户的根目录下,配置对应的环境变量。DM_HOME 变量和动态链接库文件的加载路径在程序安装成功后会自动导入。命令如下:
export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool
编辑 .bash_profile:
cd /home/dmdba/
vim .bash_profile
使其最终效果如下图所示:
切换至 dmdba 用户下,执行以下命令,使环境变量生效。
su - dmdba
source .bash_profile
三、初始化
dminit是 DM数据库初始化工具。在安装 DM的过程中,用户可以选择是否创建初始数据库。如果当时没有创建,那么在安装完成之后,可以利用创建数据库工具 dminit来创建。
系统管理员可以利用 dminit工具提供的各种参数,设置数据库存放路径、段页大小、是否对大小写敏感、以及是否使用 UNICODE等,创建出满足用户需要的数据库。该工具位 于安装目录的/bin目录下。
dminit工具需要从命令行启动。找到 dminit所在安装目录/bin,输入 dminit和参数后回车。
dminit 命令可设置多种参数,可执行如下命令查看可配置参数。
./dminit help
初始化一个实例,命令如下:
./dminit path=/dm8/data PAGE_SIZE=16 EXTENT_SIZE=32 CASE_SENSITIVE=y LENGTH_IN_CHAR=1 CHARSET=1 DB_NAME=DAMENG INSTANCE_NAME=DMSERVER PORT_NUM=5236
命令说明:初始化一个数据库,放在/dm/data 目录下,数据页PAGE_SIZE大小为16K。编码默认为GBK,一般推荐Utf-8编码。
需要注意的是页大小 (page_size)、簇大小 (extent_size)、大小写敏感 (case_sensitive)、字符集 (charset) 、length_in_char 等这些参数,一旦确定无法修改,需谨慎设置。
- extent_size:指数据文件使用的簇大小,即每次分配新的段空间时连续的页数。只能是 16 页或 32 页或 64 页之一,缺省使用16 页。
- page_size:数据文件使用的页大小,可以为 4 KB、8 KB、16 KB 或 32 KB 之一,选择的页大小越大,则DM 支持的元组长度也越大,但同时空间利用率可能下降,缺省使用 8 KB。
- case_sensitive:标识符大小写敏感,默认值为 Y 。当大小写敏感时,小写的标识符应用双引号括起,否则被转换为大写;当大小写不敏感时,系统不自动转换标识符的大小写,在标识符比较时也不区分大小写,只能是Y、y、N、n、1、0 之一。
- charset:字符集选项。0 代表 GB18030;1 代表 UTF-8;2 代表韩文字符集EUC-KR;取值 0、1 或 2 之一。默认值为 0。
- length_in_char:varchar类型长度是否以字符为单位(可选Y/N,默认为N,即不以字符为单位);
如果创建成功,则屏幕显示如下:
此时在/dm8/data/ 目录下会出现一个 DAMENG 文件夹,内容包含初始数据库 DAMENG的相关文件和 DM数据库启动所必须的配置文件 dm.ini。
注意:初始化目录需要设置读写权限,否则无法初始化。File ‘’ has already exist!
设置读写权限:
chmod -R 777 /home
四、服务注册
(1)注册服务
只有注册了服务,才会每次自动启动DM数据库服务,而不用手动启动。
注册服务需使用 root 用户进行注册。使用 root 用户进入数据库安装目录的 /script/root 下,如下所示:
cd /dm8/script/root
注册服务,如下所示:
./dm_service_installer.sh -t dmserver -dm_ini /dm8/data/DAMENG/dm.ini -p DMSERVER
下图为注册成功样例:
注意:用户可根据自己的环境更改 dm.ini 文件的路径以及服务名。
初始化完成后,用户可以通过DM管理工具登录使用。如果连接不上,通过前台启动数据库调试:
进入安装 bin 目录,执行一下命令:
./dmserver /初始化路径/DAMENG/dm.ini
(2)注销实例
root用户进入 /dm8/bin 目录,执行:
./dm_server_uninstaller.sh -n 实例名
实例删除后,删除对应的data文件夹。
五、启动、停止数据库
服务注册成功后,启动数据库,如下所示:
(1)启动数据库
systemctl enable DmServiceDMSERVER.service
systemctl start DmServiceDMSERVER.service
注意:如果启动失败:Job for DmServiceDMSERVER.service failed because the control process exited with error code. See “systemctl status DmServiceDMSERVER.service” and “journalctl -xe” for details.
可能是文件权限不够,执行以下命令重试:
chmod -R 777 /dm8/data
(2)查看数据库服务状态
systemctl status DmServiceDMSERVER.service
当状态为 running 时启动成功。
如果启动失败,可能是文件夹权限不够造成,设置文件权限重新尝试。
当防火墙处于运行状态时需先关闭防火墙。也会导致服务启动失败,linux关闭防火墙:
systemctl stop firewalld
(3)停止数据库
systemctl stop DmServiceDMSERVER.service
(4)重启数据库
systemctl restart DmServiceDMSERVER.service
(5)前台启动
进入 DM 安装目录下的 bin 目录下,命令如下:
./dmserver /dm/data/DAMENG/dm.ini
该启动方式为前台启动,若想关闭数据库,则输入 exit 即可。
也可进入 DM 安装目录下的 bin 目录下,启动/停止/重启数据库,如下所示:
./DmServiceDMSERVER start/stop/restart
查看数据库状态,如下所示:
./DmServiceDMSERVER status
六、连接与使用
通过达梦管理工具连接数据库。如图所示:
新安装的达梦数据库,默认有一个超级管理用户:SYSDBA,密码一般为:SYSDBA,或者 SYSDBA001。
登录SYSDBA用户后,可新建其他用户。
文章导航:
达梦数据库入门指南(二)- 达梦数据库概念说明
达梦数据库入门指南(三)- 模式概念与基本使用
达梦数据库入门指南(四)- 数据迁移
达梦数据库入门指南(五)- 达梦数据库兼容适配常见问题原因分析与解决
更多推荐
达梦数据库入门指南(一)- 安装与初始化教程(Linux)
发布评论