我創建了新的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