DM8_dminit初始化工具介绍及使用

news/2024/11/15 3:38:12/

dminit介绍:

        dminit DM 数据库初始化工具。在安装 DM 的过程中,用户可以选择是否创建初始 数据库。如果当时没有创建,那么在安装完成之后,可以利用创建数据库工具 dminit 来创建。可以利用 dminit 工具提供的各种参数,设置数据库存放路径、段页大小、 是否对大小写敏感、以及是否使用 UNICODE 等,创建出满足用户需要的数据库。该工具位于安装目录的/bin 目录下。

dminit语法如下

dminit 工具需要从命令行启动。找到 dminit 所在安装目录/bin,输入 dminit 和参 数后回车。

语法如下:

dminit KEYWORD=value { KEYWORD=value }

KEYWORDdminit 参数关键字。多个参数之间排列顺序无影响,参数之间使用空格间隔。

value:参数取值。

查看dminit参数

cd $DM_HOME/bin

使用./dminit help 可以查看dminit的参数。

[dmdba@Kylin01 ~]$ dminit help

initdb V8

db version: 0x7000c

file dm.key not found, use default license!

License will expire on 2024-03-22

version: 03134283968-20230322-185138-20033 Pack9

格式: ./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],3[ZB]

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                 页检查模式(1),可选值:0/1/2

PAGE_HASH_NAME             设置页检查HASH算法

EXTERNAL_CIPHER_NAME       设置默认加密算法

EXTERNAL_HASH_NAME         设置默认HASH算法

EXTERNAL_CRYPTO_NAME       设置根密钥加密引擎

RLOG_ENCRYPT_NAME          设置日志文件加密算法,若未设置,则不加密

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                分布式环境下协同工作的监听端口

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日志(1) 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

DPC_MODE                   指定DPC集群中的实例角色(0) 0:无 1:MP 2:BP 3:SP,取值1/2/3时也可以用MP/BP/SP代替

HELP                       打印帮助信息

重点参数详解:

PATH

初始数据库存放的路径。默认路径为 dminit.exe/dminit 当前所在的工作目录。文件路径长 度最大为 256 个字符。可选参数。

LOG_PATH

初始数据库日志文件的路径。默认值 Windows 下为 PATH\DB_NAME\DB_NAME01.log

PATH\DB_NAME\DB_NAME02.logLinux 下为 PATH/DB_NAME/DB_NAME01.log PATH/DB_NAME/DB_NAME02.logPATH DB_NAME 表示各自设置的值)。文件路径长度 最大为 256 个字符。日志文件路径个数不能超过 10 个。可选参数。

修改日志文件大小可以使用 LOG_SIZE 参数。

例如,创建一个数据库,包含两个日志文件 DATA01.log DATA02.log

./dminit PATH=/home/dest/dmdbms LOG_PATH=/home/dest/dmdbms/DATA01.log

LOG_PATH=/home/dest/dmdbms/DATA02.log

PAGE_SIZE

数据文件使用的页大小。取值:481632,单位:K。默认值为 8。可选参数。

选择的页大小越大,则 DM 支持的元组长度也越大,但同时空间利用率可能下降。

LOG_SIZE

重做日志文件大小。取值:64~2048 之间的整数,单位 M。默认值为 256。可选参数。 每个 DM 数据库实例至少有两个重做日志文件,循环使用,LOG_SIZE 设置每个重做日志文件的大小。

修改日志文件路径可以使用 LOG_PATH 参数。

CASE_SENSITIVE

标识符大小写敏感。当大小写敏感时,小写的标识符应用""括起,否则被系统自动转换为大写;当大小写不敏感时,系统不会转换标识符的大小写,在标识符比较时也不能区分大小写。取值:Yy1 表示敏感;Nn0 表示不敏感。默认值为 Y。可选参数。

CHARSET/UNICODE_FLAG

字符集选项。取值:0 代表 GB180301 代表 UTF-82 代表韩文字符集 EUC-KR。默认为 0。可选参数

DB_NAME

初始化数据库名称,默认为 DAMENG。名称为字符串,长度不能超过 128 个字符。可选
参数。文件名不能包含字符‘/’‘\’‘<’‘>’‘:’‘*’‘?’‘|’‘'’‘"’。

INSTANCE_NAME

初始化数据库实例名称,默认为 DMSERVER。名称为字符串,长度不能超过 128 个字符。
可选参数。文件名不能包含字符‘/’‘\’‘<’‘>’‘:’‘*’‘?’‘|’‘'’‘"’。

