Tables Listing in JIRA
mysql> show tables; +------------------------------+ | Tables_in_jiradb | +------------------------------+ | OS_CURRENTSTEP | | OS_CURRENTSTEP_PREV | | OS_HISTORYSTEP | | OS_HISTORYSTEP_PREV | | OS_WFENTRY | | SEQUENCE_VALUE_ITEM | | changegroup | | changeitem | | columnlayout | | columnlayoutitem | | component | | configurationcontext | | customfield | | customfieldoption | | customfieldvalue | | external_entities | | fieldconfigscheme | | fieldconfigschemeissuetype | | fieldconfiguration | | fieldlayout | | fieldlayoutitem | | fieldlayoutscheme | | fieldlayoutschemeassociation | | fieldlayoutschemeentity | | fieldscreen | | fieldscreenlayoutitem | | fieldscreenscheme | | fieldscreenschemeitem | | fieldscreentab | | fileattachment | | filtersubscription | | genericconfiguration | | groupbase | | issuelink | | issuelinktype | | issuesecurityscheme | | issuestatus | | issuetype | | issuetypescreenscheme | | issuetypescreenschemeentity | | jiraaction | | jiraeventtype | | jiraissue | | jiraperms | | jiraworkflows | | listenerconfig | | mailserver | | membershipbase | | nodeassociation | | notification | | notificationinstance | | notificationscheme | | optionconfiguration | | permissionscheme | | portalpage | | portletconfiguration | | priority | | project | | projectcategory | | projectrole | | projectroleactor | | projectversion | | propertydata | | propertydate | | propertydecimal | | propertyentry | | propertynumber | | propertystring | | propertytext | | qrtz_calendars | | qrtz_cron_triggers | | qrtz_fired_triggers | | qrtz_job_details | | qrtz_job_listeners | | qrtz_simple_triggers | | qrtz_trigger_listeners | | qrtz_triggers | | resolution | | schemeissuesecurities | | schemeissuesecuritylevels | | schemepermissions | | searchrequest | | serviceconfig | | trackback_ping | | upgradehistory | | userassociation | | userbase | | versioncontrol | | workflowscheme | | workflowschemeentity | +------------------------------+
How JIRA stores its Users and Groups
JIRA stores its users and groups information in three database tables, namely: userbase, groupbase and membershipbase.
mysql> describe userbase; +---------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +---------------+---------------+------+-----+---------+-------+ | ID | decimal(18,0) | | PRI | 0 | | | username | varchar(255) | YES | MUL | NULL | | | PASSWORD_HASH | varchar(255) | YES | | NULL | | +---------------+---------------+------+-----+---------+-------+
mysql> describe groupbase; +-----------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+---------------+------+-----+---------+-------+ | ID | decimal(18,0) | | PRI | 0 | | | groupname | varchar(255) | YES | MUL | NULL | | +-----------+---------------+------+-----+---------+-------+
mysql> describe membershipbase; +------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+---------------+------+-----+---------+-------+ | ID | decimal(18,0) | | PRI | 0 | | | USER_NAME | varchar(255) | YES | MUL | NULL | | | GROUP_NAME | varchar(255) | YES | MUL | NULL | | +------------+---------------+------+-----+---------+-------+