当前位置: 首页 > news >正文

Linux(CentOS7)搭建达梦数据库

参考官方文档
本文记录一下达梦数据库的安装步骤,在安装的过程中出现了一些问题,进行了处理。

文章目录

  • 安装前准备
  • 数据库安装
    • 命令行安装
    • 图形化安装
  • 配置实例
  • 注册服务
  • 启动、停止数据库
  • 达梦数据库卸载

安装前准备

用户在安装 DM 数据库之前需要检查或修改操作系统的配置,以保证 DM 数据库能够正确安装和运行。
新建 dmdba 用户

注意
安装前必须创建 dmdba 用户,禁止使用 root 用户安装数据库。

1.创建用户所在的组,命令如下:

groupadd dinstall

2.创建用户,命令如下:

useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba

3.修改用户密码,命令如下:

passwd dmdba

4.修改文件打开最大数
修改文件打开最大数
重启服务器后永久生效
使用 vim 编辑器打开 /etc/security/limits.conf 文件,命令如下:

vi /etc/security/limits.conf

在最后添加四条语句,需添加的语句如下:

dmdba hard nofile 65536
dmdba soft nofile 65536
dmdba hard stack 32768
dmdba soft stack 16384

切换到 dmdba 用户,查看是否生效,命令如下:
su - dmdba
ulimit -a
设置参数临时生效
可使用 dmdba 用户执行如下命令,使设置临时生效:

ulimit -n 65536

挂载镜像
切换到 root 用户,将 DM 数据库的 iso 安装包保存在任意位置,例如 /mnt/soft 目录下,执行如下命令挂载镜像:

mount -o loop /mnt/soft/dm8_20230418_x86_rh6_64.iso /mnt/dmdba

新建安装目录
在根目录下创建 /dm8 文件夹,用来安装 DM 数据库。命令如下:

mkdir /mnt/dm8

注意
使用 root 用户建立文件夹,待 dmdba 用户建立完成后需将文件所有者更改为 dmdba 用户,否则无法安装到该目录下

修改安装目录权限
将新建的安装路径目录权限的用户修改为 dmdba,用户组修改为 dinstall。命令如下:

chown dmdba:dinstall -R /mnt/dm8

给安装路径下的文件设置 755 权限。命令如下:

chmod -R 755 /mnt/dm8

数据库安装

DM 数据库在 Linux 环境下支持命令行安装和图形化安装,本章节将分别进行详细介绍。

命令行安装

切换至 dmdba 用户下,在 /mnt/soft 目录下使用命令行安装数据库程序,依次执行以下命令安装 DM 数据库。

su - dmdba
cd /mnt/soft
./DMInstall.bin -i

按需求选择安装语言,默认为中文。本地安装选择【不输入 Key 文件】,选择【默认时区 21】。
在这里插入图片描述
选择【1-典型安装】,按已规划的安装目录 /dm8 完成数据库软件安装,不建议使用默认安装目录。
在这里插入图片描述
数据库安装大概 1~2 分钟,数据库安装完成后,显示如下界面。
在这里插入图片描述
数据库安装完成后,需要切换至 root 用户执行上图中的命令 /mnt/dm8/script/root/root_installer.sh 创建 DmAPService,否则会影响数据库备份。

图形化安装

切换到 dmdba 用户,进入 /mnt 目录下,执行命令开始图形化安装。

su - dmdba
cd /mnt/soft
./DMInstall.bin

若出现:初始化图形界面失败,如果当前监视器窗口不支持图形界面,请进入安装文件所在文件夹并使用"./DMInstall.bin -i"进行命令行安装。错误提示,可按以下两种方式操作解决:

方法一:注销当前用户,登陆 dmdba 用户,执行 ./DMInstall.bin 命令。
方法二:用当前用户执行 xhost +,切换到 dmdba 用户,执行 export DISPLAY=:0,再执行 xhost +命令。
图形化界面启动成功后,将弹出【选择语言与时区】页面,默认为简体中文和中国标准时间。
在这里插入图片描述

点击【确定】后,弹出 DM 数据库安装程序。
在这里插入图片描述
点击【下一步】后,为许可证协议页面,选择【接受】。
在这里插入图片描述

点击【下一步】后,弹出 key 文件页面,点击【浏览】选择【key 文件】,若没有 key 文件可以直接点击【下一步】,跳过该步骤。

