cPanel Database Creator will make this process much easier. In order to create a database on your hosting server you just need to run this script from browser, shell, or cron job, passing database name as parameter.
Before using this script you will need to update it with cPanel username, password, and host name (domain or IP).
Usage:
cpanel_create_db.php?db=database-name&user=username&pass=password
where database-name should be replaced with a database name to be created on your hosting server.
Database Creator will also create a database user and assign it to the database with ALL permissions. Script will not create database user if you omit the user parameter. In this case usage would be cpanel_create_db.php?db=database-name
Note:
if script does not work try running it via cURL. This requires cURL installation on the server. Default cURL path is set to /usr/bin/curl. Feel free to change it in the script code if cURL path is different on your hosting server.
cPanel Skin:
Try following steps if you do not know what your current cPanel theme is.
* Login to your cPanel account
* Look at the URL in your browser. It would look somewhat similar to http://www.domain.com:2082/frontend/x/index.html
* cPanel theme name is everything after the "/frontend/", and before the next slash "/". In above example cPanel theme is "x". It could be "x2", "rvblue", etc.
- Code: Select all
<?php
// cPanel username (you use to login to cPanel)
$cpanel_user = "user";
// cPanel password (you use to login to cPanel)
$cpanel_password = "password";
// cPanel domain (example: mysite.com)
$cpanel_host = "host";
// cPanel theme/skin, usually "x"
$cpanel_skin = "x";
// Script will add user to database if these values are not empty
// User wil have ALL permissions
$db_username = '';
$db_userpass = '';
// Update this only if you are experienced user or if script does not work
// Path to cURL on your server. Usually /usr/bin/curl
$curl_path = "";
//////////////////////////////////////
/* Code below should not be changed */
//////////////////////////////////////
function execCommand($command) {
global $curl_path;
if (!empty($curl_path)) {
return exec("$curl_path '$command'");
}
else {
return file_get_contents($command);
}
}
if(isset($_GET['db']) && !empty($_GET['db'])) {
// escape db name
$db_name = escapeshellarg($_GET['db']);
// will return empty string on success, error message on error
$result = execCommand("http://$cpanel_user:$cpanel_password@$cpanel_host:2082/frontend/$cpanel_skin/sql/adddb.html?db=$db_name");
if(isset($_GET['user']) && !empty($_GET['user'])) {
$db_username = $_GET['user'];
$db_userpass = $_GET['pass'];
}
if (!empty($db_username)) {
// create user
$result .= execCommand("http://$cpanel_user:$cpanel_password@$cpanel_host:2082/frontend/$cpanel_skin/sql/adduser.html?user={$db_username}&pass={$db_userpass}");
// assign user to database
$result .= execCommand("http://$cpanel_user:$cpanel_password@$cpanel_host:2082/frontend/$cpanel_skin/sql/addusertodb.html?user={$cpanel_user}_{$db_username}&db={$cpanel_user}_{$db_name}&ALL=ALL");
}
// output result
echo $result;
}
else {
echo "Usage: cpanel_create_db.php?db=databasename&user=username&pass=password";
}
?>