CTL_PATH

初始数据库控制文件的路径,默认值 Windows 下为 PATH\DB_NAME\dm.ctlLinux 下为/PATH/DM_NAME/dm.ctlPATH DB_NAME 表示各自设置的值)。文件路径长度最大为 256 个字符。可选参数。

EXTENT_SIZE

数据文件使用的簇大小,即每次分配新的段空间时连续的页数。取值:163264。单位:页数。缺省值 16。可选参数。

SYSDBA_PWD

初始化时设置 SYSDBA 的密码,默认为 SYSDBA。密码长度为 9~48 个字符。可选参数。

SYSAUDITOR_PWD

初始化时设置 SYSAUDITOR 的密码,默认为 SYSAUDITOR。密码长度为 9~48 个字符。可选参数。

PORT_NUM

初始化时设置 dm.ini 中的数据库服务器监听端口号,默认 5236。服务器配置此参数,有效值范围(1024~65534),发起连接端的端口在 1024~65535 之间随机分配。可选参数。

BUFFER

系统缓存大小,以 M 为单位。推荐值:系统缓冲区大小为可用物理内存的 60%80%。有效值范围(8~1048576),缺省值为 100。可选参数。

TIME_ZONE

初始化时区,默认为东八区(+08:00)。格式为[正负号]小时[:分钟],其中,正负号和分钟为可选项。时区设置范围为:-12:59~+14:00。可选参数。

ARCH_FLAG

初始化时设置 dm.ini 中的 ARCH_INI 值。取值 0 1。默认值为 0。可选参数。 1 表示 ARCH_INI=1,启用归档。同时,需要配置 dmarch.ini 文件。

0 表示 ARCH_INI=0,不启用归档。

初始化数据库:

使用dminit初始化一个数据库,数据库放在/dm/dmtestdb目录下,数据页 PAGE_SIZE 大 小为 16K。

su - dmdba

创建存放数据库的目录:

mkdir -p /dm/dmtestdb

[dmdba@Kylin01 dmtestdb]$ cd /dm/dmdbms/dm8/bin/

[dmdba@Kylin01 bin]$ ./dminit path=/dm/dmtestdb LOG_PATH=/dm/dmtestdb/testdb/testdb01.log LOG_PATH=/dm/dmtestdb/testdb/testdb02.log LOG_PATH=/dm/dmtestdb/testdb/testdb03.log CASE_SENSITIVE=1 CHARSET=0 db_name=testdb instance_name=testdbServer port_num=5237 LOG_SIZE=512 SYSDBA_PWD=dameng123 EXTENT_SIZE=16 PAGE_SIZE=16

initdb V8

db version: 0x7000c

file dm.key not found, use default license!

License will expire on 2024-03-22

Normal of FAST

Normal of DEFAULT

Normal of RECYCLE

Normal of KEEP

Normal of ROLL

 log file path: /dm/dmtestdb/testdb/testdb01.log

 log file path: /dm/dmtestdb/testdb/testdb02.log

 log file path: /dm/dmtestdb/testdb/testdb03.log

write to dir [/dm/dmtestdb/testdb].

create dm database success. 2023-05-20 12:02:45

如果创建成功,则屏幕显示如下:

initdb V8

db version: 0x7000c

。。。。。。

create dm database success. 2023-05-20 12:02:45

此时在/dm/dmtestdb目录下会出现一个testdb文件夹,包含初始数据库 testdb的相关文件和 DM 数据库启动所必须的配置文件 dm.ini。

[dmdba@Kylin01 bin]$ ls -rlt /dm/dmtestdb/testdb/

总用量 1845336

drwxr-xr-x 2 dmdba dinstall         6  5月 20 12:02 bak

-rw-r--r-- 1 dmdba dinstall       686  5月 20 12:02 sqllog.ini

-rw-r--r-- 1 dmdba dinstall     67417  5月 20 12:02 dm.ini

-rw-r--r-- 1 dmdba dinstall 536870912  5月 20 12:02 testdb01.log

-rw-r--r-- 1 dmdba dinstall 536870912  5月 20 12:02 testdb02.log

-rw-r--r-- 1 dmdba dinstall 536870912  5月 20 12:02 testdb03.log

-rw-r--r-- 1 dmdba dinstall      5632  5月 20 12:02 dm.ctl

