Linux部署达梦数据库

青提葡萄 2024-09-30 15:37:02 阅读 58

文章目录

一、安装1.环境准备2.安装3.初始化实例4.注册服务5.启动服务6.查看服务进程7.连接测试

二、卸载三、相关报错1.解决4080 group by 报错问题2.创建 SOCKET 连接失败/网络通讯异常


<code>提示:以下是本篇文章正文内容,下面案例可供参考

一、安装

参考相关文章:

https://www.cnblogs.com/daiss314/p/14745937.html

https://blog.csdn.net/qq_37358909/article/details/113343515

1.环境准备

注:最好用非root用户登录服务器,需要root用户执行的命令,直接sudo+命令即可。

数据库下载去http://www.dameng.com,这里以dm8_20240408_x86_rh7_64.iso为例介绍。

AIt

解压iso,后复制到服务器(这里放在/home/admin/dameng)。

这里用普通用户admin登录并赋予sudo权限。如果有普通用户,此步骤可省略:

创建用户:adduser admin编辑密码:passwd admin123把admin添加到sudoer组里去,先切换到root用户:su root编辑文件:vim /etc/sudoers

找到文件中的 “root ALL=(ALL) ALL” 这一行,然后在下面一行添加普通用户的信息,格式为:

admin ALL=(ALL) ALL

保存文件,退出即可,执行::wq!参看所有用户:cat /etc/passwd |cut -d: -f 1-3

2.安装

<code>进入:cd /home/admin/dameng

执行:./DMInstall.bin -i

按照如下提示一步步填写:

AIt

安装结束之后,需要sudo 执行一次脚本:

<code>sudo /home/admin/dmdbms/script/root/root_installer.sh

AIt

看到如下目录安装完成。

AIt

3.初始化实例

<code>进入数据库bin执行目录:cd /home/admin/dmdbms/bin

执行:./dminit PATH=/home/admin/dmdbms/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=N LOG_SIZE=2048 CHARSET=1 LENGTH_IN_CHAR=Y DB_NAME=DMDB LOG_SIZE=2048 INSTANCE_NAME=DMSERVER_DMDB PORT_NUM=5236 SYSDBA_PWD=SYSDBA

AIt

参数解读:

参数 含义
PATH 数据库初始化目录
SYSDBA_PWD 初始化时设置SYSDBA的密码,默认为SYSDBA。密码长度为 9 到 48。
PAGE_SIZE=32 数据页大小 单位:KB
EXTENT_SIZE=32 簇大小 单位:页
CASE_SENSITIVE=Y 大小敏感(Y)
CHARSET=0 字符集(0),可选值:0[GB18030],1[UTF-8],2[EUC-KR]
LENGTH_IN_CHAR=Y 默认N,建议Y,VARCHAR类型长度是否以字符为单位,可选值:Y/N
DB_NAME=DAMENG 数据库名(DAMENG)
BLANK_PAD_MODE=0 设置空格填充模式(默认0), 可选值:0/1设置字符串比较时,结尾空格填充模式是否兼容 ORACLE。取值:1 兼容。
LOG_SIZE=2048 默认256,REDO日志文件大小 单位为:M
INSTANCE_NAME=DMSERVER 实例名(DMSERVER)
PORT_NUM=5236 监听端口号,默认5236

看到如下目录初始化数据库完成。

AIt

4.注册服务

首先检查dm.ini的位置:/home/admin/dmdbms/data/DMDB(在安装的数据库默认路径下)

<code>进入:cd /home/admin/dmdbms/script/root

执行:sudo ./dm_service_installer.sh -t dmserver -dm_ini /home/admin/dmdbms/data/DMDB/dm.ini -p DMSERVER

注:-t服务类型 dmserver -dm_ini ini文件路径 -p 服务后缀名

AIt

5.启动服务

<code>进入:cd /home/admin/dmdbms/bin

执行:./DmServiceDMSERVER start

AIt

6.查看服务进程

<code>执行:ps -ef|grep dmserver

AIt

7.连接测试

<code>进入:cd /home/admin/dmdbms/bin

执行:./disql sysdba #密码默认为:SYSDBA

查询:select *from v$instance

注:若设置端口号为其他,通过以下方式执行:./disql user/pass@ip:port

如果密码有特殊字符要加上'```',eg:./disql '''user'''/'''pass'''@ip:port

AIt

二、卸载

参考相关文章:

https://blog.csdn.net/D15306354614/article/details/109677234

https://blog.csdn.net/weixin_42942173/article/details/131353754

卸载DM8数据库,进入bin目录下停止达梦数据库服务,再退出bin目录执行卸载。

<code>进入:cd /home/admin/dmdbms/bin

执行:./DmServiceDMSERVER stop

退出:cd ..

执行:./uninstall.sh -i

AIt

2. sudo执行sh文件

<code>执行:sudo /home/admin/dmdbms/root_uninstaller.sh

AIt

3. 删除数据库文件

AIt

三、相关报错

1.解决4080 group by 报错问题

参考相关文章:

https://blog.csdn.net/qq_37898570/article/details/126951104

报错:

AIt

解决方法:修改dm.ini的COMPATIBLE_MODE参数为4,然后重启数据库。

<code>执行:sp_set_para_value(2,'COMPATIBLE_MODE',4);

退出:quit

重启数据库:./DmServiceDMSERVER restart #需要在bin目录下

登录:./disql sysdba #密码默认为:SYSDBA

AIt

查看是否修改成功:

<code>查询:select para_name,para_value,file_value from v$dm_ini where para_name='COMPATIBLE_MODE';code>

查询:SELECT * FROM ACTIVITIDB.ACT_HI_VARINST WHERE ID_ ='1005002' GROUP BY PROC_INST_ID_ ;

AIt

2.创建 SOCKET 连接失败/网络通讯异常

参考相关文章:

https://blog.csdn.net/weixin_50694517/article/details/115876277

确认 dm.ini 文件中port_num端口号。

默认端口号为 5236,若设置端口号为其他,通过以下方式执行:

<code>./disql user/pass@ip:port

如果密码有特殊字符要加上’```’

./disql '''user'''/'''pass'''@ip:port



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。