当前位置: 首页 > news >正文

达梦数据库日常运维命令

查询数据库表空间数据文件使用大小限制

DECLARE
K INT:=(SELECT cast(PAGE()/1024 as varchar));
BEGIN
SELECTF."PATH" 数据文件                ,F.CLIENT_PATH,G.NAME 所属表空间,F.MAX_SIZE||'M' 文件扩展限制,(CASE F.AUTO_EXTEND WHEN '1' THEN '是'  ELSE '否' END) 文件自动扩容,(CASE F.NEXT_SIZE WHEN '0' THEN '默认值' ELSE F.NEXT_SIZE||'M' END) 文件下次扩容值,F.TOTAL_SIZE*K/1024 ||'M' 文件当前大小 ,ROUND((F.FREE_SIZE * K/1024 /(F.TOTAL_SIZE * K/1024.0)),2)*100 ||'%' AS 空闲率,(1-ROUND((F.FREE_SIZE * K/1024 /(F.TOTAL_SIZE * K/1024.0)),2))*100 ||'%' AS 使用率   
FROM    SYS."V$DATAFILE" F LEFT JOIN SYS.V$TABLESPACE G ON F.GROUP_ID=G.ID ORDER BY 1;
END;/

查询系统所有的账号
SQL> select username,account_status,created,default_tablespace,default_index_tablespace,temporary_tablespace from dba_users;

查询所有的数据库对象

SELECTA.USERNAME "用户名",(SELECT COUNT(1) FROM DBA_TABLES B WHERE B.OWNER = A.USERNAME) "表数量",( SELECT COUNT(1) FROM DBA_VIEWS G WHERE G.OWNER = A.USERNAME ) "视图数量",( SELECT COUNT(1) FROM DBA_TRIGGERS H WHERE H.OWNER = A.USERNAME ) "触发器数量",( SELECT COUNT(DISTINCT I.NAME) FROM DBA_SOURCE I WHERE I.OWNER = A.USERNAME AND I.TYPE = 'FUNCTION' ) "函数数量",( SELECT COUNT(1) FROM DBA_SEQUENCES J WHERE J.SEQUENCE_OWNER = A.USERNAME ) "序列数量",( SELECT COUNT(DISTINCT L.NAME) FROM DBA_SOURCE L WHERE L.OWNER = A.USERNAME AND L.TYPE = 'PROCEDURE' ) "存储过程数量",( SELECT COUNT(1) FROM DBA_DB_LINKS M WHERE M.OWNER = A.USERNAME ) "DBLINK数量",( SELECT COUNT(1) FROM DBA_INDEXES I WHERE UNIQUENESS = 'UNIQUE' AND OWNER =A.USERNAME OR INDEX_NAME NOT LIKE 'SYS_%' AND OWNER =A.USERNAME) "索引数量",( SELECT COUNT(1) FROM DBA_OBJECTS WHERE OBJECT_TYPE='TYPE' AND OWNER =A.USERNAME ) "自定义类型",( SELECT COUNT(1) FROM DBA_OBJECTS WHERE OBJECT_TYPE='PACKAGE' AND OWNER =A.USERNAME) "PKG数量"
FROMDBA_USERS A WHERE A.USERNAME IN ('MMIS_INNOVATION','MMIS_HD','SENYI','WANGHAI','GK_INNOVATION','SCM_INNOVATION');

查看数据库集群相关参数值

select '实例名称' 数据库选项,INSTANCE_NAME 数据库集群相关参数值 FROM v$instance union all
select '数据库版本',substr(svr_version,instr(svr_version,'(')) FROM v$instance union all   SELECT '字符集',CASE SF_GET_UNICODE_FLAG() WHEN '0' THEN 'GBK18030' WHEN '1' then 'UTF-8' when '2' then 'EUC-KR' end union all
SELECT '页大小',cast(PAGE()/1024 as varchar) union all   SELECT '簇大小',cast(SF_GET_EXTENT_SIZE() as varchar) union all
SELECT '大小写敏感',cast(SF_GET_CASE_SENSITIVE_FLAG() as varchar) union all
select '数据库模式',MODE$ from v$instance union all
select '唯一魔数',cast(permanent_magic as varchar) union all
select 'LSN',cast(cur_lsn as varchar) from v$rlog;

查看达梦错误码汇总
select * from v$err_info;

查看数据库的到期时间
select * from v$license;

查询 SQL 执行记录
SELECT * FROM V$SQL_HISTORY;

查看建库时的字符集
select unicode();
–根据返回值进行判断
–0 表示 GB18030,1 表示 UTF-8,2 表示 EUC-KR

如何获取达梦当前模式名
SQL> SELECT SF_GET_SCHEMA_NAME_BY_ID(CURRENT_SCHID());

查看实例是否是空格自动填充
select * from v$dm_ini where para_name = ‘BLANK_PAD_MODE’;

查看当前的密码策略
select PWD_POLICY,SF_GET_USERNAME_BY_ID(ID),* from SYSUSERS;

查看数据库是否开启加密通信
SELECT * FROM V$DM_INI WHERE PARA_NAME= ‘COMM_ENCRYPT_NAME’;

#如未开启,可以用以下命令开启SP_SET_PARA_STRING_VALUE(2,‘COMM_ENCRYPT_NAME’,‘DES_OFB’);

查看是否是免密登录
select * from v$dm_ini where para_name=‘ENABLE_LOCAL_OSAUTH’;
如果未开启,可以用SP_SET_PARA_VALUE(2,‘ENABLE_LOCAL_OSAUTH’,1);

查看备份路径
select para_name,para_value from v$dm_ini where para_name=‘BAK_PATH’;

