Manual:User groups table

The user groups table maps the users in a particular MediaWiki installation to their corresponding user rights. Each group can be assigned a mixture of permissions through LocalSettings.php or via extensions; all users of a particular group have those permissions granted to them as a result of their membership in the group. As the table is separate from the user table, this allows for the creation of a shared user database with permissions that vary from wiki to wiki within a wiki farm. This table was introduced on r5648, in MediaWiki 1.5. If you are using MediaWiki 1.3 or 1.4, have a look at Manual:User rights management. Before MediaWiki 1.5, user rights were stored in the the user_rights field of the user table.

All unregistered users belong to the  only; all registered users are automatically part of the   group. User groups are additive; as a result, all registered users have all the privileges assigned to the  group as well.

ug_user
This field links to a given user's user_id. It is a foreign key used to link accounts with their assigned privileges.

ug_group
This field stores the user's permissions, which are stored as groups. At runtime, $wgGroupPermissions will associate group keys with particular permissions; a user will have the combined permissions of any group they're explicitly in, plus the implicit  and   groups.

Schema summary
DESCRIBE user_groups in MediaWiki 1.18 gives the following: +--+-+--+-+-+---+ +--+-+--+-+-+---+ +--+-+--+-+-+---+
 * Field   | Type            | Null | Key | Default | Extra |
 * ug_user | int(5) unsigned | NO   | PRI | 0       |       |
 * ug_group | varbinary(16)  | NO   | PRI | NULL    |       |

DESCRIBE user_groups in MediaWiki 1.5-1.9 gives the following: +--+-+--+-+-+---+ +--+-+--+-+-+---+ +--+-+--+-+-+---+
 * Field   | Type            | Null | Key | Default | Extra |
 * ug_user | int(5) unsigned | NO   | PRI | 0       |       |
 * ug_group | char(16)       | NO   | PRI | NULL    |       |

Default mediawiki groups
In a default mediaWiki installation, ug_group can be one of the following : query : SELECT DISTINCT ug_group FROM user_groups;

++ ++ ++
 * ug_group  |
 * bot       |
 * bureaucrat |
 * sysop     |