注册
达梦数据库日常维护
专栏/培训园地/ 文章详情 /

达梦数据库日常维护

一方石 2024/09/03 920 0 0
摘要

一、查询表空间使用率

select name,
sum(total_size) * sf_get_page_size() / 1024 / 1024 || 'M' "Size(MB)",
sum(free_size) * sf_get_page_size() / 1024 / 1024 || 'M' "Free(MB)",
(sum(total_size)-sum(free_size)) * 100 / sum(total_size) || '%' "Used(%)"
from (select t.name, d.total_size, d.free_size
from v$tablespace t, v$datafile d
where t.id = d.group_id)
group by name;

二、将控制文件转成文本文件

dmctlcvt type=1 src=dm.ctl dest=dmctl.txt

redo日志管理:
select * from v$rlogfile;
select * from v$rlog; --cur_file表示正在使用的联机日志

三、归档管理

DM 支持手工切换归档:
alter SYSTEM ARCHIVE LOG CURRENT;
alter SYSTEM SWITCH LOGFILE;
alter DATABASE ARCHIVELOG CURRENT;

归档文件的查询:
select * from v$ifun t where name like 'SF_ARCHIVELOG_%';
归档文件的删除:
Select SF_ARCHIVELOG_DELETE_BEFORE_TIME(sysdate-10);
修改联机日志文件路径(迁移联机日志文件)
alter database mount;
alter database RENAME LOGFILE '/dm8/data/DAMENG/DMSERVER01.log' TO '/SJ/redo/DM01.log';
alter database open;

四、索引的管理

达梦数据库中的普通表是聚簇索引表,聚族索引对列存储表和堆表无效。
分区表的类型:范围分区、列表分区、哈希分区。
索引的重建(生产环境建议使用 online 方式重建,不影响表的 DML 操作):
alter index dmhr.ix_emp_employeename rebuild ONLINE;
索引的数据字典:
select * from dba_indexes t where t.OWNER ='XXX';
select * from dba_ind_columns t where t.index_OWNER ='XXX';
删除索引:
drop index dmhr.ix_emp_employeename;

非空约束
alter table dba01.t_testoa modify pname not null;
唯一约束
alter table dba01.t_testoa add CONSTRAINT uk_testpid_email unique (email);
主键约束
alter table dba01.t_testoa ADD CONSTRAINT pk_testpid_id PRIMARY KEY(id);
检验约束
alter table dba01.t_testoa add salary number(10,2);
alter table dba01.t_testoa ADD CONSTRAINT ck_testpid_salary CHECK (salary>=2100);
外键约束(外键引用两一张表的主键或者唯一键)
alter table dba01.t_testoa add CONSTRAINT fk_test_id FOREIGN KEY(id) REFERENCES dba01.t_testoa(id);

五、统计信息的收集:

SQL> dbms_stats.gather_table_stats('dmhr','t_emp');

统计信息的查看
SQL> dbms_stats.table_stats_show('dmhr','t_emp');
SQL> alter index dmhr.ix_emp_employeename MONITORING USAGE;--开启索引监控
SQL> alter index dmhr.ix_emp_employeename NOMONITORING USAGE;--关闭索引监控
SQL> select * from v$object_usage;--查看索引的监控信息

六、系统安全

系统支持的口令策略有:
0 无策略
1 禁止与用户名相同
2 口令长度需大于等于 INI 参数 PWD_MIN_LEN 设置的值
4 至少包含一个大写字母(A-Z)
8 至少包含一个数字(0-9)
16 至少包含一个标点符号(英文输入法状态下,除“和空格外的所有符号)
口令策略可单独应用,也可组合应用。组合应用时,如需要应用策略 2 和 4,则设置口令策略为 2+4=6 即可。常见的有6、7、15、31.
PWD_POLICY 是隐含参数,PWD_POLICY,只能通过函数或 SQL 语句修改。

角色是权限的集合,角色使权限管理更加方便。 DBA:具有几乎所有权限(除审计和强制访问控制之外),默认赋给 SYSDBA 用户。 PUBLIC:具有对当前模式下对象的 DML 数据操作权限。 RESOURCE:具有在当前模式下对象定义权限(创建表、索引、视图等); SOI:具有查询 sys 开头系统表的权限; VTI:具有查询 v$开头的动态视图权限(动态视图记录在 v$dynamic_tables,如果没有此权 限,DM 管理工具上会报没有查询 v$视图权限) DB_AUDIT_开头的角色是审计相关角色,具有审计相关权限,默认赋给 SYSAUDITOR。
DB_POLICY_开头的角色是安全相关角色,具有强制访问控制等权限,默认赋给 SYSSSO。

七、JOB 运行和日志查看

--查看job select * from sysjob.sysjobs;
--运行job dbms_job.run(1640162093);
--查看job运行日志
select * from SYSJOB.SYSJOBHISTORIES2;

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服