Page tree
Skip to end of metadata
Go to start of metadata

 

Description

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

Examples 


 cPanel or Webmail Session URL
https://hostname.example.com:2083/cpsess##########/execute/Mysql/set_privileges_on_database?user=dbuser&database=mydb&privileges=DELETE%2CUPDATE%2CCREATE%2CALTER

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.
 
// Set the dbuser user's privileges for the mydb database.
$set_dbuser_privs = $cpanel->uapi(
    'Mysql', 'set_privileges_on_database',
    array(
        'user'       => 'dbuser',
        'database'   => 'mydb',
        'privileges' => 'DELETE,UPDATE,CREATE,ALTER',
    )
);

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.
 
# Set the dbuser user's privileges for the mydb database.
my $set_dbuser_privs = $cpliveapi->uapi(
    'Mysql', 'set_privileges_on_database',
    {
        'user'       => 'dbuser',
        'database'   => 'mydb',
        'privileges' => 'DELETE,UPDATE,CREATE,ALTER',
    }
);

Note:

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

 

 cPanel Template Toolkit
<!-- Update the dbuser's privileges. -->
[% execute('Mysql', 'set_privileges_on_database', { name => 'dbuser', database => 'mydb', privileges => 'DELETE,UPDATE,CREATE,ALTER' } ) %]

Note:

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

 Command Line
uapi --user=username Mysql set_privileges_on_database user=dbuser database=mydb privileges=DELETE,UPDATE,CREATE,ALTER

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. 
  • We introduced this functionality in cPanel & WHM version 56.

 Output (JSON)
{
  "messages": null,
  "errors": null,
  "status": 1,
  "metadata": {
     
  },
  "data": null
}

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's name.

A MySQL database on the cPanel account.

mydb
privilegesstring

A list of privileges.

Note:

This list replaces, rather than adds to, the existing privilege list.

  • ALL PRIVILEGES
  • A comma-separated list of 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

Note:

In browser-based and command line calls, separate multiple values with %2C and replace spaces with %20

DELETE,UPDATE,CREATE,ALTER

Returns

This function only returns metadata.