Documentation Home
MySQL 外壳 8.0  / 第 10 章扩展 MySQL Shell  / 10.1 使用 MySQL Shell 报告  /  10.1.4 MySQL Shell 报告示例

10.1.4 MySQL Shell 报告示例

此示例用户定义报告sessions显示当前存在哪些会话。

Press CTRL+C to copy
def sessions(session, args, options): sys = session.get_schema('sys') session_view = sys.get_table('session') query = session_view.select( 'thd_id', 'conn_id', 'user', 'db', 'current_statement', 'statement_latency AS latency', 'current_memory AS memory') if (options.has_key('limit')): limit = int(options['limit']) query.limit(limit) result = query.execute() report = [result.get_column_names()] for row in result.fetch_all(): report.append(list(row)) return {'report': report} shell.register_report( 'sessions', 'list', sessions, { 'brief': 'Shows which sessions exist.', 'details': ['You need the SELECT privilege on sys.session view and the underlying tables and functions used by it.'], 'options': [ { 'name': 'limit', 'brief': 'The maximum number of rows to return.', 'shortcut': 'l', 'type': 'integer' } ], 'argc': '0' } )