达梦数据库常用管理SQL命令详解

描述

达梦数据库(DM)常用管理SQL命令

一、基础信息查询

1. 版本与授权信息

 

-- 查询数据库版本(DM7/DM8)
SELECT * FROM v$version;  -- DM7
SELECT id_code();        -- DM8

-- 查询授权信息
SELECT * FROM v$license;

 

SQL

在这里插入图片描述  

SQL

在这里插入图片描述

2. 服务器配置查询

 

-- 服务器基本信息
SELECT*FROM V$SYSTEMINFO;

-- 查看所有配置参数
SELECT*FROM v$dm_ini;

-- 综合信息查询(字符集/页大小/大小写敏感等)
SELECT'实例名称' 选项,INSTANCE_NAME 值 FROM v$instance 
UNIONALLSELECT'数据库版本',substr(svr_version,instr(svr_version,'(')) FROM v$instance 
UNIONALLSELECT'字符集',CASE SF_GET_UNICODE_FLAG() WHEN'0'THEN'GBK18030'WHEN'1'then'UTF-8'when'2'then'EUC-KR'end
UNIONALLSELECT'页大小',cast(PAGE()/1024asvarchar) 
UNIONALLSELECT'簇大小',cast(SF_GET_EXTENT_SIZE() asvarchar) 
UNIONALLSELECT'大小写敏感',cast(SF_GET_CASE_SENSITIVE_FLAG() asvarchar);

 

SQL

在这里插入图片描述

SQL

在这里插入图片描述

二、会话与性能监控

1. 会话管理

 

-- 查看所有会话
SELECT*FROM v$sessions;

-- 会话统计(按状态)
SELECTcount(*),state FROM v$sessions GROUPBY state;

-- 会话统计(按客户端IP)
SELECTcount(*),clnt_ip FROM v$sessions GROUPBY clnt_ip;

-- 终止指定会话
SP_CLOSE_SESSION(session_id);

 

SQL

在这里插入图片描述  

SQL

在这里插入图片描述

2. SQL监控

 

-- 查询最近执行的SQL
SELECT * FROM v$sql_history;

-- 查看长时间运行的SQL
SELECT * FROM v$long_exec_sqls;

-- 查看锁等待情况
SELECT * FROM v$lock WHERE blocked=1;

 

SQL

在这里插入图片描述  

SQL

在这里插入图片描述

三、对象管理

1. 表与字段查询

 

-- 查询用户下所有表
SELECT*FROM user_tables;  -- 当前用户
SELECT*FROM all_tables WHERE owner='USER01';  -- 指定用户

-- 查询表字段信息
SELECT*FROM all_tab_cols WHERE owner='USER01';

-- 查看表注释
SELECT*FROM ALL_TAB_COMMENTS WHERE owner='USER01';

-- 查看字段注释
SELECT*FROM ALL_COL_COMMENTS WHERE owner='USER01';

 

SQL

在这里插入图片描述

2. 索引查询

 

-- 查看表索引
SELECT * FROM user_indexes WHERE table_name='表名';

-- 查看索引字段
SELECT * FROM user_ind_columns WHERE index_name='索引名';

 

四、存储与备份

1. 表空间管理

 

-- 查看表空间信息
SELECT*FROM v$tablespace;

-- 查看数据文件
SELECT*FROM v$datafile;

-- 表空间使用情况
SELECT
    df.tablespace_name "表空间名称",
    df.bytes/1024/1024 "总大小(MB)",
    (df.bytes-fs.bytes)/1024/1024 "已用(MB)",
    fs.bytes/1024/1024 "剩余(MB)",
    ROUND(100*(df.bytes-fs.bytes)/df.bytes) "使用率(%)"
FROM
    (SELECT tablespace_name, SUM(bytes) bytes 
     FROM dba_data_files GROUPBY tablespace_name) df,
    (SELECT tablespace_name, SUM(bytes) bytes 
     FROM dba_free_space GROUPBY tablespace_name) fs
WHERE
    df.tablespace_name = fs.tablespace_name;

-- 表空间使用情况简化查询(仅显示剩余空间)
sql
SELECT
    tablespace_name,
    SUM(bytes)/1024/1024AS "剩余空间(MB)"
FROM
    dba_free_space
GROUPBY
    tablespace_name;

 

SQL

在这里插入图片描述

SQL

在这里插入图片描述  

SQL

在这里插入图片描述

2. 备份恢复

 

-- 查看备份信息
SELECT * FROM v$backupset;

-- 执行在线备份
BACKUP DATABASE FULL BACKUPSET '/backup/full_bak';

 

五、性能优化

1. 参数调整

 

-- 修改参数(内存参数需要重启)
SP_SET_PARA_VALUE(1, '参数名', 值);

 

2. 统计信息

 

-- 收集统计信息
DBMS_STATS.GATHER_TABLE_STATS('模式名','表名');

-- 查看统计信息
SELECT * FROM user_tab_statistics;
-- 内存使用情况
SELECT * FROM v$mem_pool;

 

掌握这些常用SQL命令,可以大大提高达梦数据库的管理效率。建议收藏备用,根据实际需求灵活运用。

链接:https://zuiyl.blog.csdn.net/article/details/148516254

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分