MySQL® Manager

Valid for versions 106 through the latest version

Version:

106


Last modified: March 26, 2024

Overview

Use this interface to create, manage, and delete MySQL® databases and database users.

Experimental:

This interface is experimental and is not fully functional. Contact your system administrator or hosting provider for more information.

The cPanel & WHM implementation of MySQL and MariaDB® uses modified character limits for database names and database usernames:

Important:
  • Use the Force short prefix for MySQL and MariaDB databases setting in WHM’s Tweak Settings interface (WHM » Home » Server Configuration » Tweak Settings) to limit the database prefix to eight characters. For more information about MySQL and MariaDB prefix settings, read our Tweak Settings documentation.
  • Enabling the Force short prefix for MySQL and MariaDB databases setting in WHM’s Tweak Settings interface (WHM » Home » Server Configuration » Tweak Settings) will prevent you from creating new accounts that share the same first eight characters of their usernames.

MySQL 5.6 limits the database username to 16 characters. The system includes the database prefix (the first eight characters of the cPanel account’s username plus an underscore for a total of nine characters) in the character count for the username.

For example:

  • A MySQL database with the db_ prefix allows usernames that contain up to 13 characters.

  • A MySQL database with the example_ prefix allows usernames that contain up to eight characters.

MySQL 5.7 limits the database username to 32 characters. The system includes the database prefix (the first sixteen characters of the cPanel account’s username plus an underscore for a total of seventeen characters) in the character count for the username.

For example:

  • A MySQL database with the db_ prefix allows usernames that contain up to 29 characters.

  • A MySQL database with the example_ prefix allows usernames that contain up to 24 characters.

MariaDB limits the database username to 47 characters. The system includes the database prefix (all of the cPanel account’s username and an underscore character) in the character count for the username.

For example:

  • A MariaDB database with the db_ prefix allows usernames that contain up to 44 characters.

  • A MariaDB database with the example_ prefix allows usernames that contain up to 39 characters.

Enable the MySQL Manager interface

To use this feature, your hosting provider must enable it for you. Ask them to perform the following steps in WHM based on your cPanel & WHM version number:

  1. Connect to WHM with SSH as the root user.
  2. In your command-line interface, run the following commands:
    1
    2
    3
    4
    
    /usr/local/cpanel/3rdparty/bin/perl -e '
    use Cpanel::FeatureFlags ();
    Cpanel::FeatureFlags::enable('mysql_manager');
    '
    
  1. Connect to WHM with SSH as the root user.
  2. In your command-line interface, run the following commands:
    1
    2
    3
    
    mkdir /var/cpanel/experimental
    touch /var/cpanel/experimental/mysql_manager
    /scripts/upcp
    

The Databases tab

The Databases tab lists the databases owned by your cPanel account. To sort the database, click Database Name, Size, or Database User to reorder the Database table.

Create a Database and a Database User

Warning:

Do not use phpMyAdmin to create databases or database users. phpMyAdmin does not map databases, which causes backups and restorations to not function.

The MySQL Manager interface will load the Create Database interface if your account does not have a database.

If your cPanel account already has a database, click Create Database to open the Create Database interface.

To create a database and database user, perform the following steps:

  1. In the Database Name text box, enter a name for the database.
  2. Click the Create Database user toggle to create a database user.
    • The interface will automatically enter a database username in the Database Username text box.
      • You can change the username in the Database Username text box. However, the system’s character modified limits still apply.
      • The interface will automatically assign the Select, Insert, Update, and Delete database privileges.
      • For more information about user privileges, read the MySQL documentation.
  3. Click Create.
    • If you wish to create multiple databases, click the Stay on this page to create another database checkbox.
    • Otherwise, the system will load the Databases table and your database will appear in the table.

View

The database table displays the following information for each database:

  • Database Name — The name of the database.
  • Size — The size of the database in bytes.
  • Database Users — The database users that you assigned permissions for the database.

Actions

You can use the following features for each database:

  • Manage — Change a database name.
    • To rename a database, click Manage. A new interface will appear. In the Database Name text box, enter the new database name and click Update to update the database name or Go Back to cancel.
  • Delete — Delete the database.
    • To delete a database, click Delete. A confirmation message will appear. Click Delete to delete the database or click Cancel.

The Database Users tab

This function is not yet implemented.

The Configuration tab

This function is not yet implemented.

Disable the MySQL Manager interface

To disable this feature, your hosting provider must perform the following steps in WHM based on your cPanel & WHM version number:

  1. Connect to WHM with SSH as the root user.
  2. In your command-line interface, run the following commands:
    1
    2
    3
    4
    
    /usr/local/cpanel/3rdparty/bin/perl -e '
    use Cpanel::FeatureFlags ();
    Cpanel::FeatureFlags::disable('mysql_manager');
    '
    
  1. Connect to WHM with SSH as the root user.
  2. Delete the mysql_manager file from the /var/cpanel/experimental directory.
  3. In your command-line interface, run the /scripts/upcp script.

Additional Documentation