# cat /etc/*-release
Kylin Linux Advanced Server release V10 (Sword)
DISTRIB_ID=Kylin
DISTRIB_RELEASE=V10
DISTRIB_CODENAME=juniper
DISTRIB_DESCRIPTION="Kylin V10"
DISTRIB_KYLIN_RELEASE=V10
DISTRIB_VERSION_TYPE=enterprise
DISTRIB_VERSION_MODE=normal
NAME="Kylin Linux Advanced Server"
VERSION="V10 (Sword)"
ID="kylin"
VERSION_ID="V10"
PRETTY_NAME="Kylin Linux Advanced Server V10 (Sword)"
ANSI_COLOR="0;31"
Kylin Linux Advanced Server release V10 (Sword)
# uname -ra
Linux DCA 4.19.90-24.4.v2101.ky10.x86_64 #1 SMP Mon May 24 12:14:55 CST 2021 x86_64 x86_64 x86_64 GNU/Linux
SQL> select DB_VERSION,BUILD_VERSION from v$instance;
DB_VERSION BUILD_VERSION
------------------- -----------------------------------
DB Version: 0x7000c 1-3-12-2023.04.17-187846-20040-ENT
该参数控制日志文件使用的簇大小,以 M为单位, 默认每个日志文件大小为 256M,可以配置为64和 2048之间的整数。 如果设置过小,更新等较大的事务,可能会导致redo log 频繁切换,从而影响数据库性能。 推荐值:2048M。
SQL> select PATH,RLOG_SIZE/1024/1024 MB from v$rlogfile;
行号 PATH MB
---------- ------------------------- --------------------
1 /dm8/data/DM01/DM0101.log 2048
2 /dm8/data/DM01/DM0102.log 2048
数据文件使用的页大小,可以为 4K、8K、 16K或 32K之一,选择的页大小越大,则 DM支持的元组长度也越大,但同时空间利用率可能下降,因为每次新分配的块体积变大,耗费时间也越长,该参数默认是8K。只能是 4K、8K、16K或32K之一。
推荐是32k的页,虽然大页会导致IO的增加,空间利用率下降,新版本优化后性能并没有太大影响,反而应用兼容性更好
[dmdba@localhost /dm8/data/DM01 2023-08-08 12:08:56]
$ cat dminit20230803210515.log|grep "page size"
page size: 32768
该参数控制数据文件使用的簇大小,即每次分配新的段空间时连续的页数,默认是16页,只能配置16页、32页、64页之一,生产环境推荐使用32页。即每次扩容 32*PAGE_SIZE。
[dmdba@localhost /dm8/data/DM01 2023-08-08 12:05:40]
$ cat dminit20230803210515.log|grep "extent size"
extent size: 32
CASE_SENSITIVE有 0 和 1 两个值,分别代表不同含义。
另外,在使用disql查询工具进行查询时,默认会将小写转为大写。
SQL> select decode(case_sensitive,1,'大小写敏感','大小写不敏感');
DECODE(CASE_SENSITIVE,1,'大小写敏感','大小写不敏感')
----------------------------------------------------
大小写敏感
字符集选项, 取值: 0 代表 GB18030, 1 代表 UTF-8, 2 代表韩文字符集 EUC-KR。 默认为 0
SQL> select sf_get_unicode_flag();
SF_GET_UNICODE_FLAG()
---------------------
0 已用时间: 1.848(毫秒). 执行号:1004. SQL> select unicode(); UNICODE() ----------- 0 已用时间: 1.195(毫秒). 执行号:1005.
1 或 Y:是, 所有 VARCHAR 类型对象的长度以字符为单位。 这种情况下, 定义长度并非真正按照字符长度调整,而是将存储长度值按照理论字符长度进行放大。所以会出现实际可插入字符数超过定义长度的情况,这种情况也是允许的。同时,存储的字节长度 8188 上限仍然不变,也就是说,即使定义列长度为 8188 字符,其实际能插入的字符串占用总字节长度仍然不能超过 8188;
0 或 N:否,所有 VARCHAR 类型对象的长度以字节为单位。默认是0。
该参数影响的仅仅是VARCHAR数据类型,对CHAR类型不影响。
SQL> select para_name,para_value from v$dm_ini where para_name='LENGTH_IN_CHAR';
行号 PARA_NAME PARA_VALUE
---------- -------------- ----------
1 LENGTH_IN_CHAR 0
该参数在整个实例生命周期内是不能被修改的,若要修改,只能重建数据库。设置字符串比较时, 结尾空格填充模式是否兼容 ORACLE。 取值: 1 兼容; 0 不兼容。默认为 0。
当BLANK_PAD_MODE=0时,除去group by 这种分组操作时严格区分外,其他比较、count等操作不严格区分'a'和'a ',认为这两个字符串是相等的
SQL> select para_name,para_value from v$dm_ini where para_name='BLANK_PAD_MODE';
PARA_NAME PARA_VALUE
-------------- ----------
BLANK_PAD_MODE 0
已用时间: 6.584(毫秒). 执行号:1008. SQL> select blank_pad_mode(); BLANK_PAD_MODE() ---------------- 0
space_compare_mode参数是一静态参数,在初始化数据库后可进行修改,修改后需重启数据库,初始化数据库后space_compare_mode默认值是 0。
当SPACE_COMPARE_MODE=0时,除去group by 类似操作严格区分外,其他操作不严格区分。
space_compare_mode 有 0 和 1 两个值。
SQL> select para_name,para_value from v$dm_ini where para_name='SPACE_COMPARE_MODE';
PARA_NAME PARA_VALUE
------------------ ----------
SPACE_COMPARE_MODE 0
除以上参数会影响到具体的使用外,还有默认加密算法、默认HASH算法、根密钥加密引擎、全库加密算法、是否使用改进的字符类型HASH算法(USE_NEW_HASH)等参数也是实例生命周期内不允许修改的,这些参数只会在做备份还原时要求一致性,对实际使用影响不大,可根据需求定义即可。
达梦社区技术https://eco.dameng.com
文章
阅读量
获赞