我创建了新的cPanel帐户,使用这个帐户创建了新的数据库,新的数据库用户和连接的用户到数据库,简单的东西。现在,我希望这个特定的用户能够创建新的数据库,我如何升级这个数据库用户的权限以允许创建新的数据库?我仍然希望这些数据库与cPanel帐户相关联,是否将帐户名称前缀(account_)添加到数据库名称足以将其与该cPanel帐户相关联?如何升级数据库用户权限以创建新数据库?
编辑:哎呀,忘了提及 - 数据库是MySQL。
我创建了新的cPanel帐户,使用这个帐户创建了新的数据库,新的数据库用户和连接的用户到数据库,简单的东西。现在,我希望这个特定的用户能够创建新的数据库,我如何升级这个数据库用户的权限以允许创建新的数据库?我仍然希望这些数据库与cPanel帐户相关联,是否将帐户名称前缀(account_)添加到数据库名称足以将其与该cPanel帐户相关联?如何升级数据库用户权限以创建新数据库?
编辑:哎呀,忘了提及 - 数据库是MySQL。
您前人的精力阅读包含所有适当的程序的在线手册,但这里是你如何能做到这一点:
<?php
include("xmlapi.php");
$db_host = "localhost";
$cpuser = "myuser";
$databasename = 'mydatabasename';//do not prepend with username
$databaseuser = 'mydatabaseuser';//api will do that for you
$databasepass = '123456';
$xmlapi = new xmlapi($db_host);
$xmlapi->password_auth("root","root_pass");
$xmlapi->set_debug(1);//this setting will put output into the error log in the directory that you are calling script from
$xmlapi->set_output('array');//set this for browser output
//create database
$createdb = $xmlapi->api1_query($cpuser, "Mysql", "adddb", array($databasename));
foreach($createdb as $v)
{
$result = $v['result'];
}
if ($result == 1)
{
//create user
$usr = $xmlapi->api1_query($cpuser, "Mysql", "adduser", array($databaseuser, $databasepass));
}
foreach($usr as $v)
{
$result2 = $v['result'];
}
if ($result2 == 1)
{
//add user to database
$addusr = $xmlapi->api1_query($cpuser, "Mysql", "adduserdb", array($databasename, $databaseuser, 'all'));
}
print_r($addusr);
?>
这应该适应你的API,但它的作用是允许创建数据库,创建用户,并最终与之关联!
PS:看xmlapi-php-class
希望它可以帮助你......
如果我正确理解你的问题,你想授予某个用户的访问权限,以便能够在这个特定的用户帐户中创建新的数据库。正确?
如果是这样,当您在CPANEL/WHM中创建新的域/用户时,可以定义用户将拥有多少个数据库。 因此,如果您为此用户定义了3个数据库,则您将授予此用户他可以创建3个数据库。
就是这样......如果我正确理解你的问题。
问候
不,这不是它。 cPanel用户拥有无限数量的数据库,我想要做的是允许数据库用户创建新的数据库。我需要这个,所以我可以即时创建新的数据库,而无需登录到cPanel并手动创建它们。 – arnaslu 2010-06-05 16:35:11
谢谢Zuul,上次我使用cPanel/WHM API时没有数据库调用,所以这是个好消息。 – arnaslu 2010-06-05 18:16:14