达梦数据库常用参数查询

  1. 字符集

字符是各种文字和符号的统称,包括各个国家文字、标点符号、表情、数字等等。 字符集 就是一系列字符的集合。字符集的种类较多,每个字符集可以表示的字符范围通常不同,就比如说有些字符集是无法表示汉字的。 常见的字符集有 ASCII、GB18030、GBK、UTF-8等。GB18030 完全兼容 GB2312 和 GBK 字符集,纳入中国国内少数民族的文字,且收录了日韩汉字,是目前为止最全面的汉字字符集,共收录汉字 70000 多个。

此参数实例初始化之后便不能再修改,查询命令:

select '字符集',decode(unicode,'0''GB18030''1''UTF-8''2''EUC-KR');

字符集

  1. 大小写是否敏感

此参数实例初始化之后便不能再修改;

大小写不敏感的数据库中,DML或DDL操作时:

1)无论对不对表名或列名添加"",表名和列名的大小写形式不会发生变化,大写形式就是大写形式,小写形式就是小写形式;

2)不允许存在同名的数据库对象,即使大小写不同,默认也只能存在一个;

3)查询时,“”界定符不区分大小写,界定符中的查询或过滤条件即使是大写或小写,都可以查询到预期的结果集,进行DML操作时依旧。

大小写敏感的数据库中,DML或DDL操作时:

1)如果不对表名或列名添加"",那么表名和列名都自动转换为大写形式;

2)对其进行DML操作时,需要利用”“指定表名和字段名,否则默认会认定以大写形式去查询对象。

大小写敏感查询语句:

select '大小写敏感',decode(SF_GET_CASE_SENSITIVE_FLAG,'0''不敏感''1''敏感');

大小写敏感

  1. varchar是否以字符为单位

当参数值设置为以字节为单位时,VARCHAR2列采用字节长度方式。
比如varchar(20),如果是GBK字符,存放汉字就可以存放10个汉字,对于UTF字符集,最多只能存20/3=6个汉字。

查询语句:

select 'varchar是否以字符为单位',decode(PARA_VALUE,'0''否''1''是') from V$DM_INI where para_name = 'LENGTH_IN_CHAR';

varchar是否以字符为单位

  1. 页大小

此参数实例初始化之后便不能再修改;

数据页(也称数据块)是 DM 数据库中最小的数据存储单元,建议设置成32K。

查询语句:

select '页大小',page()/1024||'KB';

页大小

  1. 兼容性要求

如果是从其他数据库迁移到达梦,建议进行设置成对应的兼容参数。

查询语句:

select '数据库兼容性',decode(PARA_VALUE,'0''不兼容''1''SQL92''2''oracle''3''MS SQLSERVER''4''MYSQL''5''DM6''16''Teradata') from V$DM_INI where para_name = 'COMPATIBLE_MODE';

数据库兼容性

  1. 调整dm.ini
    最大内存:MAX_OS_MEMORY=80
    数据库的主内存池:MEMORY_POOL=2048
    总内存的2/3:BUFFER

  2. 其他参数

