目录

一、安装准备

二、安装过程 

三、开发驱动配置

最近参加了达梦DCA课程的培训,培训内容主要包括国内外数据库现状介绍、DM8单机版部署、数据库创建及实例管理、SQL部分、DM8体系结构、表空间管理、用户与模式、备份与还原、作业管理、开发驱动配置等。

由于DM8很多概念类似Oracle,本文主要介绍DM8的安装部署及开发驱动配置,供大家参考。

一、安装准备

操作系统:RedHat7.7

备注:软件安装在普通用户dmdba下

0.软件安装包。 dm8_20211021_x86_rh6_64_ent.zip(官网下载的redhat7下的安装包) dm.key(老师上课给的试用key)1.操作系统内核设置 vi /etc/sysctl.conf  kernel.shmall = 2097152 # 可以使用的共享内存的总量,单位:页。 kernel.shmmax = 2147483648 # 最大单个共享内存段大小。取物理内存大小的一半,单位为字节 kernel.shmmni = 4096 # 整个系统共享内存段的最大数目。 kernel.sem = 250 32000 100 128 # 每个信号对象集的最大信号对象数;系统范围内最大信号对象数;每个信号对象支持的最大操作数;系统范围内最大信号对象集数。 sysctl -p 设置生效

vi /etc/security/limits.conf ,添加以下内容 dmdba soft nofile 65536   dmdba hard nofile 65536   dmdba soft nproc 65536   dmdba hard nproc 65536 检查命令 ulimit -a

2.防火墙设置 systemctl status firewalld systemctl stop firewalld systemctl disable firewalld3.SeLinux设置 vi /etc/selinux/config,设置SELINUX=disabled,重启系统reboot 重启后检查 /usr/sbin/sestatus -v 4.磁盘调度算法 cat /sys/block/vda/queue/scheduler --根据实际按需设置 echo deadline > /sys/block/vda/queue/scheduler5.内存参数 cat /proc/sys/vm/overcommit_memory   建议设置为0。6.禁用透明大页 cat /sys/kernel/mm/transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/defrag echo never > /sys/kernel/mm/transparent_hugepage/enabled7.禁用numa 检查numa禁用 dmesg | grep -i numa cat /proc/cmdline 如未禁用,参照以下步骤禁用: vi /etc/default/grub , 加上:numa=off GRUB_CMDLINE_LINUX="rhgb quiet intel_idle.max_cstate=0 processor.max_cstate=1 transparent_hugepage=never numa=off" 重新生成/etc/grub2.cfg 配置文件: grub2-mkconfig -o /etc/grub2.cfg 重启系统reboot

二、安装过程 

命令行方式1.解压挂载软件包 unzip dm8_20211021_x86_rh6_64_ent.zip mkdir /dm8soft mount /root/soft/dm8_20211021_x86_rh6_64_ent/dm8_20211021_x86_rh6_64_ent_8.1.2.84.iso /dm8soft2.添加组、用户 groupadd dmdba useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba3.安装文件系统规划 mkdir /dm8 chown -R dmdba.dinstall /dm84.安装软件:注意key的路径写全,选择典型安装即可 cd /dm8soft

./DMInstall.bin 为图形化安装 ./DMInstall.bin -i 命令行安装 是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:y 请输入Key文件的路径地址 [dm.key]:/home/dmdba   文件不存在,请检查此key文件路径是否正确:/home/dmdba 是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:y            请输入Key文件的路径地址 [dm.key]:/home/dmdba/dm.key vi .bash_profile添加 PATH=$PATH:$HOME/bin:/dm8/bin source .bash_profile5.创建数据库 图形化  /dm8/tool/dbca.sh --图形化方式按照选项提示,一步一步点下去即可。 命令行

[dmdba@dev3-bu-poc-dm8-test-1 ~]$ dminit help

initdb V8

db version: 0x7000c

License will expire on 2022-09-25

格式: ./dminit KEYWORD=value

例程: ./dminit PATH=/public/dmdb/dmData PAGE_SIZE=16

关键字 说明(默认值)

--------------------------------------------------------------------------------

INI_FILE 初始化文件dm.ini存放的路径

PATH 初始数据库存放的路径

CTL_PATH 控制文件路径

LOG_PATH 日志文件路径

EXTENT_SIZE 数据文件使用的簇大小(16),可选值:16, 32, 64,单位:页

PAGE_SIZE 数据页大小(8),可选值:4, 8, 16, 32,单位:K

LOG_SIZE 日志文件大小(256),单位为:M,范围为:256M ~ 2G

CASE_SENSITIVE 大小敏感(Y),可选值:Y/N,1/0

CHARSET/UNICODE_FLAG 字符集(0),可选值:0[GB18030],1[UTF-8],2[EUC-KR]

SEC_PRIV_MODE 权限管理模式(0),可选值:0[TRADITION],1[BMJ],2[EVAL]

LENGTH_IN_CHAR VARCHAR类型长度是否以字符为单位(N),可选值:Y/N,1/0

SYSDBA_PWD 设置SYSDBA密码(SYSDBA)

SYSAUDITOR_PWD 设置SYSAUDITOR密码(SYSAUDITOR)

DB_NAME 数据库名(DAMENG)

INSTANCE_NAME 实例名(DMSERVER)

PORT_NUM 监听端口号(5236)

BUFFER 系统缓存大小(100),单位M

TIME_ZONE 设置时区(+08:00)

PAGE_CHECK 页检查模式(0),可选值:0/1/2

PAGE_HASH_NAME 设置页检查HASH算法

EXTERNAL_CIPHER_NAME 设置默认加密算法