drwxr-xr-x 2 dmdba dinstall        42  5月 20 12:02 ctl_bak

-rw-r--r-- 1 dmdba dinstall       633  5月 20 12:02 dm_service.prikey

-rw-r--r-- 1 dmdba dinstall 134217728  5月 20 12:02 MAIN.DBF

-rw-r--r-- 1 dmdba dinstall 134217728  5月 20 12:02 ROLL.DBF

drwxr-xr-x 2 dmdba dinstall         6  5月 20 12:02 HMAIN

-rw-r--r-- 1 dmdba dinstall  10485760  5月 20 12:02 SYSTEM.DBF

-rw-r--r-- 1 dmdba dinstall      1062  5月 20 12:02 dminit20230520120243.log

后台启动dmserver服务:

[dmdba@Kylin01 ~]$ cd /dm/dmdbms/dm8/bin

[dmdba@Kylin01 bin]$ nohup ./dmserver /dm/dmtestdb/testdb/dm.ini &

[1] 2653

[dmdba@Kylin01 bin]$ nohup: 忽略输入并把输出追加到'nohup.out'

查看达梦数据库进程:

[dmdba@Kylin01 bin]$ ps -ef|grep dms

dmdba       1310       1  0 20:23 ?        00:00:02 /dm/dmdbms/dm8/bin/dmserver path=/dm/dmdata/CB/dm.ini -noconsole

dmdba       2653    2557  7 20:47 pts/0    00:00:00 ./dmserver /dm/dmtestdb/testdb/dm.ini

dmdba       2727    2557  0 20:47 pts/0    00:00:00 grep dms

查看数据库端口:

[dmdba@Kylin01 bin]$ ss -ntpla|grep 5237

LISTEN    0         128                      *:5237                   *:*        users:(("dmserver",pid=2653,fd=5))   

查看db_name和数据库状态:

SQL> select NAME,STATUS$ from  v$database;

行号     NAME   STATUS$    

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

1          testdb 4     

testdb为db_name,STATUS$ 4代表open状态。

查看实例名和状态:

SQL> select NAME,INSTANCE_NAME,DB_VERSION,STATUS$,MODE$ from v$instance;

行号     NAME         INSTANCE_NAME DB_VERSION          STATUS$ MODE$

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

1          TESTDBSERVER TESTDBSERVER  DB Version: 0x7000c OPEN    NORMAL

查看字符集:

SQL>  select sf_get_unicode_flag();

行号     SF_GET_UNICODE_FLAG()

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

1          0

SQL> select unicode();

行号     UNICODE()  

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

1          0

注意:0 表示GB18030,1表示 UTF-8,2表示EUC-KR。

字符集在创建实例时指定,设定后不可更改,如果需要变更字符集,只能重建实例。

查看页大小:

SQL> select NAME,TYPE,VALUE,SYS_VALUE,FILE_VALUE from v$parameter where NAME='GLOBAL_PAGE_SIZE';

行号     NAME             TYPE      VALUE SYS_VALUE FILE_VALUE

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

1          GLOBAL_PAGE_SIZE READ ONLY 16384 16384     8192

查看redo log日志文件:

SQL> select GROUP_ID,FILE_ID,PATH,CLIENT_PATH,RLOG_SIZE/1024/1024||'M' from v$rlogfile;

行号     GROUP_ID    FILE_ID     PATH                             CLIENT_PATH  RLOG_SIZE/1024/1024||'M'

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

1          2           0           /dm/dmtestdb/testdb/testdb01.log testdb01.log 512M

2          2           1           /dm/dmtestdb/testdb/testdb02.log testdb02.log 512M

3          2           2           /dm/dmtestdb/testdb/testdb03.log testdb03.log 512M

查看数据库存放路径:

SQL> select NAME,TYPE,VALUE,SYS_VALUE,FILE_VALUE from v$parameter where NAME='SYSTEM_PATH';

行号     NAME        TYPE      VALUE               SYS_VALUE           FILE_VALUE         

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

1          SYSTEM_PATH READ ONLY /dm/dmtestdb/testdb /dm/dmtestdb/testdb /dm/dmtestdb/testdb

查询大小写敏感参数:

SQL> select NAME,TYPE,VALUE,SYS_VALUE,FILE_VALUE from v$parameter where NAME='GLOBAL_STR_CASE_SENSITIVE';

行号     NAME                      TYPE      VALUE SYS_VALUE FILE_VALUE

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