#是否启用四权分立(仅在安全版本下可见和设置)。
select * from V$parameter where name='PRIV_FLAG';
#查看角色
select * from DBA_ROLES;
#查看用户
select * from DBA_USERS;
#查看Pwdpolic口令策略。0是无,1是不与用户名相同,2是不少于9位,4是包含大写字母,8是包含数字,16是包含符号,可以累加
select * from V$parameter where name='PWD_POLICY';
#配置Pwdpolic口令策略
SP_SET_PARA_VALUE (1,'PWD_POLICY',31);
#用户登录情况
select username as "用户名",conn_idle_time as "用户会话的最大空闲时间",life_time  as "过期时间",lock_time as "锁定时间",FAILED_NUM as "失败登陆次数" from sysusers a,all_users b where id=b.user_id;
#配置登录失败处理功能
alter user "SYSDBA" limit failed_login_attemps 5, password_lock_time 10;
#配置空闲会话超时
alter user "SYSDBA" limit connect_idle_time 10;
#表空间状态
select * from v$datafile;
#表空间加密算法
select name,encrypt_name from V$TABLESPACE;
#通信是否加密,1:为加密
select * from V$parameter where name='ENABLE_ENCRYPT';
#数据库整体的连接数限制(单个用户的连接数在  安全->登录->登录名“右键”->属性)
SELECT * FROM V$PARAMETER WHERE NAME='MAX_SESSIONS';
#查看审计状态。0:关闭审计;1:打开普通审计;2:打开普通审计和实时审计
select * from V$parameter where name='ENABLE_AUDIT';
#查看审计日志,进行一次审计设置就在 SYSAUDIT 中增加一条对应的记录
select * from SYSAUDITOR.SYSAUDIT;
#查看详细的审计策略
select * from SYSAUDITOR.V$AUDITRECORDS;
#配置审计状态
SP_SET_ENABLE_AUDIT(1);
#配置审计策略
SP_AUDIT_OBJECT('INSERT', 'SYSAUDITOR', 'SYSAUDITOR', 'SYSAUDIT', 'ALL');
SP_AUDIT_OBJECT('DELETE', 'SYSAUDITOR', 'SYSAUDITOR', 'SYSAUDIT', 'ALL');
SP_AUDIT_OBJECT('UPDATE', 'SYSAUDITOR', 'SYSAUDITOR', 'SYSAUDIT', 'ALL');
SP_AUDIT_OBJECT('INSERT', 'SYSDBA', 'SYSAUDITOR', 'SYSAUDIT', 'ALL');
SP_AUDIT_OBJECT('DELETE', 'SYSDBA', 'SYSAUDITOR', 'SYSAUDIT', 'ALL');
SP_AUDIT_OBJECT('UPDATE', 'SYSDBA', 'SYSAUDITOR', 'SYSAUDIT', 'ALL');
#查询表
SELECT * FROM ALL_TABLES;
#查看表定义,入参:模式名,表名
SELECT TABLEDEF('SYSDBA','TEST');
#查看主键
SELECT * FROM ALL_CONSTRAINTS where CONSTRAINT_type='P';
#查通过加密引擎加载的加密算法
select * from V$external_crypto_libs;
#查数据库里所有的加密算法,包括通用加密算法
select * from  V$CIPHERS;
#配置文件在 安装目录DMDBMS文件夹的dm.ini中
#查询数据库版本,默认端口:5236
select * from v$version;
select id_code;
#数据库资源限制
select * from V$DM_ARCH_INI;
#license有效期
select * from v$license;
#远程管理地址限制
ALTER USER 123 NOT_ALLOW_IP "1.1.1.1";
#查询归档开启状态
select arch_mode from v$database;
  1. 开启归档

1、命令开启

#修改数据库状态为mount
ALTER DATABASE MOUNT;
#配置本地归档策略
ALTER DATABASE ADD ARCHIVELOG ‘DEST = home/dmdbms/data/DAMENG/arch, TYPE = local, FILE_SIZE = 128, SPACE_LIMIT = 1024;
#开启归档模式
ALTER DATABASE ARCHIVELOG;
#修改数据库状态为open
ALTER DATABASE OPEN;
#查看归档模式打开状态,结果为“Y”
select arch_mode from v$database;

2、图形化开启
DM管理工具–》右键数据库–》管理服务器–》系统管理–》选择配置后点“转换”–》归档配置–》选择归档,添加归档配置,确定–》系统管理–》选择打开后点“转换”–》重启数据库
在这里插入图片描述

  1. 其他优化
    DM8 20240116版本:
    DISTINCT改动:select DISTINCT A.* from A INNER JOIN (select (这里也要加DISTINCT) B.* from B INNER JOIN C ) D

  2. 命令行导出

cd /home/dmdbms/bin && ./dexp "SYSDBA"/"SYSDBA"@LOCALHOST:5236 DIRECTORY=/opt/back FILE=exp_$(date +%Y%m%d).dmp SCHEMAS=TEMP TABLESPACE=N DROP=N LOG=exp_$(date +%Y%m%d).log LOG_WRITE=N
#crontab
0 0 * * * cd /home/dmdbms/bin && ./dexp "SYSDBA"/"SYSDBA"@LOCALHOST:5236 DIRECTORY=/opt/back FILE=exp_$(date +\%Y\%m\%d).dmp SCHEMAS=TEMP TABLESPACE=N DROP=N LOG=exp_$(date +\%Y\%m\%d).log LOG_WRITE=N
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值