一、GaussDB系统视图归纳总结
GaussDB 是华为基于开源数据库PostgreSQL开发的商业数据库,在兼容oracle和mysql上做出了不少努力,GaussDB的系统视图对标Oracle,有以下对应关系:
oracle系统视图 | 对应GaussDB系统视图 | 含义 |
---|---|---|
DBA_* | ADM_* | DBA拥有或可访问的所有对象 |
ALL_* | DB_* | 某用户拥有或可访问的所有对象 |
USER_* | MY_* | 某用户拥有的所有对象 |
以及GaussDB 自己定义的gs_*系统表和视图
因为以上原因,常用运维SQL涉及GaussDB自己的系统视图和pg的系统表和对标oracle的系统视图(缝合怪?)。
序号 | 系统视图 |
---|---|
1 | my_tables |
2 | adm_tab_columns |
3 | my_indexes |
4 | pg_partition |
5 | information_schema.table_privileges |
6 | adm_indexes |
7 | pg_class |
8 | pg_proc |
9 | gs_package |
10 | pg_stat_activity |
11 | pg_lock_status |
12 | pg_locks |
13 | pg_query_audit |
14 | pg_setting |
15 | pg_database |
二、常用运维SQL
其实很多运维功能在管理平台都可以获取,但我们可以通过这些运维sql了解管理平台获取这些信息的原理。
统计表数量和表数据量
select count(*) ,num_rows from my_tables where owner ='XXX';
查询表字段
select * from adm_tab_columns where owner='XXX' and table_name ='balabala';
查看表字段数量
select table_name,count(1) from adm_tab_columns