SNAPAPPL 管理视图和 SNAP_GET_APPL 表函数-检索应用程序逻辑数据组快照信息
SNAPAPPL 管理视图和 SNAP_GET_APPL 表函数从应用程序快照 (尤其是 appl 逻辑数据组) 返回有关应用程序的信息。
SNAPAPPL 行政视图
此管理视图允许您检索当前连接的数据库的应用程序逻辑数据组快照信息。
与 MON_GET_AGENT , MON_GET_CONNECTION , MON_GET_MEMORY_POOL 和 MON_GET_MEMORY_SET 表函数以及 MON_CURRENT_SQL 和 SNAPSECTION 管理视图配合使用时, SNAPAPPL 管理视图提供等同于 GET SNAPSHOT FOR APPLICATIONS ON database-alias CLP 命令的信息,但从所有数据库成员中检索数据。
模式为 SYSIBMADM。
权限
- 对 SNAPAPPL 管理视图的 SELECT 特权
- SSNAPAPPL 管理视图上的 CONTROL 特权
- DATAACCESS 权限
- DBADM 权限
- SQLADM 权限
- 对 SNAP_GET_APPL 表函数的 EXECUTE 特权
- DATAACCESS 权限
- DBADM 权限
- SQLADM 权限
- SYSMON
- SYSCTRL
- SYSMAINT
- SYSADM
缺省 PUBLIC 特权
在非限制性数据库中,当自动创建视图时,将向 PUBLIC 授予 SELECT 特权。
示例
SELECT SUBSTR(DB_NAME,1,8) AS DB_NAME, AGENT_ID, ROWS_READ, ROWS_WRITTEN
FROM SYSIBMADM.SNAPAPPLDB_NAME AGENT_ID ROWS_READ ROWS_WRITTEN
-------- -------------------- -------------------- --------------------
SAMPLE 7 25 0
1 record(s) selected.SNAP_GET_APPL 表函数
SNAP_GET_APPL 表函数返回与 SNAPAPPL 管理视图相同的信息,但允许您检索特定数据库成员 (所有数据库成员或所有数据库成员的聚集) 上特定数据库的信息。
与 SNAP_GET_AGENT , SNAP_GET_AGENT_MEMORY_POOL , SNAP_GET_APPL_INFO , SNAP_GET_STMT 和 SNAP_GET_SUBSECTION 表函数配合使用, SNAP_GET_APPL 表函数提供相当于 GET SNAPSHOT FOR ALL APPLICATIONS CLP 命令的信息,但从所有数据库成员检索数据。
语法
模式为 SYSPROC。
表函数参数
- dbname
- 类型为 VARCHAR (128) 的输入参数,用于指定与当前连接的数据库在同一实例中的有效数据库名称。 指定目录条目类型为 "Indirect" 或 "Home" 的数据库名称,如 LIST DATABASE DIRECTORY 命令所返回。 指定空字符串以从当前连接的数据库获取快照。 指定 NULL 值以从与当前连接的数据库相同的实例中的所有数据库获取快照。
- 成员
- 类型为 INTEGER 的可选输入参数,用于指定有效数据库成员编号。 对当前数据库成员指定 -1 ,或对所有活动数据库成员的聚集指定 -2 。 如果 dbname 未设置为 NULL ,并且 member 设置为 NULL,那么将为 member隐式设置 -1 。 如果未使用此输入选项,即仅提供 dbname ,那么将从所有活动数据库成员返回数据。 活动数据库成员是数据库可供应用程序连接和使用的成员。
如果 dbname 和 member 都设置为 NULL,那么将尝试从 SNAP_WRITE_FILE 过程创建的文件中读取数据。 请注意,此文件可能是在任何时候创建的,这意味着数据可能不是最新的。 如果具有相应快照 API 请求类型的文件不存在,那么 SNAP_GET_APPL 表函数将为当前连接的数据库和数据库成员号生成快照。
权限
- 对 SNAP_GET_APPL 表函数的 EXECUTE 特权
- DATAACCESS 权限
- SYSMON
- SYSCTRL
- SYSMAINT
- SYSADM
缺省 PUBLIC 特权
在非限制性数据库中,当自动创建该功能时,将向 PUBLIC 授予 EXECUTE 特权。
示例
SELECT SUBSTR(DB_NAME,1,8) AS DB_NAME, AGENT_ID, ROWS_READ, ROWS_WRITTEN
FROM TABLE (SNAP_GET_APPL(CAST(NULL AS VARCHAR(128)),-1)) AS T
DB_NAME AGENT_ID ROWS_READ ROWS_WRITTEN
-------- --------...--- ---------...-- ------------...-
WSDB 679 0 0
WSDB 461 3 0
WSDB 460 4 0
TEST 680 4 0
TEST 455 6 0
TEST 454 0 0
TEST 453 50 0返回的信息
| 列名 | 数据类型 | 描述或相应的监视元素 |
|---|---|---|
| snapshot_timestamp | TIMESTAMP | 获取快照的日期和时间。 |
| DB_NAME | VARCHAR(128) | db_name - 数据库名称 |
| AGENT_ID | BIGINT | agent_id - 应用程序句柄(代理程序标识) |
| UOW_LOG_SPACE_USED | BIGINT | uow_log_space_used - 使用的工作单元日志空间 |
| ROWS_READ | BIGINT | rows_read - 读取行数 |
| ROWS_WRITTEN | BIGINT | rows_written - 写入的行数 |
| inact_stmthist_sz | BIGINT | inact_stmthist_sz - 语句历史记录列表大小 |
| POOL_DATA_L_READS | BIGINT | pool_data_l_reads - 缓冲池数据逻辑读取数 |
| POOL_DATA_P_READS | BIGINT | pool_data_p_reads - 缓冲池数据物理读取数 |
| POOL_DATA_WRITES | BIGINT | pool_data_writes - 缓冲池数据写次数 |
| POOL_INDEX_L_READS | BIGINT | pool_index_l_reads - 缓冲池索引逻辑读取数 |
| POOL_INDEX_P_READS | BIGINT | pool_index_p_reads - 缓冲池索引物理读取数 |
| POOL_INDEX_WRITES | BIGINT | pool_index_writes - 缓冲池索引写次数 |
| POOL_TEMP_DATA_L_READS | BIGINT | pool_temp_data_l_reads - 缓冲池临时数据逻辑读取数 |
| POOL_TEMP_DATA_P_READS | BIGINT | pool_temp_data_p_reads - 缓冲池临时数据物理读取数 |
| POOL_TEMP_INDEX_L_READS | BIGINT | pool_temp_index_l_reads - 缓冲池临时索引逻辑读取数 |
| POOL_TEMP_INDEX_P_READS | BIGINT | pool_temp_index_p_reads - 缓冲池临时索引物理读取数 |
| POOL_TEMP_XDA_L_READS | BIGINT | pool_temp_xda_l_reads - 缓冲池临时 XDA 数据逻辑读取数 |
| POOL_TEMP_XDA_P_READS | BIGINT | pool_temp_xda_p_reads -“缓冲池临时 XDA 数据物理读取数”监视元素 |
| POOL_XDA_L_READS | BIGINT | pool_xda_l_reads - 缓冲池 XDA 数据逻辑读取数 |
| POOL_XDA_P_READS | BIGINT | pool_xda_p_reads - 缓冲池 XDA 数据物理读取数 |
| POOL_XDA_WRITES | BIGINT | pool_xda_writes - 缓冲池 XDA 数据写次数 |
| POOL_READ_TIME | BIGINT | pool_read_time - 缓冲池物理读总时间 |
| POOL_WRITE_TIME | BIGINT | pool_write_time - 缓冲池物理写总时间 |
| DIRECT_READS | BIGINT | direct_reads - 直接读取数据库的次数 |
| DIRECT_WRITES | BIGINT | direct_writes - 直接写至数据库的次数 |
| DIRECT_READ_REQS | BIGINT | direct_read_reqs - 直接读请求数 |
| DIRECT_WRITE_REQS | BIGINT | direct_write_reqs - 直接写请求数 |
| DIRECT_READ_TIME | BIGINT | direct_read_time - 直接读时间 |
| DIRECT_WRITE_TIME | BIGINT | direct_write_time - 直接写时间 |
| UNREAD_PREFETCH_PAGES | BIGINT | unread_prefetch_pages - 未读取的预取页数 |
| LOCKS_HELD | BIGINT | locks_held - 挂起的锁定数 |
| LOCK_WAITS | BIGINT | lock_waits - 等待锁定次数 |
| LOCK_WAIT_TIME | BIGINT | lock_wait_time - 等待锁定时间 |
| LOCK_ESCALS | BIGINT | lock_escals - 锁定升级次数 |
| X_LOCK_ESCALS | BIGINT | x_lock_escals - 互斥锁定升级数 |
| DEADLOCKS | BIGINT | deadlocks - 检测到的死锁数 |
| TOTAL_SORTS | BIGINT | total_sorts - 排序总数 |
| TOTAL_SORT_TIME | BIGINT | total_sort_time - 排序总时间 |
| SORT_OVERFLOWS | BIGINT | sort_overflows - 排序溢出数 |
| COMMIT_SQL_STMTS | BIGINT | commit_sql_stmts - 尝试的落实语句数 |
| ROLLBACK_SQL_STMTS | BIGINT | rollback_sql_stmts - 尝试的回滚语句数 |
| DYNAMIC_SQL_STMTS | BIGINT | dynamic_sql_stmts - 尝试的动态 SQL 语句数 |
| STATIC_SQL_STMTS | BIGINT | static_sql_stmts - 尝试的静态 SQL 语句数 |
| FAILED_SQL_STMTS | BIGINT | failed_sql_stmts - 失败的语句操作 |
| SELECT_SQL_STMTS | BIGINT | select_sql_stmts - 执行的 Select SQL 语句数 |
| DDL_SQL_STMTS | BIGINT | ddl_sql_stmts - 数据定义语言 (DDL) SQL 语句数 |
| UID_SQL_STMTS | BIGINT | uid_sql_stmts - 执行的 UPDATE/INSERT/DELETE SQL 语句数 |
| INT_AUTO_REBINDS | BIGINT | int_auto_rebinds - 内部自动重新绑定次数 |
| INT_ROWS_DELETED | BIGINT | int_rows_deleted - 删除的内部行数 |
| INT_ROWS_UPDATED | BIGINT | int_rows_updated - 更新的内部行数 |
| INT_COMMITS | BIGINT | int_commits - 内部落实数 |
| INT_ROLLBACKS | BIGINT | int_rollbacks - 内部回滚 |
| INT_DEADLOCK_ROLLBACKS | BIGINT | int_deadlock_rollbacks - 死锁导致的内部回滚数 |
| ROWS_DELETED | BIGINT | rows_deleted - 删除行数 |
| ROWS_INSERTED | BIGINT | rows_inserted - 插入行数 |
| ROWS_UPDATED | BIGINT | rows_updated - 更新行数 |
| ROWS_SELECTED | BIGINT | rows_selected - 选择的行数 |
| BINDS_PRECOMPILES | BIGINT | binds_precompiles - 尝试的绑定次数/预编译次数 |
| open_rem_curs | BIGINT | open_rem_curs - 打开的远程游标数 |
| open_rem_curs_blk | BIGINT | open_rem_curs_blk - 打开的远程分块游标数 |
| REJ_CURS_BLK | BIGINT | rej_curs_blk - 拒绝的块游标请求数 |
| ACC_CURS_BLK | BIGINT | acc_curs_blk - 接受的块游标请求数 |
| SQL_REQS_SINCE_COMMIT | BIGINT | sql_reqs_since_commit - 上次落实后的 SQL 请求数 |
| LOCK_TIMEOUTS | BIGINT | lock_timeouts - 锁定超时次数 |
| INT_ROWS_INSERTED | BIGINT | int_rows_inserted - 插入的内部行数 |
| open_loc_curs | BIGINT | open_loc_curs - 打开的本地游标数 |
| open_loc_curs_blk | BIGINT | open_loc_curs_blk - 打开的本地分块游标数 |
| PKG_CACHE_LOOKUPS | BIGINT | pkg_cache_lookups - 程序包高速缓存查询数 |
| PKG_CACHE_INSERTS | BIGINT | pkg_cache_inserts - 程序包高速缓存插入数 |
| CAT_CACHE_LOOKUPS | BIGINT | cat_cache_lookups - 目录高速缓存查询数 |
| CAT_CACHE_INSERTS | BIGINT | cat_cache_inserts - 目录高速缓存插入数 |
| CAT_CACHE_OVERFLOWS | BIGINT | cat_cache_overflows - 目录高速缓存溢出数 |
| NUM_AGENTS | BIGINT | num_agents - 正在处理语句的代理程序数 |
| agents_stolen | BIGINT | agents_stolen - 失窃代理程序数 |
| associated_agents_top | BIGINT | associated_agents_top - 最大关联代理程序数 |
| APPL_PRIORITY | BIGINT | appl_priority - 应用程序代理程序优先级 |
| APPL_PRIORITY_TYPE | VARCHAR(16) | appl_priority_type-应用程序优先级类型 。 此接口根据 sqlmon.h中的定义返回文本标识,并且是下列其中一项:
|
| PREFETCH_WAIT_TIME | BIGINT | prefetch_wait_time - 等待预取的时间 |
| APPL_SECTION_LOOKUPS | BIGINT | appl_section_lookups - 节查询数 |
| APPL_SECTION_INSERTS | BIGINT | appl_section_inserts - 节插入数 |
| LOCKS_WAITING | BIGINT | locks_waiting - 当前正在等待锁定的代理程序数 |
| TOTAL_HASH_JOINS | BIGINT | total_hash_joins - 散列连接总数 |
| TOTAL_HASH_LOOPS | BIGINT | total_hash_loops - 总散列循环数 |
| HASH_JOIN_OVERFLOWS | BIGINT | hash_join_overflows - 散列连接溢出数 |
| HASH_JOIN_SMALL_OVERFLOWS | BIGINT | hash_join_small_overflows - 散列连接小溢出数 |
| appl_idle_time | BIGINT | appl_idle_time - 应用程序空闲时间 |
| uow_lock_wait_time | BIGINT | uow_lock_wait_time - 工作单元等待锁定的总时间 |
| UOW_COMP_STATUS | VARCHAR(14) | uow_comp_status-工作单元完成状态 。 此接口根据 sqlmon.h中的定义返回文本标识,并且是下列其中一项:
|
| AGENT_USR_CPU_TIME_S | BIGINT | agent_usr_cpu_time - 代理程序使用的用户 CPU 时间 |
| AGENT_USR_CPU_TIME_MS | BIGINT | agent_usr_cpu_time - 代理程序使用的用户 CPU 时间 |
| AGENT_SYS_CPU_TIME_S | BIGINT | agent_sys_cpu_time - 代理程序使用的系统 CPU 时间 |
| AGENT_SYS_CPU_TIME_MS | BIGINT | agent_sys_cpu_time - 代理程序使用的系统 CPU 时间 |
| appl_con_time | TIMESTAMP | appl_con_time - 连接请求启动时间戳记 |
| conn_complete_time | TIMESTAMP | conn_complete_time - 连接请求完成时间戳记 |
| LAST_RESET | TIMESTAMP | last_reset - 最后重置时间戳记 |
| UOW_START_TIME | TIMESTAMP | uow_start_time - 工作单元开始时间戳记 |
| UOW_STOP_TIME | TIMESTAMP | uow_stop_time - 工作单元停止时间戳记 |
| PREV_UOW_STOP_TIME | TIMESTAMP | prev_uow_stop_time - 上一个工作单元完成时间戳记 |
| UOW_ELAPSED_TIME_S | BIGINT | uow_elapsed_time - 最新工作单元耗用时间 |
| UOW_ELAPSED_TIME_MS | BIGINT | uow_elapsed_time - 最新工作单元耗用时间 |
| ELAPSED_EXEC_TIME_S | BIGINT | elapsed_exec_time - 语句执行耗用时间 |
| ELAPSED_EXEC_TIME_MS | BIGINT | elapsed_exec_time - 语句执行耗用时间 |
| inbound_comm_address | VARCHAR(32) | inbound_comm_address - 入站通信地址 |
| LOCK_TIMEOUT_VAL | BIGINT | lock_timeout_val-锁定超时 (秒) |
| priv_workspace_num_overflows | BIGINT | priv_workspace_num_overflows - 专用工作空间溢出数 |
| priv_workspace_section_inserts | BIGINT | priv_workspace_section_inserts - 专用工作空间节插入数 |
| priv_workspace_section_lookups | BIGINT | priv_workspace_section_lookups - 专用工作空间节查询数 |
| priv_workspace_size_top | BIGINT | priv_workspace_size_top - 最大专用工作空间大小 |
| shr_workspace_num_overflows | BIGINT | shr_workspace_num_overflows - 共享工作空间溢出数 |
| shr_workspace_section_inserts | BIGINT | shr_workspace_section_inserts - 共享工作空间节插入数 |
| shr_workspace_section_lookups | BIGINT | shr_workspace_section_lookups - 共享工作空间节查询数 |
| shr_workspace_size_top | BIGINT | shr_workspace_size_top - 最大共享工作空间大小 |
| DBPARTITIONNUM | SMALLINT | dbpartitionnum -“数据库分区号”监视元素 |
| CAT_CACHE_SIZE_TOP | BIGINT | cat_cache_size_top-目录高速缓存高水位标记 |
| TOTAL_OLAP_FUNCS | BIGINT | total_olap_funcs - OLAP 函数总数 |
| OLAP_FUNC_OVERFLOWS | BIGINT | olap_func_overflows - OLAP 函数溢出次数 |
| MEMBER | SMALLINT | member -“数据库成员”监视元素 |
| * 要计算此列所基于的监视元素的总耗用时间,必须使用以下公式将以 _S 结束的此监视元素的列中报告的完整秒数与以 _MS 结束的此监视元素的列中报告的小数秒数相加: (monitor-element-name_S × 1,000,000 + monitor-element-name_MS) ÷ 1,000,000。 例如, (ELAPSED_EXEC_TIME_S × 1,000,000 + ELAPSED_EXEC_TIME_MS) ÷ 1,000,000。 | ||
