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

centos7 如何卸载和安装达梦数据库实例

1.DM8数据库的卸载和安装

1.1 卸载数据库(卸载和安装部分建议反过来看)

1.1.1 运行uninstall.sh

脚本所在位置为DM8数据库安装所在目录

# 进入DM数据库所在安装目录

cd /dm8

# 运行卸载脚本

./uninstall.sh

1.1.2  查看安装目录剩下的文件

ll

1.1.3  清空安装目录 

# 在该目录下执行如下命令,删除所有文件

rm -rf *

# 查看安装目录是否清空

ls

1.2 安装数据库 

1.2.1 创建用户组和用户

# 创建用户组

groupadd dinstall

# 创建用户

useradd -g dinstall dmdba

# 创建用户—带home

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

# 为dmdba用户设置密码

passwd dmdba

# 创建完成后使用以下命令查看是否成功

id dmdba

1.2.2 规划软件安装路径

# 创建数据库安装路径,注意该文件夹为root用户创建

mkdir /dm8

# 授予dmdba用户操作dm8文件夹的权限

chown dmdba:dinstall /dm8

# 查看是否授予成功,正确结果如下图所示

ll -ld /dm8

1.2.3 设置文件最大打开数

Linux系统对文件打开的数量有最大的限制,它通常设置为1024,这个数值很容易会达到,从而造成系统程序或系统的瓶颈。所有在进行DM8的安装之前建议修改文件最大打开数。

# 查看最大可打开文件数

ulimit -a

# 临时设置,仅当前会话生效

ulimit -n 65536

# 永久设置,需要root用户操作

vi /etc/security/limits.conf

# 然后写入如下内容,保存退出,重启服务器生效

dmdba soft core unlimited
dmdba hard core unlimited
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba soft nproc 65536
dmdba hard nproc 65536
dmdba soft stack 65536
dmdba hard stack 65536

root soft nofile 65536

root hard nofile 65536

之后用 ulimit -a 查看是否修改成功

检查limit限制

ulimit -a|grep open

ulimit -a|grep stack

用户环境变量

执行以下命令,修改 dmdba 用户环境变量:

vi /home/dmdba/.bash_profile

文件末尾添加如下内容:

export DM_HOME=/dmdbms
export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$DM_HOME/bin

防火墙设置

生产环境应该对特定客户端开放数据库监听端口,并修改 DM 数据库默认的 5236 监听端口,防火墙配置

在CentOS系统中,可以使用firewalld来管理防火墙并开放端口。以下是开放特定端口的步骤和示例代码:

  1. 首先,确保firewalld正在运行:

sudo systemctl start firewalld

sudo systemctl enable firewalld

  1. 使用firewall-cmd命令来开放端口。例如,如果你想要开放TCP端口5236:

sudo firewall-cmd --zone=public --add-port=5236/tcp --permanent

  1. 重新加载防火墙以应用更改:

sudo firewall-cmd --reload

  1. (可选)检查端口是否已经开放:

sudo firewall-cmd --zone=public --list-ports

确保在执行这些操作时你有足够的权限,通常需要root权限。如果你不是以root用户登录,请在命令前加上sudo。

1.2.4 挂载安装文件

# 挂载镜像 mount /镜像地址 /挂载的目标路径

mount -o loop /opt/dm8_20220525_x86_rh6_64.iso /mnt

我下载镜像解压后将文件拷贝到/home/dmdba目录下

1.2.5 图形化界面安装

此时需要设置DISPLAY,否则调用图形化界面会失败

# 打开终端,需要root用户,执行如下命令

xhost +

# 查看DISPLAY变量值

echo $DISPLAY

# 切换到dmdba用户

su - dmdba

# 设置DISPLAY值,为root用户下查出的DISPLAY变量值,注意仅对当前会话生效

export DISPLAY=:0

# 然后执行如下命令,即可在该会话下调用图形化界面(额,其实好像不加下面这个命令也可以调用,也许只是为了确认设置成功了吧)

xhost +

# 接着进入到挂载目录

cd /mnt

我自己放在 home/dmdba下

cd /home/dmdba

# 执行图形化安装程序

sudo ./DMInstall.bin

提示:“dmdba 不在 sudoers 文件中。此事将被报告。

1 切换至root用户

su – root

2 给root用户添加可写权限

chmod 640 /etc/sudoers

3 修改sudoers文件

vim /etc/sudoers

