目录
-- 一、查看KES版本信息:
方法1:
./sys_ctl -V
sys_ctl (Kingbase) 12.1
方法2:
./sys_ctl --version
sys_ctl (Kingbase) 12.1
方法3:
./ksql -Usystem -dtest -c 'select version()'
version
----------------------------------------------------------------------------------------------------------------------
KingbaseES V008R006C007B0012 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-46), 64-bit
(1 行记录)
-- 二、查看license到期时间:
./ksql -Usystem -dtest -c 'SELECT GET_LICENSE_VALIDDAYS()'
-- 三、查看KES实例启动时间和运行时长
./ksql -U system -d test -c 'SELECT sys_postmaster_start_time();'
或者
./ksql -U system -d test -c 'SELECT pg_postmaster_start_time();'
我这里安装用的pg模式,sys换成pg
now()函数,当前时间 - 启动时间=运行时间
SELECT now() - pg_postmaster_start_time();
?column?
-------------------------
15 days 22:21:42.004642
(1 行记录)
-- 四、查看数据库列表
方法1:
ksql -U system -d test -l
方法2:
ksql -U system -d test
\l
方法3:
SELECT datname FROM sys_database;
-- 五、查看数据库占用的磁盘空间
方法1:
\l+ DBname
方法2:
SELECT pg_database_size('DBname')/1024/1024 || 'MB' MB;
-- 六、查看表和索引的大小
查询表的大小
SELECT sys_relation_size('public.t01')/1024|| 'KB' KB;
SELECT sys_size_pretty(sys_relation_size('public.t01'));
查询表相关索引的大小
SELECT sys_total_relation_size('public.t01')/1024|| 'KB' KB;
SELECT sys_size_pretty(sys_total_relation_size('public.t01'));
查询表行数
SELECT count(*) || ' rows' "rows" FROM public.t01;
-- 七、查看时区和时间
1.查看上一次加载配置文件的时间
SELECT sys_conf_load_time();
2.查看时区
SHOW timezone;
3.查看当前日期或时间,根据需要选择
SELECT now();
SELECT current_timestamp;
SELECT sysdate;
SELECT current_date;
-- 八、查看当前登录数据库的名称
SELECT current_catalog;
SELECT current_database();
-- 九、查看当前会话信息
1.查看当前会话的客户端IP和端口
SELECT inet_client_addr(),inet_client_port();
2.查看当前会话服务器的IP和端口
SELECT inet_server_addr(),inet_server_port();
3.查看当前会话的后台进程
SELECT sys_backend_pid();
\! ps -ef | grep 12093 | grep -v grep
-- 十、查看数据库中的连接信息
SELECT datname,usename,client_addr,client_port FROM sys_stat_activity;
-- 十一、查看会话执行的 SQL 信息
1.查看track_activities参数是否开启,开启才能查看。
show track_activities;
2.查看所有会话执行的sql信息
SELECT datname,usename,client_addr,client_port FROM sys_stat_activity;
3.只看正在运行的sql信息
SELECT datname,usename,query,state
FROM sys_stat_activity
WHERE state not like 'idle%';
-- 十二、查看耗时较长的 SQL
1.打开扩展显示信息
\x
2.当前时间 - 启动时间,排除运行状态‘idle’的sql,得出sql的运行时间。
SELECT current_timestamp - query_start as runtime,datname,usename,pid,query
FROM sys_stat_activity
WHERE state != 'idle'
ORDER BY 1 desc;
3.查询指定sql运行的详细信息
select * from sys_stat_activity where pid = '*******';