Child pages
  • UAPI Functions - Mysql::get_privileges_on_database
Skip to end of metadata
Go to start of metadata

Description

This function lists a MySQL® database user's privileges.

Important:

In cPanel & WHM version 76 and later, when you disable the MySQL role, the system disables this function. For more information, read our How to Use Server Profiles documentation.

Examples


 cPanel or Webmail Session URL
https://hostname.example.com:2083/cpsess##########/execute/Mysql/get_privileges_on_database?user=dbuser&database=mydb


Note:

This example calls the UAPI function via a cPanel session. For more information, read our Guide to UAPI documentation. 

 LiveAPI PHP Class
$cpanel = new CPANEL(); // Connect to cPanel - only do this once.
 
// Get the dbuser user's privileges for the mydb database.
$get_dbuser_privs = $cpanel->uapi(
    'Mysql', 'get_privileges_on_database',
    array(
        'user'       => 'dbuser',
        'database'   => 'mydb',
    )
);


Note:

For more information, read our Guide to the LiveAPI System.

 LiveAPI Perl Module
my $cpliveapi = Cpanel::LiveAPI->new(); # Connect to cPanel - only do this once.
 
# Get the dbuser user's privileges for the mydb database.
my $get_dbuser_privs = $cpliveapi->uapi(
    'Mysql', 'get_privileges_on_database',
    {
        'user'       => 'dbuser',
        'database'   => 'mydb',
    }
);


Note:

For more information, read our Guide to the LiveAPI System.

 cPanel Template Toolkit
<!-- Get an array of privilages. -->
[% execute( 'Mysql', 'get_privileges_on_database', { user => 'dbuser', database => 'mydb' } ); %]


Note:

For more information, read our Guide to Template Toolkit documentation. 

 Command Line
uapi --user=username Mysql get_privileges_on_database user=dbuser database=mydb


Notes:

  • You must URI-encode values.
  • username represents your account-level username.
  • For more information and additional output options, read our Guide to UAPI documentation or run the uapi --help command. 
  • If you run CloudLinux™, you must use the full path of the uapi command:

    /usr/local/cpanel/bin/uapi


 Output (JSON)
{  
   "messages":null,
   "errors":null,
   "status":1,
   "metadata":{  
      "transformed":1
   },
   "data":[  
      "SELECT",
      "UPDATE",
      "CREATE",
      "DROP",
      "INDEX",
      "CREATE TEMPORARY TABLES",
      "LOCK TABLES",
      "EXECUTE",
      "CREATE VIEW",
      "SHOW VIEW",
      "EVENT"
   ]
}


Note:

Use cPanel's API Shell interface (cPanel >> Home >> Advanced >> API Shell) to directly test cPanel API calls.

Parameters

ParameterTypeDescriptionPossible valuesExample
userstring

Required

The database user's name.

A MySQL user on the cPanel account.

Important:

If database prefixing is enabled, you must prefix this value with the account prefix and an underscore (_).

For example, for the dbuser user on the user cPanel account, pass in a value of user_dbuser

dbuser
databasestring

Required

The database.

A MySQL database on the cPanel account.

12345luggage

Returns

ReturnTypeDescriptionPossible valuesExample
dataarray

An array of privileges.

Note:

If the user database user does not have privileges on the database database, this array will return empty.

  • ALL PRIVILEGES
  • One or more of the following individual privileges:
    • ALTER
    • ALTER ROUTINE
    • CREATE
    • CREATE ROUTINE
    • CREATE TEMPORARY TABLES
    • CREATE VIEW
    • DELETE
    • DROP
    • EVENT
    • EXECUTE
    • INDEX
    • INSERT
    • LOCK TABLES
    • REFERENCES
    • SELECT
    • SHOW VIEW
    • TRIGGER
    • UPDATE
CREATE