sys_ctl -V sys_ctl --version # 在ksql命令行工具中查询数据库版本 select version();
select get_license_validdays();
select sys_postmaster_start_time(); # 当前无故障运行时间 (当前时间减去启动时间) select date_trunc('second',current_timestamp-sys_postmaster_start_time()) as uptime;
# 在ksql中使用可以使用元命令 \l # 语句查询 select datname from sys_database;
# 查看当前数据所占内存大小 select sys_database_size(current_database())/1024/1024 || 'MB' MB; # 查看所有数据所占内存的大小 select (sum(sys_database_size(datname))/1024/1024) || 'MB' MB from sys_database;
# 查看表的大小 select sys_relation_size('public.t01')/1024 || 'KB' KB; # 让系统决定查询结果的单位 select sys_size_pretty(sys_relation_size('public.t01')); # 表和索引的大小 select sys_size_pretty(sys_total_relation_size('public.t01')); # 索引的大小 select sys_size_pretty(sys_total_relation_size('public.t01')-sys_relation_size('public.t01'));
# 查看最近一次加载参数的时间 select sys_conf_load_time; # 手动加载数据文件 sys_ctl reload # 查看时区 show timezone; # 查看当前时间 select now(); # 查看当前日期 select current_date(); # 查看时间(精确到秒) select sysdate; # 查看时间(timestamp) select current_timestamp;
# 查看数据库名称 select current_catalog; select current_database;
# 查看当前会话的客户端ip和端口(如果服务器是本地登录则会显示为空) select inet_client_port(); select inet_client_addr(); # 查看当前会话的进程ID select sys_backend_pid;
# 查看数据中链接信息 select datname ,usename,client_addr,client_port from sys_stat_activity; # 查看数据库 select datname,usename,client_addr,client_port from sys_stat_activity where datname is not null;
# 设置track_activities参数 show track_activities; # 查看所有会话的sql信息 select datname,usename,client_addr,client_port from sys_stat_activity; # 查看当前存在会话的sql信息 select datname,usename,client_addr,client_port from sys_stat_activity where datname is not null; # 查看执行的sql语句 select datname,usename,query,state from sys_stat_activity where datname is not null; # 查看当前正在执行状态的语句 select datname,usename,query,state from sys_stat_activity where state like 'active'; # 查询语句运行时间 select current_timestamp - query_start as runtime,datname,usename,pid,query ^Jfrom sys_stat_activity where state != 'idle';
# 开启事务 begin # 查询当前事务的di sys_backend_pid # 查看会话的事务状态 select datname,usename,query,wait_event,pid from sys_stat_activity where datname='test'; # 关闭会话的事务清理阻塞 # pid为事务ID select sys_terminate_backend(pid); # 取消运行时间比较长的sql语句但是不关闭会话 select sys_cancel_backend(p)
在金仓数据库中不允许使用kill杀死会话,比较危险