EXTERNAL_HASH_NAME 设置默认HASH算法

EXTERNAL_CRYPTO_NAME 设置根密钥加密引擎

RLOG_ENC_FLAG 设置日志文件是否加密(N),可选值:Y/N,1/0

USBKEY_PIN 设置USBKEY PIN

PAGE_ENC_SLICE_SIZE 设置页加密分片大小,可选值:0、512、4096,单位:Byte

ENCRYPT_NAME 设置全库加密算法

BLANK_PAD_MODE 设置空格填充模式(0),可选值:0/1

SYSTEM_MIRROR_PATH SYSTEM数据文件镜像路径

MAIN_MIRROR_PATH MAIN数据文件镜像

ROLL_MIRROR_PATH 回滚文件镜像路径

MAL_FLAG 初始化时设置dm.ini中的MAL_INI(0)

ARCH_FLAG 初始化时设置dm.ini中的ARCH_INI(0)

MPP_FLAG Mpp系统内的库初始化时设置dm.ini中的mpp_ini(0)

CONTROL 初始化配置文件(配置文件格式见系统管理员手册)

AUTO_OVERWRITE 是否覆盖所有同名文件(0) 0:不覆盖 1:部分覆盖 2:完全覆盖

USE_NEW_HASH 是否使用改进的字符类型HASH算法(1)

ELOG_PATH 指定初始化过程中生成的日志文件所在路径

AP_PORT_NUM ECS模式下AP协同工作的监听端口

DFS_FLAG 初始化时设置dm.ini中的DFS_INI(0)

DFS_PATH 启用dfs时指定数据文件的缺省路径

DFS_HOST 指定连接分布式系统DFS的服务地址(localhost)

DFS_PORT 指定连接分布式系统DFS的服务端口号(3332)

DFS_COPY_NUM 指定分布式系统的副本数(3)

DFS_DB_NAME 指定分布式系统的中数据库名(默认与DB_NAME一致)

SHARE_FLAG 指定分布式系统中该数据库的共享属性(0)

REGION_MODE 指定分布式系统中该数据库的系统表空间数据文件的区块策略(0) 0:微区策略 1:宏区策略

HUGE_WITH_DELTA 是否仅支持创建事务型HUGE表(1) 1:是 0:否

RLOG_GEN_FOR_HUGE 是否生成HUGE表REDO日志(0) 1:是 0:否

PSEG_MGR_FLAG 是否仅使用管理段记录事务信息(0) 1:是 0:否

CHAR_FIX_STORAGE CHAR是否按定长存储(N),可选值:Y/N,1/0

SQL_LOG_FORBID 是否禁止打开SQL日志(N),可选值:Y/N,1/0

HELP 打印帮助信息

mkdir /dm8/DAMENG dminit  path=/dm8/DAMENG db_name=DAMENG instance_name=DMSERVER port_num=5236 root执行以下命令注册服务

/dm8/script/root/dm_service_installer.sh -t dmserver -dm_ini /dm8/DAMENG/DAMENG/dm.ini -p DMSERVER systemctl start DmServiceDMSERVER systemctl status DmServiceDMSERVER

连接数据库 disql sysdba/SYSDBA@192.168.122.9:5236

6.配置客户端连接串 配置文件路径 /etc/dm_svc.conf   --Linux环境 C:\Windows\SysWOW64\dm_svc.conf --Windows环境 [root@dev3-bu-poc-dm8-test-1 ~]# cat /etc/dm_svc.conf TIME_ZONE=(480) LANGUAGE=(cn) AAA=(192.168.122.9:5236)

连接测试: 

disql sysdba/SYSDBA@AAA

三、开发驱动配置

1.jdbc方式配置

测试文件

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

public class Test

{

private static String url = "jdbc:dm://192.168.122.9:5236";

private static String username = "SYSDBA";

private static String password = "SYSDBA";

private static String sql = "select sysdate";

public static void main(String[] args)

{

Connection connection = null;

Statement stmt = null;

try

{

Class.forName("dm.jdbc.driver.DmDriver");

connection = DriverManager.getConnection(url, username, password);

stmt = connection.createStatement();

ResultSet rs = stmt.executeQuery(sql);

while (rs.next())

{

System.out.println(rs.getString(1));

}

}

catch (SQLException e)

{

e.printStackTrace();

}

catch (ClassNotFoundException e)

{

e.printStackTrace();

}

finally

{

try

{

if (stmt != null)

{

stmt.close();

}

if (connection != null)

{

connection.close();

}

}

catch (SQLException e)

{

e.printStackTrace();

}

}

}

}

驱动包在安装目录drivers下:/dm8/drivers/jdbc/DmJdbcDriver18.jar /dm8/jdk/bin/javac Test.java /dm8/jdk/bin/java -Xbootclasspath/a:/dm8/drivers/jdbc/DmJdbcDriver18.jar Test

2.odbc方式配置 yum  install unixODBC 注意生成的文件权限 644 -rw-r--r--   1 root  root        660 Apr  8 16:48 odbcinst.ini -rw-r--r--   1 root  root        126 Apr  8 16:51 odbc.ini

[root@dev3-bu-poc-dm8-test-1 ~]# cat /etc/odbc.ini  [DM8] Description = DM ODBC DSN Driver  = DM8 ODBC DRIVER SERVER  = 192.168.122.9 UID  = SYSDBA PWD  = SYSDBA TCP_PORT = 5236

cat /etc/odbcinst.ini [DM8 ODBC DRIVER] Description = ODBC DRIVER FOR DM8 Driver = /dm8/bin/libdodbc.so

测试

相关文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: