1、准备工作
几个安装路径:
/dev/sdb1(200G) /dmarch/dmarch (归档磁盘)
/dev/sdb2(500G) /dmbak/dmbak (备份磁盘)
/dev/sdb3(800G) /dmdata/dmdata (数据磁盘)
/home/dmdba/dmdbms/ 安装目录
2、安装数据库软件
创建安装包目录:
切换/root并上传文件。
groupadd dinstall
useradd -g dinstall dmdba
passwd dmdba
Bigdata@2020
mkdir /dmdata/dmiso /dmdata/dmdata /dmbak/dmbak /dmarch/dmarch
chown dmdba.dinstall /dmdata/dmdata /dmbak/dmbak /dmarch/dmarch
mv /root/dm4B061646.key /dmbak/
chown dmdba.dinstall /dmbak/dm4B061646.key
cd /root
//挂载至 /dmdata/dmiso下
mount -o loop dm8_20210929_x86_rh6_64_sec_8.1.2.70_pack2.iso /dmdata/dmiso
切换到dmdba用户执行安装
[dmdba@SZD-L0168344 ~]$ cd /dmdata/dmiso
[dmdba@SZD-L0168344 dm7]$ ./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]:y
请输入Key文件的路径地址 [dm.key]: /dmbak/dm4B061646.key
有效日期: 2020-06-30
服务器颁布类型: 企业版
发布类型: 试用版
用户名称: 平安科技智慧城
授权用户数: 无限制
并发连接数: 无限制
是否设置时区? (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=基里巴斯
请选择设置时区 [21]:回车
安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [1 典型安装]选择4
所需空间: 928M
请选择安装目录 [/home/dmdba/dmdbms]:/home/dmdba/dmdbms
可用空间: 55G
是否确认安装路径(/home/dmdba/dmdbms)? (Y/y:是 N/n:否) [Y/y]:y
安装前小结
安装位置: /home/dmdba/dmdbms
所需空间: 928M
可用空间: 55G
版本信息: 企业版
有效日期: 2020-06-30
安装类型: 典型安装
是否确认安装? (Y/y:是 N/n:否):y
2019-07-09 15:28:23
[INFO] 安装达梦数据库...
2019-07-09 15:28:24
[INFO] 安装 基础 模块...
2019-07-09 15:28:26
[INFO] 安装 服务器 模块...
2019-07-09 15:28:26
[INFO] 安装 客户端 模块...
2019-07-09 15:28:27
[INFO] 安装 驱动 模块...
2019-07-09 15:28:27
[INFO] 安装 手册 模块...
2019-07-09 15:28:27
[INFO] 安装 服务 模块...
2019-07-09 15:28:29
[INFO] 移动ant日志文件。
2019-07-09 15:28:29
[INFO] 安装达梦数据库完成。
请以root系统用户执行命令:
/home/dmdba/dmdbms/script/root/root_installer.sh
安装结束
使用root用户 执行 sh /home/dmdba/dmdbms/script/root/root_installer.sh
3、初始化数据库实例
切换到dmdba用户
cd /home/dmdba/dmdbms/bin
[dmdba@SZD-L0168349 bin]$ ./dminit
nput system dir: /dmdata/dmdata
input db name: DAMENG
input port num: 5236
input page size(4, 8, 16, 32): 32
input extent size(16, 32): 32
input sec priv mode(0, 1): 0
input time zone(-12:59,+14:00): +8:00
string case sensitive? ([Y]es, [N]o): n
which charset to use? (0[GB18030], 1[UTF-8], 2[EUC-KR]): 1
length in char? ([Y]es, [N]o): y
enable database encrypt? ([Y]es, [N]o): n
Input slize size(1,512,4096): 512
page check mode? (0/1/2): 0
input elog path: /dmdata/dmdata
Only create huge table with delta?(0/1): 1
Rlog generate fro huge: 0
Pseg_mgr_flag(0/1):0
auto_overwrite mode? (0/1/2): 2
CHARACTER type fixed storage ? ([Y]es/1, [N]o/0): y
SQL log forbid ? ([Y]es/1, [N]o/0): n
initdb V7.6.0.161-Build(2019.05.23-107264)ENT
db version: 0x7000a
License will expire on 2020-06-30
log file path: /appdata/dmdata/DAMENG/DAMENG01.log
log file path: /appdata/dmdata/DAMENG/DAMENG02.log
write to dir [/appdata/dmdata/DAMENG].
create dm database success. 2019-07-09 18:16:34
参数说明:
PAGE_SIZE:数据页大小(8),可选值:4、8、16、32,单位:K
LOG_SIZE 日志文件大小(256),单位为:M,范围为:64M ~ 2G
CASE_SENSITIVE 大小敏感(Y),可选值:Y/N,1/0 //(注意:大数据平台管理库可以设置为大小写不敏感,减少开发适配不同数据库的工作量;对于共享库需要设置为大小写敏感)
CHARSET/UNICODE_FLAG 字符集(0),可选值:0[GB18030],1[UTF-8],2[EUC-KR]
LENGTH_IN_CHAR VARCHAR类型长度是否以字符为单位(N),可选值:Y/N,1/0
DB_NAME 数据库名(DAMENG)
INSTANCE_NAME 实例名(DMSERVER)
PORT_NUM 监听端口号(5236)
查询参数配置值:
修改2个参数:
1./dmdata/dmdata/DAMENG/dm.ini
修改:
ENABLE_ENCRYPT = 0
ARCH_INI = 1
RLOG_APPEND_LOGIC = 1
2./home/dmdba/dmdbms/bin
./dminit INSTANCE_NAME=DMSERVER //指定实例
4、注册数据库服
su – root
cd /home/dmdba/dmdbms/script/root
./dm_service_installer.sh -t dmserver -dm_ini /dmdata/dmdata/DAMENG/dm.ini -p DM8
Finished to create the service (DmServiceDM8)
5、达梦数据库的启动和停止
启动:systemctl start DmServiceDM8.service
停止:systemctl stop DmServiceDM8.service
[dmdba@SZD-L0168344 bin]$./ disql SYSDBA /SYSDBA@127.0.0.1:1521
服务器[LOCALHOST:5236]:处于主库打开状态
登录使用时间: 7.152(毫秒)
disql V7.6.0.161-Build(2019.05.23-107264)ENT
SQL>select para_name,para_value,para_type from v$dm_ini where para_name = 'GLOBAL_STR_CASE_SENSITIVE';
SQL>select para_name,para_value,para_type from v$dm_ini where para_name = 'GLOBAL_CHARSET';
SQL>select para_name,para_value,para_type from v$dm_ini where para_name = 'LENGTH_IN_CHAR';
SQL>select para_name,para_value,para_type from v$dm_ini where para_name like '%SIZE%';
6、创建用户表空间
按照基础数据 - 人工录入方式一数据源清单(1)(1).xlsx,设置密码
根据数据库规划合理创建表空间大小,单位:M
create tablespace sxfjydtgk datafile '/dmdata/dmdata/DAMENG/sxfjydtgk _1.DBF' size 20480 autoextend on maxsize 51200;
create user sxfjydtgk identified by bigdata2020 default tablespace sxfjydtgk;
grant resource to sxfjydtgk;
alter tablespace sxfjydtgk add datafile '/dmdata/dmdata/DAMENG/sxfjydtgk_2.DBF' size 20480 autoextend on maxsize 51200;
7、使用达梦数据迁移工具
新建工程-新建迁移-配置迁移源-目的。 选择对应的schema进行迁移
8、生产环境开启归档
登录:
cd /home/dmdba/dmdbms/bin
执行:./disql SYSDBA/SYSDBA
开启归档的方式:联机和脱机
(1)联机配置归档:
01、修改数据库为 MOUNT 状态
SQL> ALTER DATABASE MOUNT;
02、配置本地归档
SQL> ALTER DATABASE ADD ARCHIVELOG 'DEST = /dmarch/dmarch, TYPE = local, FILE_SIZE = 128, SPACE_LIMIT = 51200';
归档路径根据实际情况设置。
03、开启归档模式
SQL> ALTER DATABASE ARCHIVELOG;
04、修改数据库为 OPEN 状态
SQL> ALTER DATABASE OPEN;
//关闭归档:
//ALTER DATABASE NOARCHIVELOG;
05、验证配置的正确性
SELECT ARCH_DEST, ARCH_FILE_SIZE FROM SYS.V$DM_ARCH_INI WHERE
ARCH_TYPE='LOCAL' AND ARCH_IS_VALID='Y';
9、生产环境优化
登录:
cd /home/dmdba/dmdbms/bin
执行:./disql SYSDBA/SYSDBA
declare
v_mem_mb int;
v_cpus int;
mem_per int:=100;
begin
SELECT TOP 1 N_CPU,TOTAL_PHY_SIZE/1024/1024 INTO v_cpus,v_mem_mb FROM V$SYSTEMINFO;
print v_cpus;
print v_mem_mb;
--修改线程数
SP_SET_PARA_VALUE(2,'WORKER_THREADS',v_cpus);
SP_SET_PARA_VALUE(2,'TASK_THREADS',v_cpus/2);
SP_SET_PARA_VALUE(2,'IO_THR_GROUPS',v_cpus/2);
v_mem_mb := v_mem_mb * (mem_per/150.0);
--修改内存
SP_SET_PARA_VALUE(2,'MAX_OS_MEMORY', 90);
SP_SET_PARA_VALUE(2,'MEMORY_POOL', cast(v_mem_mb * 0.015 as int));
SP_SET_PARA_VALUE(2,'BUFFER', cast(v_mem_mb * 0.5 as int));
SP_SET_PARA_VALUE(2,'MAX_BUFFER', cast(v_mem_mb * 0.5 as int));
SP_SET_PARA_VALUE(2,'BUFFER_POOLS', 11);--7,11,19,37,67,101 (4G-128G)
SP_SET_PARA_VALUE(2,'RECYCLE', cast(v_mem_mb * 0.032 as int));
SP_SET_PARA_VALUE(2,'RECYCLE_POOLS', 3);
SP_SET_PARA_VALUE(2,'HJ_BUF_GLOBAL_SIZE', cast(v_mem_mb * 0.0625 as int));
SP_SET_PARA_VALUE(2,'HJ_BUF_SIZE', cast(v_mem_mb * 0.004 as int));
SP_SET_PARA_VALUE(2,'HAGR_BUF_GLOBAL_SIZE',cast(v_mem_mb * 0.05 as int));
SP_SET_PARA_VALUE(2,'HAGR_BUF_SIZE', cast(v_mem_mb * 0.004 as int));
SP_SET_PARA_VALUE(2,'SESS_POOL_SIZE', cast(v_mem_mb * 0.004 as int));
SP_SET_PARA_VALUE(2,'CACHE_POOL_SIZE', cast(v_mem_mb * 0.016 as int));
SP_SET_PARA_VALUE(2,'SORT_BUF_SIZE', 10);
SP_SET_PARA_VALUE(2,'DICT_BUF_SIZE', 50);
SP_SET_PARA_VALUE(2,'USE_PLN_POOL', 1);
SP_SET_PARA_VALUE(2,'ENABLE_MONITOR', 1);
SP_SET_PARA_VALUE(2,'SVR_LOG', 0);
SP_SET_PARA_VALUE(2,'TEMP_SIZE', 1024);
SP_SET_PARA_VALUE(2,'TEMP_SPACE_LIMIT', 102400);
SP_SET_PARA_VALUE(2,'MAX_SESSIONS', 1500);
SP_SET_PARA_VALUE(2,'MAX_SESSION_STATEMENT', 20000);
SP_SET_PARA_VALUE(2,'PK_WITH_CLUSTER', 0);
SP_SET_PARA_VALUE(2,'ENABLE_ENCRYPT',0);
SP_SET_PARA_VALUE(2,'OLAP_FLAG',2);
SP_SET_PARA_VALUE(2,'VIEW_PULLUP_FLAG',1);
SP_SET_PARA_VALUE(2,'OPTIMIZER_MODE',1);
SP_SET_PARA_VALUE(2,'ADAPTIVE_NPLN_FLAG',0);
SP_SET_PARA_VALUE(2,'TOP_DIS_HASH_FLAG',0);
SP_SET_PARA_VALUE(2,'TOP_ORDER_OPT_FLAG',1);
SP_SET_PARA_VALUE(2,'COMPATIBLE_MODE', 0);
end;
/
执行完重启数据库。查看参数是否修改
select para_name,para_value from v$dm_ini where para_name like 'WORKER_THREADS'
union all
select para_name,para_value from v$dm_ini where para_name like 'TASK_THREADS'
union all
select para_name,para_value from v$dm_ini where para_name like 'MEMORY_POOL'
union all
select para_name,para_value from v$dm_ini where para_name like 'BUFFER'
union all
select para_name,para_value from v$dm_ini where para_name like 'MAX_BUFFER'
union all
select para_name,para_value from v$dm_ini where para_name like 'BUFFER_POOLS'
union all
select para_name,para_value from v$dm_ini where para_name like 'RECYCLE'
union all
select para_name,para_value from v$dm_ini where para_name like 'RECYCLE_POOLS'
union all
select para_name,para_value from v$dm_ini where para_name like 'HJ_BUF_GLOBAL_SIZE'
union all
select para_name,para_value from v$dm_ini where para_name like 'HJ_BUF_SIZE'
union all
select para_name,para_value from v$dm_ini where para_name like 'HAGR_BUF_GLOBAL_SIZE'
union all
select para_name,para_value from v$dm_ini where para_name like 'HAGR_BUF_SIZE'
union all
select para_name,para_value from v$dm_ini where para_name like 'SESS_POOL_SIZE'
union all
select para_name,para_value from v$dm_ini where para_name like 'CACHE_POOL_SIZE'
union all
select para_name,para_value from v$dm_ini where para_name like 'USE_PLN_POOL'
union all
select para_name,para_value from v$dm_ini where para_name like 'OLAP_FLAG'
union all
select para_name,para_value from v$dm_ini where para_name like 'VIEW_PULLUP_FLAG'
union all
select para_name,para_value from v$dm_ini where para_name like 'SORT_BUF_SIZE'
union all
select para_name,para_value from v$dm_ini where para_name like 'TEMP_SIZE'
union all
select para_name,para_value from v$dm_ini where para_name like 'MAX_SESSIONS'
union all
select para_name,para_value from v$dm_ini where para_name like 'MAX_SESSION_STATEMENT'
union all
select para_name,para_value from v$dm_ini where para_name like 'PK_WITH_CLUSTER'
union all
select para_name,para_value from v$dm_ini where para_name like 'COMPATIBLE_MODE'
union all
select para_name,para_value from v$dm_ini where para_name like 'MONITOR'
union all
select para_name,para_value from v$dm_ini where para_name like 'IO_THR_GROUPS';