达梦数据库查看表的大小、字符集、页大小等

该文章展示了如何在Oracle数据库中创建一个收集表,用于存储所有表的信息,然后通过循环插入获取所有表的使用空间。接着,提供了查询特定前缀(如GSI_PRO%)的表所占用的空间,并将其转换为GB单位。此外,还包含了检查数据库字符集和页大小的相关查询操作。
--1、创建收集表
create
        table table_count
        (
                owner         varchar(100),
                table_name    varchar(100),
                used_space_mb varchar(100)
        );

--2、循环插入所有表的信息
declare
begin
        for rec in
        (
                select owner, table_name from all_tables order by 1, 2
        )
        loop
                insert into table_count
                select
                        rec.owner     ,
                        rec.table_name,
                        table_used_pages(rec.owner, rec.table_name)*(page()/1024)/1024
                from
                        dual;
        end loop;
end;

--3、查询
select
        t.owner              ,
        t.table_name         ,
        t.used_space_mb                      as MB,
        CAST(t.used_space_mb as number)/1024 as GB
from
        table_count t
where
        table_name like 'GSI_PRO%'
order by
        GB desc





--查看字符集,0[GB18030],1[UTF-8],2[EUC-KR]
select sf_get_unicode_flag();
--查看页大小,执行下面任一语句,执行结果单位为字节,例如8192,表示8K
select page();
SELECT SF_GET_PAGE_SIZE();
select para_name,para_value from v$dm_ini where para_name ='GLOBAL_PAGE_SIZE';

达梦数据库中创建数据库并指定字符集,可以通过在创建实例时进行相关配置来实现。达梦数据库支持在初始化参数中定义字符集、是否区分大小写等关键参数[^1]。 ### 创建数据库并指定字符集的步骤如下: #### 1. 初始化数据库实例时指定字符集 达梦数据库的实例创建通常通过图形化界面或命令行工具完成。在创建实例的过程中,可以设置字符集,例如 `UTF-8` 或 `GB18030` 等标准字符集[^2]。 - **图形化安装**: 在安装过程中,选择字符集(如 UTF-8),并设置 SYSDBA 用户的密码。此过程会自动创建 DEMO 数据库,并配置相关参数[^2]。 - **命令行方式**: 如果使用命令行工具 `dminit`,可以通过参数指定字符集。例如: ```bash dminit PATH=/opt/dmdbms/data DB_NAME=mydb INSTANCE_NAME=mysvr PORT_NUM=5236 CHARSET=1 ``` 在此命令中: - `CHARSET=1` 示使用 UTF-8 字符集达梦数据库内部以数字标识字符集类型)。 - `PATH` 指定数据库文件的存储路径。 - `DB_NAME` 是数据库名称。 - `INSTANCE_NAME` 是实例名。 - `PORT_NUM` 是监听端口号。 #### 2. 通过 SQL 语句创建数据库 达梦数据库也支持通过 SQL 命令创建数据库,并在创建时指定字符集。例如: ```sql CREATE DATABASE mydb CHARACTER SET 'UTF-8' PAGE_SIZE = 8192 EXTENT_SIZE = 16 LOG_SIZE = 100; ``` 在此语句中: - `CHARACTER SET` 指定数据库的默认字符集为 UTF-8。 - `PAGE_SIZE` 定义大小,单位为字节。 - `EXTENT_SIZE` 定义簇大小,单位为数。 - `LOG_SIZE` 定义日志文件大小,单位为 MB。 #### 3. 验证字符集设置 创建完成后,可以通过以下 SQL 查询数据库的字符集信息: ```sql SELECT SF_GET_UNICODE_FLAG(); ``` 该函数返回当前数据库的字符集标识,其中: - `0` 示 GB18030。 - `1` 示 UTF-8。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值