【达梦数据库】Linux命令行单机安装及初始化

1 准备工作

安装环境:

操作系统CPU数据库版本
CentOS7x86_64 架构dm8_20230418_x86_rh6_64

1.1 创建用户组、用户

禁止使用root用户安装数据库

# 创建一个dinstall的组。可选参数-g xxxxx:指定组ID
groupadd -g 12349 dinstall
# 删除组 groupdel dinstall
# 创建dmdba用户。可选参数-u xxxxx:指定用户ID
useradd -u 12345 -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
# 修改用户密码:zcl970118
passwd dmdba
# 查看是否创建成功
id dmdba

查到刚创建的dmdba用户的id和组信息:

image-20230721091115396

1.2 修改文件打开最大数

使用 vi 编辑器打开 /etc/security/limits.conf 文件,在最后添加4行语句:

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

1.3 加载光驱

将安装包iso文件放到虚拟机光驱中,切换到 root 用户,执行如下命令挂载镜像:

mount -o loop /dev/cdrom /mnt

(mount命令 -o指定选项,loop用来把一个文件当成硬盘分区mount到目录)

1.4 切换root用户在根目录下新建安装目录

cd /
mkdir dm8

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

1.5 修改安装目录权限

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

chown dmdba:dinstall -R /dm8/

给安装路径下的文件设置 755 权限:

chmod -R 755 /dm8

查看是否修改成功

image-20230707195157365

2 命令行安装

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

su - dmdba
/mnt/DMInstall.bin -i

2、按需求选择安装语言,默认为中文。本地安装选择【不输入 Key 文件】,选择【默认时区 21】,选择【典型安装】,设置安装目录为/dm8

image-20230707201215190

3、安装完成。

image-20230707201426849

3 数据库初始化

3.1 初始化数据库实例

达梦数据库的逻辑架构和 Oracle 一样,没有数据库的概念,只有:实例、用户、表 这样的等级概念。

上述为安装达梦数据库软件,不包含初始化实例,正面详细描述初始化达梦数据库实例。

根据实际需求,添加不同的初始化参数,具体可看 DM_dminit.pdf 手册:

su - dmdba
cd /dm8/bin
./dminit path=/dbdata db_name=CNDT BLANK_PAD_MODE=1

常见的初始化参数说明:

参数名称作用
PATH初始数据库存放的路径,在该路径下存储数据库实例的数据文件。
DB_NAME初始化数据库名称,默认为 DAMENG。名称为字符串,长度不能超过 128 个字符。
PAGE_SIZE数据文件使用的页大小。取值:4、8、16、32,单位:KB。默认值为 8。
EXTENT_SIZE数据文件使用的簇大小,即每次分配新的段空间时连续的页数。取值:16、32。单位:页数。缺省值 16。
CASE_SENSITIVE标识符大小写敏感。当大小写敏感时,小写的标识符应用””括起,否则被系统自动转换为大写;当大小写不敏感时,系统不会转换标识符的大小写,在标识符比较时也不能区分大小写。取值:Y、y、1 表示敏感;N、n、0 表示不敏感。默认值为 Y。
CHARSET/UNICODE_FLAG字符集选项。取值:0 代表 GB18030,1 代表 UTF-8,2 代表韩文字符集 EUC-KR。默认为 0。
LOG_SIZE重做日志文件大小。取值:64~2048 之间的整数,单位 MB。默认值为 256。
TIME_ZONE初始化时区,默认为东八区(+08:00)。
INSTANCE_NAME初始化数据库实例名称,默认为 DMSERVER。
BLANK_PAD_MODE设置字符串比较时,结尾空格填充模式是否兼容 Oracle。取值:1 兼容;0 不兼容。默认为 0。

3.2 连接达梦数据库

3.3 命令行方式启动数据库实例

su - dmdba
cd /dm8/bin 
./dmserver /dm8/data/dm.ini

3.4 注册操作系统服务并启动数据库实例

su - root
cd /dm8/script/root
./dm_service_installer.sh -t dmserver -i /opt/dmdbms/data/DAMENG/dm.ini -p DMSERVER
# 后台启动服务
systemctl start DmServiceDMSERVER

注意

通过操作系统服务的方式启动达梦数据库,即使用 root 用户来执行,也会自动切换为 dmdba 用户来启动的。

连接数据库:
cd /dm8/bin
# 前台启动服务
./disql SYSDBA/SYSDBA@192.168.68.111:5236

即可进行各种数据库操作。