按下i开始插入

dmdba   ALL=(ALL:ALL) ALL    #Ubuntu

dmdba   ALL=(ALL)       ALL   #centos

按下esc键,输入:wq保存修改并退出编辑。

然后你就可以根据自己的需求进行相应的设置了,key路径可以不用填,一般如果你没有什么特殊要求的话,就只要改个安装路径就行,其余不用动,然后注意根据它的提示进行相应的操作,慢慢来,看清,不要错过了一些步骤设置,相信图形化肯定难不倒你,所以此处省略n张图片。

命令行安装

# 与图形化安装唯一不同的就是加了一个 -i

./DMInstall.bin -i

2.数据库实例管理

2.1 创建数据库实例

2.1.1 图形化创建

# 进入DM的工具目录

cd /dm8/tool

# 启动DM配置助手

./dbca.sh

这里就不一一展示之后的图形化步骤了(此处省略9张或者更多图片),然后你就可以根据自己的需求进行相应的配置,唯一需要注意的就是下面这个,如果没用root执行这三个脚本命令,可能会导致数据库服务创建失败,数据库无法启动。

# mv /dm8/bin/DmServiceDMSERVER.service /usr/lib/systemd/system/DmServiceDMSERVER.service

  cd /usr/lib/systemd/system

# systemctl enable DmServiceDMSERVER.service

# systemctl start DmServiceDMSERVER.service

2.1.2 命令行创建

手动建库

# dmdba用户执行

cd /dm8/bin

# 查看帮助手册

./dminit help

# 创建数据库

./dminit db_name=TEST instance_name=TEST port_num=5237 path=/dm8/data

手动注册服务

# root用户执行

cd /dm8/script/

# 注册数据库服务,-p 设置服务名后缀

./dm_service_installer.sh -t dmserver -p TEST -dm_ini /dm8/data/TEST/dm.ini

设置开机自动启动数据库服务,注意数据库服务名前缀是定死了的,为DmService

# root用户执行

systemctl enable DmServiceTEST.service

2.2 数据库连接

2.2.1 disql 工具

1 ) /dm8/bin    类似于oracle sqlplus username/passwd

# 进入到bin目录

cd /dm8/bin

# 本地连接可省略ip

./disql SYSDBA/SYSDBA:5236

# 连接远程服务器需要加上ip

./disql SYSDBA/SYSDBA@223.254.16.66:5236

2 ) /dm8/tool    类似于oracle sqlplus /nolog

connect username/passwd

# 进入到tool目录

cd /dm8/tool

# 使用disql连接,本地连接可省略ip

./disql

# 然后 connect 用户名/密码:端口号

connect SYSDBA/SYSDBA:5236

 2.2.2 manager工具

# 进入到tool目录

cd /dm8/tool

# 运行manager工具

./manager


http://www.kler.cn/a/403613.html

相关文章:

  • dockerfile构建Nginx镜像练习二(5-2)
  • 网络安全服务人才发展路线图
  • MongoDB 更新集合名
  • 【算法】计算程序执行时间(C/C++)
  • 【Vue】指令扩充(指令修饰符、样式绑定)
  • 46并发编程(线程、进程)
  • Java项目实战II基于Spring Boot的社区医疗综合服务平台的设计与实现(开发文档+数据库+源码)
  • PostgreSQL TRUNCATE TABLE
  • 自然语言处理(NLP):让机器理解人类语言
  • 【模块一】kubernetes容器编排进阶实战资源对象之Configmap与Secret简介
  • 3、PyTorch张量的运算API(下)
  • .NET SDK 各操作系统开发环境搭建
  • 爬虫优化策略优化请求逻辑
  • i春秋-GetFlag(md5加密,字符串比较绕过)
  • 基于单片机的婴儿监测系统设计
  • 淘宝 NPM 镜像源
  • 【AI系统】AI 发展驱动力
  • cocoscreator-doc-TS-脚本开发-模块化脚本
  • 使用vscode+expo+Android夜神模拟器运行react-native项目
  • web 入门
  • 241120学习日志——[CSDIY] [InternStudio] 大模型训练营 [09]
  • EF Core学习笔记三
  • web——sqliabs靶场——第八关——sqlmap的使用
  • RandSampleMatrix-矩阵乘法实现
  • 一文了解 OpenAI o1-preview 和目前不支持传入的参数
  • 在 C++ 容器中,插入或修改元素时