达梦数据库-学习-16-常用SQL记录(持续更新)

发布于:2025-04-12 ⋅ 阅读:(78) ⋅ 点赞:(0)

目录

一、环境信息

二、介绍

三、查询SQL

1、数据库的总使用空间大小

2、各个表空间的总大小

3、使用空间最大的50个对象

4、使用率最高的50个sequence

5、使用空间率最高的50个自增列

6、定位锁

7、支持HINT

8、表数据页使用率

9、备份文件相关信息

10、初始化库参数信息

11、REDO日志信息

12、归档文件信息

13、DBMS_SCHEDULER包创建且正在执行的作业


一、环境信息

名称
CPU 12th Gen Intel(R) Core(TM) i7-12700H
操作系统 CentOS Linux release 7.9.2009 (Core)
内存 4G
逻辑核数 2
DM版本 1          DM Database Server 64 V8
2          DB Version: 0x7000c
3          03134284194-20240703-234060-20108
4          Msg Version: 12
5          Gsu level(5) cnt: 0

二、介绍

我们在工作中经常要编写一些SQL语句来辅助我们排查定位问题,但每次都要现写,表示很麻烦,这里做个记录积少成多。

三、查询SQL

1、数据库的总使用空间大小

SELECT 
    ROUND((SUM(BYTES)/1024/1024), 2) AS TOTALSIZE
FROM DBA_DATA_FILES;

行号     TOTALSIZE
---------- ---------
1          340

已用时间: 20.217(毫秒). 执行号:1924.

2、各个表空间的总大小

SELECT 
    TABLESPACE_NAME,
    ROUND(SUM(BYTES) / 1024 / 1024, 2) AS TOTALSIZE,
    CASE 
        WHEN CONTENTS = 'TEMPORARY' THEN 'TEMPORARY' 
        ELSE 'PERMANENT' 
    END AS TYPE
FROM (
    SELECT TABLESPACE_NAME, BYTES, CONTENTS FROM DBA_DATA_FILES
    JOIN DBA_TABLESPACES USING (TABLESPACE_NAME)
)
GROUP BY TABLESPACE_NAME, CONTENTS
ORDER BY TABLESPACE_NAME;

行号     TABLESPACE_NAME TOTALSIZE TYPE     
---------- --------------- --------- ---------
1          MAIN            256       PERMANENT
2          ROLL            128       PERMANENT
3          SYSTEM          74        PERMANENT
4          TEMP            10        TEMPORARY

已用时间: 27.572(毫秒). 执行号:1926.

3、使用空间最大的50个对象

SELECT 
    OWNER,
    SEGMENT_NAME,
    SEGMENT_TYPE,
    ROUND(SUM(BYTES) / 1024, 2) AS TOTAL_SIZE
FROM DBA_SEGMENTS
WHERE 
OWNER NOT IN ('SYS','SYSAUDITOR','SYSSSO','CTISYS')
GROUP BY OWNER, SEGMENT_NAME, SEGMENT_TYPE
ORDER BY TOTAL_SIZE DESC
FETCH FIRST 50 ROWS ONLY;


行号     OWNER  SEGMENT_NAME  SEGMENT_TYPE TOTAL_SIZE
---------- ------ ------------- ------------ ----------
1          SYSDBA INDEX33555472 INDEX        128
2          SYSDBA SUN           TABLE        128

已用时间: 295.663(毫秒). 执行号:1922.

4、使用率最高的50个sequence

SELECT SEQUENCE_OWNER,
       SEQUENCE_NAME,
       TO_NUMBER(ROUND(CAST(LAST_NUMBER AS DOUBLE) / MAX_VALUE * 100, 2)) || '%' AS PERCENTAGE
    FROM DBA_SEQUENCES
   WHERE SEQUENCE_OWNER != 'SYS'
ORDER BY PERCENTAGE DESC
FETCH FIRST 50 ROWS ONLY;

5、使用空间率最高的50个自增列

SELECT A.owner,
       A.OBJECT_NAME,
       ROUND(C.bytes / 1024 / 1024, 2) AS TotalSizeM
      FROM all_objects a
INNER JOIN SYSOBJECTS B
        ON a.OBJECT_ID = b.ID
INNER JOIN dba_segments C
        ON A.owner = C.owner 
       AND A.OBJECT_NAME = C.segment_name
     where b.SUBTYPE$ = 'UTAB'
       AND b.INFO6 != '0x0000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100'
  ORDER BY TotalSizeM DESC
FETCH FIRST 50 ROWS ONLY;

6、定位锁

SELECT
A.*,
B.SESS_ID,B.SQL_TEXT,B.USER_NAME,B.CLNT_IP,
C.SESS_ID,C.SQL_TEXT,C.USER_NAME,C.CLNT_IP
FROM (SELECT TRX_ID,LTYPE,LMODE,TID FROM V$LOCK WHERE BLOCKED = 1) A 
JOIN V$SESSIONS B ON A.TRX_ID = B.TRX_ID
JOIN V$SESSIONS C ON A.TID    = C.TRX_ID;
别名 描述
A 锁信息
B 等待锁的会话信息
C 持有锁的会话信息

7、支持HINT

SELECT * FROM V$HINT_INI_INFO ORDER BY PARA_NAME;

8、表数据页使用率

SELECT
    OWNER,
    TABLE_NAME,
    SF_GET_PAGE_SIZE() PAGE_SIZE,
    TABLE_USED_SPACE(OWNER,TABLE_NAME) TOTAL_PAGE_NUMS,
    TABLE_USED_PAGES(OWNER,TABLE_NAME) USE_PAGE_NUMS,
    CAST(CAST(TABLE_USED_PAGES(OWNER,TABLE_NAME) AS DOUBLE) / TABLE_USED_SPACE(OWNER,TABLE_NAME) AS NUMBER) * 100 PCT
FROM DBA_TABLES
WHERE
    OWNER NOT IN ('SYS','SYSAUDITOR','SYSSSO','CTISYS')
    AND 
    TABLE_USED_SPACE(OWNER,TABLE_NAME) != 0


行号     OWNER  TABLE_NAME PAGE_SIZE   TOTAL_PAGE_NUMS      USE_PAGE_NUMS        PCT  
---------- ------ ---------- ----------- -------------------- -------------------- -----
1          SYSDBA SUN        8192        16                   15                   93.75

已用时间: 34.657(毫秒). 执行号:1928.

9、备份文件相关信息

SQL> SELECT DEVICE_TYPE,BACKUP_PATH,TYPE,LEVEL,OBJECT_NAME,BACKUP_TIME,ENCRYPT_TYPE,COMPRESS_LEVEL,BEGIN_LSN,END_LSN,CUMULATIVE,VERSION FROM V$BACKUPSET;

行号     DEVICE_TYPE BACKUP_PATH                             TYPE        LEVEL       OBJECT_NAME BACKUP_TIME                ENCRYPT_TYPE
---------- ----------- --------------------------------------- ----------- ----------- ----------- -------------------------- ------------
           COMPRESS_LEVEL BEGIN_LSN            END_LSN              CUMULATIVE  VERSION    
           -------------- -------------------- -------------------- ----------- -----------
1          DISK        /opt/Dm8/Data/DAMENG/bak/BACKUP_FILE_01 0           0           DAMENG      2025-04-11 14:27:38.266941 0
           0              27606874             27606954             0           16394


已用时间: 21.187(毫秒). 执行号:628.

10、初始化库参数信息

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 'VARCHAR类型是否以字符为单位',VALUE FROM V$PARAMETER WHERE NAME='LENGTH_IN_CHAR'

行号     '字符集'                 CASESF_GET_UNICODE_FLAG()WHEN'0'THEN'GBK18030'WHEN'1'THEN'UTF-8'WHEN'2'THEN'EUC-KR'END
---------- --------------------------- --------------------------------------------------------------------------------------
1          字符集                             GBK18030
2          页大小                             8
3          簇大小                             16
4          字符串比较大小写敏感        1
5          VARCHAR类型是否以字符为单位 0

已用时间: 14.854(毫秒). 执行号:629.

11、REDO日志信息

SQL> select * from v$rlogfile;

行号     GROUP_ID    FILE_ID     PATH                              CLIENT_PATH  CREATE_TIME                RLOG_SIZE            MIN_EXEC_VER
---------- ----------- ----------- --------------------------------- ------------ -------------------------- -------------------- ------------
           MIN_DCT_VER
           -----------
1          2           0           /opt/Dm8/Data/DAMENG/DAMENG01.log DAMENG01.log 2025-02-27 15:47:32.000000 2147483648           V8.1.1.1
           4