查找出活动会话中执行时间大于 1S 的 SQL

select * from (
select timestampdiff(second,s.last_recv_time,sysdate) t ,s.* 
from v$sessions s  where state='ACTIVE')
where t > 1

查看对象或资源发生等待问题
SELECT * FROM v$sessions WHERE state=‘ACTIVE’
AND dbms_lob.substr(sf_get_session_sql(sess_id)) LIKE ‘%语句片段%’;
查看执行效率低的SQL

SELECT*
FROM(SELECTsess_id                                         ,sql_text                                        ,datediff (ss, last_recv_time, SYSDATE) Y_EXETIME,SF_GET_SESSION_SQL (SESS_ID) fullsql            ,clnt_ipFROMV$SESSIONSWHERESTATE = 'ACTIVE')
WHEREY_EXETIME >= 2; 

查看是否有异常SQL

select top 60datediff(ss, last_send_time, sysdate) as time,sess_id,run_status,sql_text,auto_cmt,user_name,appname,clnt_ip,trx_id
from v$sessions
order by time desc;

查看句柄数是否满了

selectsql_text               ,state                  ,n_stmt "句柄的容量"         ,n_used_stmt as "使用的句柄数",curr_sch               ,user_name              ,trx_id                 ,create_time            ,clnt_type              ,clnt_ip                ,run_status
fromv$sessions;

查看是否用户设置了最大空闲时间参数
select b.username 账号,b.password_versions 密码策略,a.sess_per_user 同时拥有的会话数,a.conn_idle_time 会话访问服务器的时间上限 from sysusers a,dba_users b where a.id=b.user_id;

查询当前数据库实例是否有阻塞

select * from v$trxwait ;
select sess_id,sql_text,trx_id from v$sessions;
sp_close_session(sess_id)

#查看死锁历史select * from V$DEADLOCK_HISTORY;

WITH LOCKSAS (SELECT O.NAME,L.*,S.SESS_ID,S.SQL_TEXT,S.CLNT_IP,S.LAST_SEND_TIMEFROM V$LOCK L, SYSOBJECTS O, V$SESSIONS SWHERE L.TABLE_ID = O.ID AND L.TRX_ID = S.TRX_ID),LOCK_TRAS (SELECT TRX_ID WT_TRXID, TID BLK_TRXIDFROM LOCKSWHERE BLOCKED = 1),RESAS (SELECT SYSDATE STATTIME,T1.NAME,T1.SESS_ID WT_SESSID,S.WT_TRXID,T2.SESS_ID BLK_SESSID,S.BLK_TRXID,T2.CLNT_IP,SF_GET_SESSION_SQL (T1.SESS_ID) FULSQL,DATEDIFF (SS, T1.LAST_SEND_TIME, SYSDATE) SS,T1.SQL_TEXT WT_SQLFROM LOCK_TR S, LOCKS T1, LOCKS T2WHERE     T1.LTYPE = 'OBJECT'AND T1.TABLE_ID <> 0AND T2.LTYPE = 'OBJECT'AND T2.TABLE_ID <> 0AND S.WT_TRXID = T1.TRX_IDAND S.BLK_TRXID = T2.TRX_ID)
SELECT DISTINCT WT_SQL,CLNT_IP,SS,WT_TRXID,BLK_TRXIDFROM RES;

查看死锁

SELECT O.NAME,L.* FROM V$LOCK L,SYSOBJECTS O WHERE L.TABLE_ID=O.ID AND BLOCKED=1;
http://www.lryc.cn/news/611599.html

相关文章:

  • cdn是什么
  • 【C++】unordered系列容器使用及封装
  • 生成式 AI 重塑自动驾驶仿真:4D 场景生成技术的突破与实践
  • QT----不同线程中信号发送了槽函数没反应QObject::connect: Cannot queue arguments of typeXXX
  • SG105 Pro 网管交换机的3种VLAN配置
  • java实现生成自定义二维码
  • 软考信息安全工程师11月备考
  • Ragflow介绍与安装
  • 考研408_数据结构笔记(第四章 串)
  • Spearman 相关系数与 Pearson 相关系数的区别
  • Java 工具类的“活化石”:Apache Commons 核心用法、性能陷阱与现代替代方案
  • 湖南14个市州分流线得分率对比
  • 【科研绘图系列】R语言绘制瀑布图
  • RNN梯度爆炸/消失的杀手锏——LSTM与GRU
  • 自学嵌入式 day45 ARM体系架构
  • 异世界历险之数据结构世界(非递归快排,归并排序(递归,非递归))
  • Leetcode题解:739每日温度,用单调栈解决问题!
  • 分布式存储 Ceph 的演进经验 · SOSP 2019
  • 从零搭建React框架--第一章:create-react-app、antd、less
  • 深度解析|资源位管理工具如何重构媒体商业化效率?
  • 《算法导论》第 8 章—线性时间排序
  • 福彩双色球第2025090期篮球号码分析
  • 【STL源码剖析】从源码看 vector:底层扩容逻辑与内存复用机制
  • Python实现信号小波分解与重构
  • 飞算JavaAI开发平台:重构开发全流程——从需求到工程的智能化跃迁
  • 数据大集网:以数据为纽带,重构企业贷获客生态的助贷平台实践
  • React 表单处理:移动端输入场景下的卡顿问题与防抖优化方案
  • WebSocket 通信与 WebSocketpp 库使用指南
  • Baumer相机如何通过YoloV8深度学习模型实现农作物水稻病虫害的检测识别(C#代码UI界面版)
  • 深度学习-卷积神经网络CNN-多输入输出通道