1. 安装环境
- 操作系统:CentOS Linux release 7.9.2009 x64
- 硬盘空间:20G
- 软件版本:DM8企业版
- 安装文件提供方式:光驱
2. 准备工作
2.1. 挂载安装光驱
[root@localhost ~]# mount /dev/cdrom /mnt/
2.2. 调整文件打开数限制
[root@localhost mnt]# vi /etc/security/limits.conf
# 在文件尾添加如下两行
dmdba soft nofie 65536
dmdba hard nofie 65536
[root@localhost mnt]#reboot
2.3. 关闭防火墙
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
2.4. 创建安装用户
- 创建安装用户组 dinstall。
[root@localhost]#groupadd -g 12349 dinstall
- 创建安装用户 dmdba
[root@localhost]#useradd -u 12345 -g dinstall -m -d /opt/dmdb/ -s /bin/bash dmdba
- 初始化用户密码。
[root@localhost]#passwd dmdba
2.5. 规划软件和目录
[root@localhost]#su - dmdba
[dmdba@localhost ~]$ mkdir -p /opt/dmdb/{data,dmdbms}
3. Linux图形界面安装与初始化
3.1. 安装操作系统GUI
[root@localhost ~]#yum -y groupinstall "X Window System" "KDE Desktop" Desktop
[root@localhost ~]#yum -y groupinstall “Server with GUI”
3.2. 切换系统到GUI模式
[root@localhost ~]#startx
3.3. 授权安装文件执行权限
[root@localhost ~]#cp /mnt/ DMInstall.bin /tmp/
[root@localhost ~]#chmod +x /tmp/ DMInstall.bin
3.4. 图形安装DM8
3.4.1. 启动安装界面
[root@localhost ~]#/tmp/DMInstall.bin
3.4.2. 语言、时区选择
3.4.3. 安装向导提示
3.4.4. 接受许可协议
3.4.5. 选择授权许可文件(可跳过)
3.4.6. 选择安装组件
3.4.7. 选择安装目录
3.4.8. 确认安装摘要信息
3.5. 初始化数据库
3.5.1. 通过DBCA初始化实例
通过点击开始菜单的DMDBMS→DBCA进入实例初始化界面
3.5.2. 选择侧重业务类型
3.5.3. 选择数据库目录
设置数据库名称、实例名称、实例端口
3.5.4. 设置控制文件、数据文件、联机日志文件、错误日志文件路径
3.5.5. 常用参数
3.5.6. 密码设置
3.5.7. 样例库选择安装
3.5.8. 已选安装参数汇总确认
4. 命令行安装与初始化
4.1. 运行安装
[dmdba@localhost ~]$ /mnt/DMInstall.bin -i
Please select the installer's language (E/e:English C/c:Chinese) [E/e]:c
解压安装程序..........
欢迎使用达梦数据库安装程序
是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:n
是否设置时区? (Y/y:是 N/n:否) [Y/y]:y
设置时区:
[ 1]: GTM-12=日界线西
[ 2]: GTM-11=萨摩亚群岛
[ 3]: GTM-10=夏威夷
[ 4]: GTM-09=阿拉斯加
[ 5]: GTM-08=太平洋时间(美国和加拿大)
[ 6]: GTM-07=亚利桑那
[ 7]: GTM-06=中部时间(美国和加拿大)
[ 8]: GTM-05=东部部时间(美国和加拿大)
[ 9]: GTM-04=大西洋时间(美国和加拿大)
[10]: GTM-03=巴西利亚
[11]: GTM-02=中大西洋
[12]: GTM-01=亚速尔群岛
[13]: GTM=格林威治标准时间
[14]: GTM+01=萨拉热窝
[15]: GTM+02=开罗
[16]: GTM+03=莫斯科
[17]: GTM+04=阿布扎比
[18]: GTM+05=伊斯兰堡
[19]: GTM+06=达卡
[20]: GTM+07=曼谷,河内
[21]: GTM+08=中国标准时间
[22]: GTM+09=汉城
[23]: GTM+10=关岛
[24]: GTM+11=所罗门群岛
[25]: GTM+12=斐济
[26]: GTM+13=努库阿勒法
[27]: GTM+14=基里巴斯
请选择设置时区 [8]:21
安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]:1
所需空间: 1216M
请选择安装目录 [/opt/dmdbms]:/opt/dmdb/dmdbms
可用空间: 11G
是否确认安装路径(/opt/dmdb/dmdbms)? (Y/y:是 N/n:否) [Y/y]:y
安装前小结
安装位置: /opt/dmdb/dmdbms
所需空间: 1216M
可用空间: 11G
版本信息:
有效日期:
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2022-01-03 22:01:23
[INFO] 安装达梦数据库...
2022-01-03 22:01:23
[INFO] 安装 基础 模块...
2022-01-03 22:01:28
[INFO] 安装 服务器 模块...
2022-01-03 22:01:29
[INFO] 安装 客户端 模块...
2022-01-03 22:01:34
[INFO] 安装 驱动 模块...
2022-01-03 22:01:35
[INFO] 安装 手册 模块...
2022-01-03 22:01:35
[INFO] 安装 服务 模块...
2022-01-03 22:01:37
[INFO] 移动日志文件。
2022-01-03 22:01:37
[INFO] 更改安装目录权限完成。
2022-01-03 22:01:37
[INFO] 正在启动DmAPService服务...
2022-01-03 22:01:38
[INFO] 启动DmAPService服务成功。
2022-01-03 22:01:38
[INFO] 安装达梦数据库完成。
安装结束
4.2. 配置常用环境变量
[dmdba@localhost ~]$ cat >> ~/.bash_profile << EOF
DM_HOME=/opt/dmdb/dmdbms
PATH=$DM_HOME/bin/:$PATH
export PATH
[dmdba@localhost ~]$source ~/.bash_profile
4.3. 初始化数据库
[dmdba@localhost ~]$dminit PATH=/opt/dmdb/data INSTANCE_NAME=DMOA DB_NAME=DMOA PORT_NUM=5234 PAGE_SIZE=16 CHARSET=0 CASE_SENSITIVE=1
4.4. 将实例注册为系统服务
# 切换为root用户操作
[dmdba@localhost ~]$exit
[root@localhost bin]# /opt/dmdb/dmdbms/script/root/dm_service_installer.sh -t dmserver -p DBMS -dm_ini /opt/dmdb/data/DMOA/dm.ini
4.5. 启动数据库服务
[root@localhost bin]# systemctl start DmServiceDBMS
5. 静默安装方式
5.1. 编辑静默安装配置文件
[root@localhost]#vim /tmp/dmdb.xml
<?xml version="1.0"?>
<DATABASE>
<!--安装数据库的语言配置,安装中文版配置 ZH,英文版配置 EN,不区分大小写。不允许为空。 -->
<LANGUAGE>en</LANGUAGE>
<!--安装路径,不允许为空。 -->
<INSTALL_PATH>/opt/dmdb/dmdbms</INSTALL_PATH>
<!--是否初始化库,取值 Y/N、y/n,不允许为空。 -->
<INIT_DB>y</INIT_DB>
<!--数据库实例参数 -->
<DB_PARAMS>
<!--初始数据库存放的路径,不允许为空 -->
<PATH>/opt/dmdb/data</PATH>
<!--初始化数据库名字,默认是 DAMENG,不超过 128 个字符 -->
<DB_NAME>DMOA</DB_NAME>
<!--初始化数据库实例名字,默认是 DMSERVER,不超过 128 个字符 -->
<INSTANCE_NAME>DMOA</INSTANCE_NAME>
<!--初始化时设置 dm.ini 中的 PORT_NUM,默认 5236,取值范围:1024~65534 -->
<PORT_NUM>5234</PORT_NUM>
<PAGE_SIZE>16</PAGE_SIZE>
<!--字符集选项,默认值为 0。0 代表 GB18030,1 代表 UTF-8,2 代表韩文字符集 EUC-KR -->
<CHARSET>0</CHARSET>
<!--标识符大小写敏感,默认值为 Y。只能是’Y’, ’y’, ’N’, ’n’, ’1’, ’0’ 之一 -->
<CASE_SENSITIVE>Y</CASE_SENSITIVE>
</DB_PARAMS>
<!--是否创建数据库实例的服务,值 Y/N y/n,不允许为空,不初始化数据库将忽略此节点。 非 root 用户不能创建数据库服务。 -->
<CREATE_DB_SERVICE>Y</CREATE_DB_SERVICE>
<!--是否启动数据库,值 Y/N y/n,不允许为空,不创建数据库服务将忽略此节点。 -->
<STARTUP_DB_SERVICE>Y</STARTUP_DB_SERVICE>
</DATABASE>
5.2. 执行静默安装
[root@localhost ~]#/mnt/DMInstall.bin -q /tmp/dmdb.xml
6. 安装后测试
6.1. 创建DMDBA(可自定义)数据库用户
[root@localhost]# su - dmdba
[dmdba@localhost ~]$ disql SYSDBA/SYSDBA@localhost:5234
SQL> create user DMDBA identified by dameng_dba;
SQL> grant dba to DMDBA;
6.2. 创建默认表空间
SQL> CREATE TABLESPACE TS_DMOA datafile '/opt/dmdb/data/DMOA/TS_DMOA.DBF' size 128;
SQL> grant resource to DMOA;
SQL> create user DMOA identified by dameng_oa default tablespace TS_DMOA;
6.3. 创建表并写入数据
SQL> create TABLE USERS (USER_ID INT IDENTITY, USER_NAME VARCHAR );
SQL> insert into USERS username values('jc');
SQL> insert into USERS username values('lw');
SQL> commit;
SQL> select * from USERS;
行号 USER_ID USER_NAME
---------- ----------- ---------
1 1 jc
2 2 lw
7. 联机热备
7.1. 归档设置
SQL> alter database mount;
SQL> alter database archivelog;
SQL>alter database add archivelog 'DEST=/opt/dmdb/data/DMOA/arch, TYPE=LOCAL, FILE_SIZE=1024, SPACE_LIMIT=10240';
SQL> alter database open;
7.2. 初始化作业环境
SQL> call SP_INIT_JOB_SYS(1);
7.3. 添加备份作业
---以下为每周六凌晨2点全量备份作业
SQL> call SP_CREATE_JOB('backup_full', 1, 0, '', 0, 0, '', 0, '每周全量备份作业');
SQL> call SP_JOB_CONFIG_START('backup_full');
SQL> call SP_ADD_JOB_STEP('backup_full', '全量备份', 6, '00000000', 1, 1, 0, 0, '/opt/dmdb/data/DMOA/bak/backup.log', 1);
SQL> call SP_ADD_JOB_SCHEDULE('backup_full', '全量备份脚本', 1, 2, 1, 64, 0, '02:00:00', NULL, '2022-01-04 14:58:55', NULL, '');
SQL> call SP_JOB_CONFIG_COMMIT('backup_full');
---以下为每日凌晨1点增量备份作业
SQL> call SP_CREATE_JOB('backup_inc', 1, 0, '', 0, 0, '', 0, '每日增量备份数据库');
SQL> call SP_JOB_CONFIG_START('backup_inc');
SQL> call SP_ADD_JOB_STEP('backup_inc', '每日增备脚本', 6, '10000000/opt/dmdb/data/DMOA/bak|/opt/dmdb/data/DMOA/bak', 1, 1, 0, 0, '/opt/dmdb/data/DMOA/bak/backup.log', 1);
SQL> call SP_ADD_JOB_SCHEDULE('backup_inc', '增量备份定时作业', 1, 2, 1, 63, 0, '01:00:00', NULL, '2022-01-04 15:12:01', NULL, '');
SQL> call SP_JOB_CONFIG_COMMIT('backup_inc');
网友评论