2          2           1           /opt/Dm8/Data/DAMENG/DAMENG02.log DAMENG02.log 2025-02-27 15:47:32.000000 2147483648           V8.1.1.1
           4


已用时间: 1.905(毫秒). 执行号:630.

12、归档文件信息

SQL> SELECT * FROM V$ARCHIVED_LOG limit 2;

行号     RECID       STAMP       NAME                                                                    DEST_ID     THREAD#             
---------- ----------- ----------- ----------------------------------------------------------------------- ----------- --------------------
           SEQUENCE#   RESETLOGS_CHANGE# RESETLOGS_TIME RESETLOGS_ID FIRST_CHANGE#        FIRST_TIME                 NEXT_CHANGE#        
           ----------- ----------------- -------------- ------------ -------------------- -------------------------- --------------------
           NEXT_TIME                  BLOCKS      BLOCK_SIZE  CREATOR REGISTRAR STANDBY_DEST ARCHIVED APPLIED DELETED STATUS COMPLETION_TIME
           -------------------------- ----------- ----------- ------- --------- ------------ -------- ------- ------- ------ ---------------
           DICTIONARY_BEGIN DICTIONARY_END END_OF_REDO BACKUP_COUNT ARCHIVAL_THREAD# ACTIVATION# IS_RECOVERY_DEST_FILE COMPRESSED FAL 
           ---------------- -------------- ----------- ------------ ---------------- ----------- --------------------- ---------- ----
           END_OF_REDO_TYPE BACKED_BY_VSS ARCH_TYPE EP_SEQNO    ARCH_SEQ             NEXT_SEQ             VERSION             
           ---------------- ------------- --------- ----------- -------------------- -------------------- --------------------
1          NULL        NULL        /opt/Dm8/Data/DAMENG/Arch/MyArch_0x35BA095E_EP0_2025-02-28_15-12-47.log NULL        0
           1           NULL              NULL           NULL         13461775             2025-02-28 15:12:47.615651 13461923
           2025-02-28 17:55:14.413378 NULL        NULL        NULL    NULL      NULL         YES      NULL    NO      A      NULL
           NULL             NULL           NULL        NULL         NULL             NULL        NO                    NULL       NULL
           NULL             NULL          LOCAL     0           7718                 7751                 458764


行号     RECID       STAMP       NAME                                                                    DEST_ID     THREAD#             
---------- ----------- ----------- ----------------------------------------------------------------------- ----------- --------------------
           SEQUENCE#   RESETLOGS_CHANGE# RESETLOGS_TIME RESETLOGS_ID FIRST_CHANGE#        FIRST_TIME                 NEXT_CHANGE#        
           ----------- ----------------- -------------- ------------ -------------------- -------------------------- --------------------
           NEXT_TIME                  BLOCKS      BLOCK_SIZE  CREATOR REGISTRAR STANDBY_DEST ARCHIVED APPLIED DELETED STATUS COMPLETION_TIME
           -------------------------- ----------- ----------- ------- --------- ------------ -------- ------- ------- ------ ---------------
           DICTIONARY_BEGIN DICTIONARY_END END_OF_REDO BACKUP_COUNT ARCHIVAL_THREAD# ACTIVATION# IS_RECOVERY_DEST_FILE COMPRESSED FAL 
           ---------------- -------------- ----------- ------------ ---------------- ----------- --------------------- ---------- ----
           END_OF_REDO_TYPE BACKED_BY_VSS ARCH_TYPE EP_SEQNO    ARCH_SEQ             NEXT_SEQ             VERSION             
           ---------------- ------------- --------- ----------- -------------------- -------------------- --------------------
2          NULL        NULL        /opt/Dm8/Data/DAMENG/Arch/MyArch_0x35BA095E_EP0_2025-03-03_12-55-50.log NULL        0
           2           NULL              NULL           NULL         13461924             2025-03-03 12:55:50.158300 13462104
           2025-03-03 12:58:56.145858 NULL        NULL        NULL    NULL      NULL         YES      NULL    NO      A      NULL
           NULL             NULL           NULL        NULL         NULL             NULL        NO                    NULL       NULL
           NULL             NULL          LOCAL     0           7752                 7763                 458764


已用时间: 1.710(毫秒). 执行号:633.

13、DBMS_SCHEDULER包创建且正在执行的作业

SELECT * FROM V$SCHEDULER_JOBS_RUNNING;


网站公告

今日签到

点亮在社区的每一天
去签到