点击上方“IT那活儿”公众号--专注于企业全栈运维技术分享,不管IT什么活儿,干就完了!!!
安装前准备工作
1.1 环境检测
查看Linux的发⾏版本
cat etc/issue
查看Linux的内核版本
安装达梦数据库要求内核版本为2.4以上。
uname -r
检查磁盘的分区使⽤情况
df -h
检查系统内存的分配情况
free -h
检查glibc的版本
安装达梦数据库要求版本在2.6以上。
rpm -aq|grep -i glibc
更新方法: yum update glibc
1.2 操作系统前置配置
关闭操作系统防火墙:
Centos7:
systemctl stop firewalld
systemctl disable firewalld
创建用户:
# 查看用户
cat etc/passwd |grep dmdba
# 查看组 cat etc/group |grep dminstall
# 添加一个组 groupadd dminstall
# 添加一个用户,并分配到dinstall组 useradd -g dminstall dmdba
# 为dmdba用户设置密码 passwd dmdba
创建软件目录:
# 创建目录 mkdir dmdbms
# 设置目录的所属用户和所属组 chown dmdba:dminstall -R dmdbms
环境变量配置:
cd /home/dmdba vi .bash_profile 在文件中添加 export DM_HOME=/dmdbms export PATH=$DM_HOME/bin:$DM_HOME/tool:$PATH:$HOME/.local/bin:$HOME/bin source .bash_profile
配置系统限制:
在/etc/security/limits.conf⽂件中添加如下内容:
dmdba soft nofile 65536 dmdba hard nofile 65536
安装达梦数据库
2.1 挂载介质
unzip dm8_20240408_x86_rh7_64.zip
mount -o loop dm8_20240408_x86_rh7_64.iso mnt
把安装介质复制到/opt下:
cd /mnt
cp DMInstall.bin opt/
chown dmdba.dminstall opt/DMInstall.bin
2.2 安装数据库(命令行方式)
图形方式安装各类手册和教程里都有,此处学习用命令行方式安装达梦:
su - dmdba
/opt/DMInstall.bin -i
# -i 代表命令行方式,不加的话如果不支持图形化界面弹出会报错。
[dmdba@localhost opt]$ opt/DMInstall.bin -i
Installer Language:
[1]: 简体中文
[2]: English
Please select the installer's language [2]:1
解压安装程序.........
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 31189
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 4096
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 4096
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
可打开文件数过少,建议至少设置为65536或更多。
欢迎使用达梦数据库安装程序
是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n
是否设置时区? (Y/y:是 N/n:否) [Y/y]:y
设置时区:
[ 1]: (GTM-12:00) 日界线西
[ 2]: (GTM-11:00) 萨摩亚群岛
[ 3]: (GTM-10:00) 夏威夷
[ 4]: (GTM-09:00) 阿拉斯加
[ 5]: (GTM-08:00) 太平洋时间(美国和加拿大)
[ 6]: (GTM-07:00) 亚利桑那
[ 7]: (GTM-06:00) 中部时间(美国和加拿大)
[ 8]: (GTM-05:00) 东部部时间(美国和加拿大)
[ 9]: (GTM-04:00) 大西洋时间(美国和加拿大)
[10]: (GTM-03:00) 巴西利亚
[11]: (GTM-02:00) 中大西洋
[12]: (GTM-01:00) 亚速尔群岛
[13]: (GTM) 格林威治标准时间
[14]: (GTM+01:00) 萨拉热窝
[15]: (GTM+02:00) 开罗
[16]: (GTM+03:00) 莫斯科
[17]: (GTM+04:00) 阿布扎比
[18]: (GTM+05:00) 伊斯兰堡
[19]: (GTM+06:00) 达卡
[20]: (GTM+07:00) 曼谷,河内
[21]: (GTM+08:00) 中国标准时间
[22]: (GTM+09:00) 首尔
[23]: (GTM+10:00) 关岛
[24]: (GTM+11:00) 所罗门群岛
[25]: (GTM+12:00) 斐济
[26]: (GTM+13:00) 努库阿勒法
[27]: (GTM+14:00) 基里巴斯
请选择时区 [9]:21
安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]:1
所需空间: 2310M
请选择安装目录 [/home/dmdba/dmdbms]:/dmdbms
可用空间: 37G
是否确认安装路径(/dmdbms)? (Y/y:是 N/n:否) [Y/y]:y
安装前小结
安装位置: dmdbms
所需空间: 2310M
可用空间: 37G
版本信息:
有效日期:
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2024-05-29 22:44:54
[INFO] 安装达梦数据库...
2024-05-29 22:44:54
[INFO] 安装 基础 模块...
2024-05-29 22:45:05
[INFO] 安装 服务器 模块...
2024-05-29 22:45:09
[INFO] 安装 客户端 模块...
2024-05-29 22:45:14
[INFO] 安装 驱动 模块...
2024-05-29 22:45:17
[INFO] 安装 手册 模块...
2024-05-29 22:45:18
[INFO] 安装 服务 模块...
2024-05-29 22:45:18
[INFO] 移动日志文件。
2024-05-29 22:45:20
[INFO] 安装达梦数据库完成。
请以root系统用户执行命令:
/dmdbms/script/root/root_installer.sh
安装结束
[dmdba@localhost opt]$ exit
logout
[root@localhost mnt]# dmdbms/script/root/root_installer.sh
移动 dmdbms/bin/dm_svc.conf 到/etc目录
创建DmAPService服务
Created symlink from etc/systemd/system/multi-user.target.wants/DmAPService.service to usr/lib/systemd/system/DmAPService.service.
创建服务(DmAPService)完成
启动DmAPService服务
添加PATH环境变量
安装好达梦数据库软件后,为了更⽅便地使⽤达梦数据库的相关⼯具,⽤户需要配置达梦数据库的环境变量。
如果已经自动配置好了则不需要调整了。
[dmdba@localhost ~]$ cat .bash_profile
#.bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export DM_HOME=/dmdbms
export PATH=$DM_HOME/bin:$DM_HOME/tool:$PATH:$HOME/.local/bin:$HOME/bin
export PATH
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/dmdbms/bin"
export DM_HOME="/dmdbms"
3.1 创建实例(命令行方式)
查看命令说明可以用 dminit help 查看各类参数的作用。
[dmdba@localhost ]$ cd dmdbms
[dmdba@localhost dmdbms]$ dminit PATH=/dmdbms/dmdata/ PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=Y CHARSET=0 LENGTH_IN_CHAR=Y DB_NAME=MUSIC LOG_SIZE=2048 INSTANCE_NAME=DMSERVER PORT_NUM=5236
initdb V8
db version: 0x7000c
file dm.key not found, usedefault license!
License will expireon2025-03-21
NormalofFAST
NormalofDEFAULT
NormalofRECYCLE
NormalofKEEP
Normalof ROLL
logfilepath: dmdbms/dmdata/MUSIC/MUSIC01.log
logfilepath: dmdbms/dmdata/MUSIC/MUSIC02.log
write to dir [/dmdbms/dmdata/MUSIC].
create dm database success. 2024-05-3003:16:15
[dmdba@localhost dmdbms]$ pwd
/dmdbms
3.2 创建服务
[root@localhost root]# ./dm_service_installer.sh -t dmserver -p GAO -dm_ini dmdbms/dmdata/MUSIC/dm.ini -m open
Created symlink from etc/systemd/system/multi-user.target.wants/DmServiceGAO.service to /usr/lib/systemd/system/DmServiceGAO.service.
创建服务(DmServiceGAO)完成
创建好服务之后达梦的bin目录下就会出现以服务命名的维护命令,然后可以用该服务进行启动数据库:
[root@localhost bin]# pwd
/dmdbms/bin
[root@localhost bin]# ./DmServiceGAO start
Starting DmServiceGAO: Last login: Mon Nov 11 04:37:42 PST 2024 on pts/1
[ OK ]
查看启动后的进程:
[root@localhost bin]# ps -ef | grep dmserver
dmdba 3500 1104:41pts/1 00:00:06 /dmdbms/bin/dmserver path=/dmdbms/dmdata/MUSIC/dm.ini -noconsole
root 4143 2159004:50pts/1 00:00:00grep --color=auto dmserver
[root@localhost bin]# ps -ef | grep dmdbms
dmdba 1186 1004:23 ? 00:00:00 /dmdbms/bin/dmap
dmdba 3500 1104:41pts/1 00:00:06 /dmdbms/bin/dmserver path=/dmdbms/dmdata/MUSIC/dm.ini -noconsole
root 4149 2159004:50pts/1 00:00:00grep --color=auto dmdbms
登录数据库,默认登录方法:
[root@localhost bin]# ./disql SYSDBA/SYSDBA@LOCALHOST:5236
服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间 : 3.118(ms) disql V8 SQL>
创建相关对象
4.1 表空间维护
1)创建表空间
SQL> create tablespace "GAOQIANG" datafile '/dmdbms/dmdata/MUSIC/GAOQIANG01.dbf' size 128 autoextend on maxsize 67108864,'/dmdbms/dmdata/MUSIC/GAOQIANG02.dbf' size 128 autoextend on maxsize 67108864 CACHE = NORMAL;
操作已执行
已用时间: 51.068(毫秒). 执行号:601.
再对应目录生成了对应的表空间文件:
[dmdba@localhost MUSIC]$ ls -lrt
total 5011564
drwxr-xr-x. 2 dmdba dminstall 6 Nov 7 18:16 bak
drwxr-xr-x. 2 dmdba dminstall 6 Nov 7 18:16 HMAIN
-rw-r--r--. 1 dmdba dminstall 955 Nov 7 18:16 dminit20241107181638.log
-rw-r--r--. 1 dmdba dminstall 600 Nov 11 04:32 dminit20241111043230.log
-rw-r--r--. 1 dmdba dminstall 77766 Nov 11 04:34 dm.ini
-rw-r--r--. 1 dmdba dminstall 714 Nov 11 04:34 sqllog.ini
-rw-r--r--. 1 dmdba dminstall 633 Nov 11 04:34 dm_service.prikey
-rw-r--r--. 1 dmdba dminstall 134217728 Nov 11 04:34 MAIN.DBF
-rw-r--r--. 1 dmdba dminstall 955 Nov 11 04:34 dminit20241111043436.log
drwxr-xr-x. 2 dmdba dminstall 6 Nov 11 04:41 trace
-rw-r--r--. 1 dmdba dminstall 2147483648 Nov 11 16:47 MUSIC02.log
-rw-r--r--. 1 dmdba dminstall 77594624 Nov 11 16:47 TEMP.DBF
-rw-r--r--. 1 dmdba dminstall 134217728 Nov 11 18:22 GAOQIANG02.dbf
-rw-r--r--. 1 dmdba dminstall 134217728 Nov 11 18:22 GAOQIANG01.dbf
-rw-r--r--. 1 dmdba dminstall 222298112 Nov 11 18:22 SYSTEM.DBF
-rw-r--r--. 1 dmdba dminstall 6144 Nov 11 18:22 dm.ctl
drwxr-xr-x. 2 dmdba dminstall 4096 Nov 11 18:22 ctl_bak
-rw-r--r--. 1 dmdba dminstall 134217728 Nov 11 18:23 ROLL.DBF
-rw-r--r--. 1 dmdba dminstall 2147483648 Nov 11 18:29 MUSIC01.log
2)扩容表空间
创建表空间和扩容表空间的操作都是用sysdba用户执行的,暂未使用其他增加数据文件:
SQL> alter tablespace GAOQIANG add datafile '/dmdbms/dmdata/MUSIC/GAOQIANG03.dbf' size 128 AUTOEXTEND on MAXSIZE 67108864;
操作已执行
已用时间: 19.307(毫秒). 执行号:701.
3)查看表空间状态
select tablespace_name, file_name, status from dba_data_files order by 1;
SQL> select tablespace_name, file_name, status from dba_data_files order by 1; 行号 TABLESPACE_NAME FILE_NAME STATUS
---------- --------------- ----------------------------------- ---------
1 GAOQIANG
/dmdbms/dmdata/MUSIC/GAOQIANG01.dbf AVAILABLE2 GAOQIANG
/dmdbms/dmdata/MUSIC/GAOQIANG03.dbf AVAILABLE3 GAOQIANG
/dmdbms/dmdata/MUSIC/GAOQIANG02.dbf AVAILABLE4 MAIN
/dmdbms/dmdata/MUSIC/MAIN.DBF AVAILABLE5 ROLL
/dmdbms/dmdata/MUSIC/ROLL.DBF AVAILABLE6 SYSTEM
/dmdbms/dmdata/MUSIC/SYSTEM.DBF AVAILABLE7 TEMP
/dmdbms/dmdata/MUSIC/TEMP.DBF AVAILABLE7 rows got
已用时间: 29.001(毫秒). 执行号:704.
4)查看表空间使用率
SQL> select t1.name 表空间,
trunc((t2.free_size*sf_get_page_size()/1024/1024), 2)||'M' 可分配空间,
trunc((t2.total_size*sf_get_page_size()/1024/1024), 2)||'M' 总空间大小,
trunc((100-(t2.free_size*100/t2.total_size)), 2)||'%'"使用率",
trunc((t2.free_size*100/t2.total_size), 2)||'%'"空闲率"
from v$tablespace t1,v$datafile t2
where t1.id=t2.group_id;2 3 4 5 6 7
行号 表空间 可分配空间 总空间大小 使用率 空闲率
---------- --------- --------------- --------------- --------- ---------
1 GAOQIANG 127M 128M 1% 99%
2 SYSTEM 66M 212M 69% 31%
3 MAIN 127M 128M 1% 99%
4 ROLL 106M 128M 18% 82%
5 TEMP 71M 74M 5% 95%
6 GAOQIANG 127M 128M 1% 99%
7 GAOQIANG 127M 128M 1% 99%
7 rows got
已用时间: 1.411(毫秒). 执行号:706.
SQL>
4.2 用户维护
1)数据库默认账号
SYSDBA(数据库管理员账号) SYSAUDITOR(数据库审计员账号) SYSSSO(数据库安全员账号) SYSDBO(数据库操作员账号)
2)创建用户
create user "用户名称" identified by "密码" default tablespace "所属表空间";
示例:
create user "gao" identified by "gao" default tablespace "GAOQIANG";
3)修改用户密码
alter user "用户名称" identified by "新密码";
4)删除用户
drop user "TEST" cascade;

本文作者:高 强(上海新炬中北团队)
本文来源:“IT那活儿”公众号

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