达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台 (dameng.com)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
达梦数据库常⽤系统视图及查询语句 ⼀、常⽤的系统视图: dba_objects:显⽰数据库中所有的对象,例如想查询数据库中有没有某个对象 v$sessions:显⽰会话的具体信息,如执⾏的 sql 语句、主库名、当前会话状态、⽤户名等等 v$lock:查看当前数据库中锁的信息 v$mem_pool:显⽰所有的内存池信息 V$deadlock_histor::记录死锁的历史信息 V$TABLESPACE:显⽰表空间信息,不包括回滚表空间信息 V$TRX:显⽰所有活动事务的信息。通过该视图可以查看所有系统中所有的事务以及相关信息,如锁信息等。 ⼆、常⽤查询语句 1、查询数据库在线实例信息 select distinct NAME, HOST_NAME, SVR_VERSION, DB_VERSION, START_TIME, STATUS$, MODE$ from V$INSTANCE; 2、查看数据库常⽤参数值 select PARA_NAME,PARA_VALUE FROM V$DM_INI WHERE PARA_NAME IN('MEMORY_POOL','BUFFER','PORT_NUM','MAX_SESSIONS','MAX_SESS ION_STATEMENT','INSTANCE_NAME','BAK_PATH','SYSTEM_PATH','ARCH_INI'); 3、查询数据库初始化配置 select SF_GET_PAGE_SIZE() page_size, SF_GET_EXTENT_SIZE() extent_size, SF_GET_UNICODE_FLAG() unicode_flag, SF_GET_CASE_SENSITIVE _FLAG() case_sensitive_flag, SF_GET_SYSTEM_PATH() system_path; 4、查询数据库名称、数据库总⼤⼩、数据库是否启⽤归档 select NAME,STATUS$,ARCH_MODE, TOTAL_SIZE from SYS.V$DATABASE; 5、查询数据库连续运⾏时间 select (SYSDATE-START_TIME)*24 FROM V$INSTANCE; 6、查询数据库管理⽤户状态,默认表空间,是否存在被锁定 select D.USERNAME,A.CREATED,D.ACCOUNT_STATUS,D.DEFAULT_TABLESPACE,D.EXPIRY_DATE,D.LOCK_DATE FROM DBA_USERS D,ALL_USE RS A; 7、查询当前数据库的⽇志分组情况 select GROUP_ID,FILE_ID,PATH,CLIENT_PATH,RLOG_SIZE FROM SYS.V$RLOGFILE; 8、查询表空间信息 select T.NAME 表空间名称, D.PATH 表空⽂件路径, T.TYPE$ 表空间类型, T.STATUS$ 表空间状态, T. FILE_NUM 包含的⽂件数, D.TOTAL_SIZE*16/1024 总⼤⼩, D.FREE_SIZE*16/1024 空闲⼤⼩, TRUNC((TRUNC(D.TOTAL_SIZE-D.FREE_SIZE, 4)/D.TOTAL_SIZE)*100, 2) 使⽤率 FROM V$TABLESPACE T, V$DATAFILE D WHERE "GROUP_ID"=T.ID; 9、查询数据表所分配的空间⼤⼩,辅助查询表⽤户使⽤情况 select OWNER,TABLESPACE_NAME,SEGMENT_TYPE,SEGMENT_NAME,BLOCKS,BYTES/1024/1024 FROM DBA_SEGMENTS ORDER BY OWNER,SE GMENT_NAME; 10、查询表索引状态,便于确认表索引是否可⽤ select I.TABLE_OWNER,I.TABLE_NAME,O.OBJECT_NAME,O.OBJECT_TYPE,O.STATUS FROM USER_INDEXES I,USER_OBJECTS O WHERE O.OBJE CT_NAME=I.INDEX_NAME AND O.STATUS='INVALID'; 11、查询数据库归档信息 select ARCH_TYPE,ARCH_DEST FROM V$DM_ARCH_INI; select ARCH_NAME, ARCH_TYPE, ARCH_DEST, ARCH_FILE_SIZE, ARCH_SPACE_LIMIT, ARCH_TIMER_NAME, ARCH_IS_VALID from SYS.V$DM_AR CH_IN
要在 Docker 中使用达梦数据库进行命令行初始化,需要按照以下步骤进行操作。 首先,我们需要先构建一个支持达梦数据库的 Docker 镜像。可以通过在 Dockerfile 中使用适当的基础镜像和达梦数据库安装程序来构建镜像。 在 Dockerfile 中,可以使用以下命令下载并安装达梦数据库: ``` RUN wget -P /tmp https://website/dm-install.tar.gz RUN tar -xzf /tmp/dm-install.tar.gz -C /tmp RUN cd /tmp/dm-install && ./install.sh --silent ``` 接下来,使用以下命令构建 Docker 镜像: ``` docker build -t dm-db . ``` 完成构建后,可以使用以下命令创建一个 Docker 容器: ``` docker run -d --name dm-container dm-db ``` 此时,Docker 容器以后台模式运行,并且达梦数据库已成功安装。 接下来,我们可以使用以下命令进入 Docker 容器的命令行: ``` docker exec -it dm-container bash ``` 进入容器后,可以使用以下命令启动达梦数据库命令行: ``` dmdosql dbname ``` 这将启动达梦数据库命令行界面,其中 "dbname" 是要初始化数据库的名称。 接下来,在达梦数据库命令行中,通过执行适当的 SQL 命令初始化数据库。例如,可以创建表、插入数据等。 完成数据库初始化后,可以通过退出达梦数据库命令行和容器的命令行来退出容器。 以上就是使用 Docker 和达梦数据库进行命令行初始化的步骤。通过构建支持达梦数据库的 Docker 镜像,创建容器并进入容器的命令行,然后在达梦数据库命令行中执行相应的 SQL 命令,即可完成数据库初始化

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值