在这里插入图片描述
点击【浏览】后,找到相应的 key 文件,点击【确定】即可。
在这里插入图片描述
点击【下一步】后,弹出选择组件页面,建议选择典型安装,也可根据需要,选择服务器安装、客户端安装和自定义安装。
在这里插入图片描述
点击【下一步】后,弹出选择安装位置页面,可点击【浏览】选择安装位置,也可安装在默认路径下。
在这里插入图片描述
点击【下一步】后,弹出确认安装信息页面,检查安装信息是否准确,确认无误后点击【安装】。
在这里插入图片描述
点击【安装】后,等待 1~2 分钟即可安装完成,安装完成后弹出执行配置脚本页面,按照页面要求执行该脚本即可。
在这里插入图片描述
重新打开一个终端,切换到 root 用户,执行弹出页面中的脚本。
在这里插入图片描述
脚本执行完成后,点击执行配置脚本页面中的【完成】,弹出提示框,提示是否关闭窗口,选择是,提示数据库安装完成,再点击【完成】按钮,完成数据库安装。
在这里插入图片描述
在这里插入图片描述
配置环境变量
切换到 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

配置实例

DM 数据库在 Linux 环境支持命令行配置实例以及图形化配置实例,本章节将介绍命令行配置实例。
使用 dmdba 用户配置实例,进入到 DM 数据库安装目录下的 bin 目录中,使用 dminit 命令初始化实例。

dminit 命令可设置多种参数,可执行如下命令查看可配置参数。

./dminit help

在这里插入图片描述
需要注意的是页大小 (page_size)、簇大小 (extent_size)、大小写敏感 (case_sensitive)、字符集 (charset) 这四个参数,一旦确定无法修改,需谨慎设置。

  • 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。
    可以使用默认参数初始化实例,需要附加实例存放路径。此处以初始化实例到 /dm/data 目录下为例(执行初始化命令前,需要使用 root 用户授予 /dm/data 目录相应权限,可以参考修改目录权限),初始化命令如下:
./dminit path=/mnt/dm/data

在这里插入图片描述
也可以自定义初始化实例的参数,参考如下示例:

以下命令设置页大小为 32 KB,簇大小为 32 KB,大小写敏感,字符集为 utf_8,数据库名为 DMDB,实例名为 DBSERVER,端口为 5237。

./dminit path=/mnt/dm8/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y CHARSET=1 DB_NAME=DMDB INSTANCE_NAME=DBSERVER PORT_NUM=5237

在这里插入图片描述

注意
如果此处自定义了初始化参数,在后面的注册服务和启动数据库等步骤中,请按实际的自定义参数进行操作。

注册服务

注册服务需使用 root 用户进行注册。使用 root 用户进入数据库安装目录的 /script/root 下,如下所示:

cd /mnt/dm8/script/root

注册服务,如下所示:

./dm_service_installer.sh -t dmserver -dm_ini /mnt/dm8/data/DAMENG/dm.ini -p DMSERVER

用户可根据自己的环境更改 dm.ini 文件的路径以及服务名,如下所示:

./dm_service_installer.sh -h

如需为其他实例注册服务,需打开 dbca 工具,进行注册服务,如下所示:

cd /mnt/dm8/tool
./dbca.sh

启动、停止数据库

服务注册成功后,启动数据库,如下所示:

systemctl start DmServiceDMSERVER.service

停止数据库,如下所示:

systemctl stop DmServiceDMSERVER.service

重启数据库,如下所示:

systemctl restart DmServiceDMSERVER.service

查看数据库服务状态,如下所示:

systemctl status DmServiceDMSERVER.service

可前台启动,进入 DM 安装目录下的 bin 目录下,命令如下:

./dmserver /mnt/dm8/data/DAMENG/dm.ini

该启动方式为前台启动,若想关闭数据库,则输入 exit 即可。

也可进入 DM 安装目录下的 bin 目录下,启动/停止/重启数据库,如下所示:

./DmServiceDMSERVER start/stop/restart

查看数据库状态,如下所示:

./DmServiceDMSERVER status

启动的时候报错:
Job for DmServiceDMSERVER.service failed because the control process exited with error code. See “systemctl status DmServiceDMSERVER.service” and “journalctl -xe” for details.
是由于/mnt/dm8授予的文件夹权限不一致导致的

达梦数据库卸载

关闭数据库服务

systemctl stop DmServiceDMSERVER.service 

进入安装目录,执行卸载命令

./uninstall.sh -i

