Documentation Home
MySQL Shell 8.0
Related Documentation Download this Manual
PDF (US Ltr) - 0.6Mb
PDF (A4) - 0.6Mb
HTML Download (TGZ) - 126.2Kb
HTML Download (Zip) - 137.2Kb

MySQL Shell 8.0  /  ...  /  Example MySQL Shell Report

6.1.4 Example MySQL Shell Report

This example user-defined report sessions shows which sessions currently exist.

def sessions(session, args, options):
    sys = session.get_schema('sys')
    session_view = sys.get_table('session')
    query =
        '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'])

    result = query.execute()
    report = [result.get_column_names()]
    for row in result.fetch_all():

    return {'report': report}

        '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'