1          GLOBAL_STR_CASE_SENSITIVE READ ONLY 1     1         1

安装达梦服务:

su - root

[root@Kylin01 ~]# cd /dm/dmdbms/dm8/script/root

[root@Kylin01 root]# ./dm_service_installer.sh --help

[root@Kylin01 root]# ./dm_service_installer.sh -t dmserver -p testdb -dm_ini /dm/dmtestdb/testdb/dm.ini

Created symlink /etc/systemd/system/multi-user.target.wants/DmServicetestdb.service → /usr/lib/systemd/system/DmServicetestdb.service.

创建服务(DmServicetestdb)完成

用服务方式启动达梦数据库:

[dmdba@Kylin01 ~]$ DmServicetestdb start

Starting DmServicetestdb:                                  [ OK ]

[dmdba@Kylin01 ~]$ DmServicetestdb status

DmServicetestdb (pid 3021) is running.

[dmdba@Kylin01 ~]$ disql sysdba/dameng123:5237

服务器[LOCALHOST:5237]:处于普通打开状态

登录使用时间 : 2.434(ms)

disql V8

SQL> select NAME,STATUS$ from  v$database;

行号     NAME   STATUS$    

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

1          testdb 4

已用时间: 1.972(毫秒). 执行号:500.

SQL>

达梦在线服务平台:https://eco.dameng.com


http://www.ppmy.cn/news/74218.html

相关文章

smb配置,详细图文及配置

samba :网络文件共享服务 ​ Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件&#xff0c;而SMB是Server Message Block的缩写&#xff0c;即为服务器消息块&#xff0c;SMB主要是作为Microsoft的网络通讯协议&#xff0c;后来Samba将SMB通信协议应用到了Linux系统上…

我们为什么还要学习Altium Designer?

Altium Designe&#xff08;简称“AD”&#xff09;是电子设计领域中备受推崇的软件工具之一&#xff0c;拥有强大的功能和灵活的设计环境&#xff0c;也是要用最广泛的EDA工具之一&#xff0c;为电子工程师提供了无限可能&#xff0c;但很多工程师学完AD基本操作就转投其他EDA…

elementUI,自定义表头,多层级表头,表头合并,行内容一致的合并行

先上效果&#xff1a; 1.自定义表头&#xff1a; 通过设置 slot"header" 来自定义表头。 slot-scope"scope" 这一行千万不要因为没有再template中使用到scope&#xff0c;vscode报红而删除&#xff0c;这会导致input框不能输入任何内容&#xff01; &l…

react函数组件常用的几个钩子函数

react框架 react框架包括包括两大类&#xff1a;类组件函数组件。 类组件构成&#xff1a;constructor自定义方法。调用方法通过this.方法名()。constructor(superstate)构造器里面必有super字段。render()方法里面写页面布局。 函数组件构成&#xff1a;各种钩子函数return()方…

Android 系统内的守护进程 - main类服务(7) : sdcard

声明 只要是操作系统,不用说的就是其中肯定会运行着一些很多守护进程(daemon)来完成很多杂乱的工作。通过系统中的init.rc文件也可以看出来,其中每个service中就包含着系统后台服务进程。而这些服务被分为:core类服务(adbd/servicemanager/healthd/lmkd/logd/vold)和mai…

在Window10和Window11系统,WPF使用Viewport3D 渲染失败问题解决方案

最近遇到个棘手的问题&#xff1a;在供应商提供的戴尔optiplex 3000的12代处理器主机的集成显卡Intel(R) UHD Graphics 770上使用Viewport3D 渲染失败&#xff08;3D模型显示不了&#xff0c;或者是显示不全&#xff09;&#xff0c;之前开发验证使用的是集成显卡Intel(R) UHD …

【大数据模型】LeonardoAi让心中所想跃然纸上

汝之观览&#xff0c;吾之幸也&#xff01; 本文主要聊聊LeonardoAi绘图工具 一、注册Discord账号 不管LeonardoAi还是midjourney&#xff0c;都需要注册一个Discord账号&#xff0c;Discord是一个社区软件&#xff0c;在这里可以进行讨论和交流使用心得 LeonardoAi官网地址 …

MySQL数据库之存储引擎

一、存储引擎的概念 1.1 什么是存储引擎 MySQL中的数据用各种不下同的技术存储在文件中&#xff0c;每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力&#xff0c;这些不同的技术以及配套的功能在MySQL中称为存储引擎。存储引擎是MySQL将数据存…