按照提示进行删除
在这里插入图片描述
将剩下的log和data目录下的文件删除,里面存的是数据库配置文件、日志文件和数据文件

rm -rf /dm8/*

卸载完毕

相关文章:

Linux(CentOS7)搭建达梦数据库

参考官方文档 本文记录一下达梦数据库的安装步骤,在安装的过程中出现了一些问题,进行了处理。 文章目录 安装前准备数据库安装命令行安装图形化安装 配置实例注册服务启动、停止数据库达梦数据库卸载 安装前准备 用户在安装 DM 数据库之前需要检查或修…...

[杂谈]-国产MCU竞争力浅析

[杂谈]-国产MCU竞争力浅析 文章目录 [杂谈]-国产MCU竞争力浅析1、研发方面2、技术方面3、市场方面4、应用方面5、生态方面6、总结 微控制器(MCU)是一种集成了微处理器、存储器、输入/输出接口和其他外设的单片电路,广泛应用于各种电子产品和系…...

4.1、Flink任务怎样读取集合中的数据

1、API说明 非并行数据源: def fromElements[T: TypeInformation](data: T*): DataStream[T] def fromCollection[T: TypeInformation](data: Seq[T]): DataStream[T] def fromCollection[T: TypeInformation] (data: Iterator[T]): Data…...

JD商品详情页面+关键词搜索商品列表API接口数据,详情页面数据返回值说明

作为一个工作助手,我无法直接为您提供实时的京东商品详情。您可以通过访问京东官方网站或使用API接口来查看商品的详细信息。每个商品的详情页面通常会包括以下内容: 1. 商品标题:商品的名称和简要描述。 2. 价格信息:包括原价、…...

Electron v26.0.0-beta.11 发布,跨平台桌面应用开发工具

Electron是一款跨平台桌面应用开发工具,它基于Web技术,使用HTML、CSS和JavaScript来构建应用程序。它能够让开发者使用熟悉的Web开发技术来创建强大的桌面应用,并且可以运行在Windows、macOS和Linux等多个操作系统上。 一、Electron的特点 跨平台:Electron可以将Web技术转…...

提高办案效率:公检系统引入自动校对技术

引入自动校对技术到公检系统中可以有效提高办案效率。自动校对技术结合公检系统的特点,可以在以下方面提高办案效率: 1.节省时间:自动校对技术可以快速检测和修正法律文书中的语法、拼写和标点符号等错误。与手动校对相比,自动校对…...

iptables 清空

清空 iptables中所有策略。 -Z: 重置计数器 -F:删除所有规则(flush) -X:删除所有自定义的链 规则清理和重建如下: iptables -Z iptables -t nat -F iptables -t nat -X iptables -t nat -P PREROUTING A…...

网络安全(黑客)零基础入门

导语 什么是 Web 安全?我又该如何入门学习它呢?学习过程中又应注意哪些问题呢?... 或许你的心中有着这样的疑问、不过别着急,本文会为你一一解答这些问题。 正文 定义 Web 安全,顾名思义便是由保障 Web 应用能够持续…...

Al Go: 蒙特卡洛树搜索(MCTS)简介

目录 1. 前言 1.1 Minimax 1.2 剪枝 1.3 蒙特卡洛树搜索 1.4 为什么随机走子会可行呢? 2. vanilla Monte Carlo tree search 3. UCT-based trade-off between exploitation and exploration 4. MCTS基本算法流程 5. Efficiency Through Expert Policies 6…...

Client-go操作Deployment

在工作中需要对kubernetes进行自定义资源的开发,操作K8s的资源肯定是必不可少的。K8s原生语言是用Go编写的,所以在CRD中使用client-go来操作资源。本次介绍一下使用client-go来操作Deployment。 1. 创建main函数 func main() {homePath : homedir.Home…...

设计模式——单例模式(懒汉和饿汉)

单例模式 一、概念 单例模式是一种对象创建型模式,使用单例模式,可以保证为一个类只生成唯一的实例对象。也就是说,在整个程序空间中,该类只存在一个实例对象。一个类只能有一个实例在生活中是很常见的,比如打印机程…...

详解——Vue3递归函数功能

在 Vue 3 中,递归函数是一种在组件中调用自身的技术。递归函数在解决树状数据结构、无限级分类、嵌套组件等情况下非常有用。以下是一个示例,展示如何在 Vue 3 中实现递归函数的功能、代码和原理: 1. 创建递归组件: 首先&#x…...

【VSCode】查看二进制文件

1.安装插件Hex Editor 2.打开二进制文件 3.执行Hex Editor命令...

C#设计模式之观察者模式

题目:假设你正在开发一个简单的新闻发布系统,该系统允许用户订阅不同的新闻频道,并在有新闻发布时向订阅者发送通知。使用观察者模式设计和实现该系统。观察者模式的相关概念和定义: 观察者模式是一种行为设计模式,它定…...

小红书攻略:爆款引流,如何在激烈竞争中脱颖而出?

小红书(RED)作为国内最具影响力的社交电商平台之一,是很多品牌运营者的首选之一。然而,在小红书的激烈竞争中,如何快速引流、吸引关注,成为了品牌运营者面临的挑战。本篇文章一秒推小编将为您介绍小红书运营…...

Ubuntu中的安装卸载及删除方法

说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装、卸载和删除的方法。 一、Ubuntu中软件安装方法 1、APT方式 (1&#xff0…...

获取历史dokcer镜像项目,并上传gitlab,再打包镜像管理

今天遇到一个问题: 发现一个部署在Jenkins的脚本用的docker镜像是:test_project:v20191108,即这个项目是19年的一个版本,由于代码不断更新,用现在的最新代码运行该脚本,可能不能运行了,必须用19…...

【Go语言】Golang保姆级入门教程 Go初学者chapter3

Go语言 第三章 运算符 下划线“_”本身在Go中一个特殊的标识符,成为空标识符。可以代表任何其他的标识符,但是他对应的值就会被忽略 仅仅被作为站维度使用, 不能作为标识符使用 因为Go语言中没有private public 所以标记变量首字母大写代表其…...

网络防御(4)

一、结合以下问题对当天内容进行总结 1. 什么是IDS? 2. IDS和防火墙有什么不同? 3. IDS工作原理? 4. IDS的主要检测方法有哪些详细说明? 5. IDS的部署方式有哪些? 6. IDS的签名是什么意思?签名过滤器有什么…...

conda错误处理:ResolvePackageNotFound

当运行conda env create -f environment.yaml时出现"ResolvePackageNotFound"错误,这可能是由于环境配置文件中指定的依赖项无法找到或不可用。 错误消息中列出的依赖项包括pip20.3、python3.8.5和cudatoolkit11.3。 尝试以下解决方案: 更新…...

汽车生产虚拟实训中的技能提升与生产优化​

在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)

【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署&#xff0c;直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型&#xff0c;但是目前国内可能使用不多&#xff0c;至少实践例子很少看见。开发训练模型就不介绍了&am…...

用机器学习破解新能源领域的“弃风”难题

音乐发烧友深有体会&#xff0c;玩音乐的本质就是玩电网。火电声音偏暖&#xff0c;水电偏冷&#xff0c;风电偏空旷。至于太阳能发的电&#xff0c;则略显朦胧和单薄。 不知你是否有感觉&#xff0c;近两年家里的音响声音越来越冷&#xff0c;听起来越来越单薄&#xff1f; —…...

#Uniapp篇:chrome调试unapp适配

chrome调试设备----使用Android模拟机开发调试移动端页面 Chrome://inspect/#devices MuMu模拟器Edge浏览器&#xff1a;Android原生APP嵌入的H5页面元素定位 chrome://inspect/#devices uniapp单位适配 根路径下 postcss.config.js 需要装这些插件 “postcss”: “^8.5.…...

【生成模型】视频生成论文调研

工作清单 上游应用方向&#xff1a;控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定&#xff0c;这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中&#xff0c;积分电荷法最为常用&#xff0c;其原理是通过测量在电容器上积累的热释电电荷&#xff0c;从而确定热释电系数…...

站群服务器的应用场景都有哪些?

站群服务器主要是为了多个网站的托管和管理所设计的&#xff0c;可以通过集中管理和高效资源的分配&#xff0c;来支持多个独立的网站同时运行&#xff0c;让每一个网站都可以分配到独立的IP地址&#xff0c;避免出现IP关联的风险&#xff0c;用户还可以通过控制面板进行管理功…...

归并排序:分治思想的高效排序

目录 基本原理 流程图解 实现方法 递归实现 非递归实现 演示过程 时间复杂度 基本原理 归并排序(Merge Sort)是一种基于分治思想的排序算法&#xff0c;由约翰冯诺伊曼在1945年提出。其核心思想包括&#xff1a; 分割(Divide)&#xff1a;将待排序数组递归地分成两个子…...