【问题标题】:How to escalate database user permissions to create new databases?如何升级数据库用户权限以创建新数据库?
【发布时间】:2011-02-28 04:39:32
【问题描述】:

我创建了新的 cPanel 帐户,使用此帐户创建了新数据库、新数据库用户和连接用户到数据库,简单的东西。现在,我希望这个特定用户能够创建新数据库,如何升级这个数据库用户的权限以允许创建新数据库?我仍然希望这些数据库与 cPanel 帐户相关联,是否将帐户名称前缀 (account_) 添加到数据库名称足以将其与该 cPanel 帐户相关联?

编辑:哎呀,忘了提 - 数据库是 MySQL。

【问题讨论】:

    标签: mysql database cpanel


    【解决方案1】:

    您应该阅读包含所有正确程序的在线手册,但您可以在哪里进行操作:

    <?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

    希望对你有帮助...

    【讨论】:

    • 感谢 Zuul,上次我使用 cPanel/WHM API 时它没有数据库调用,所以这是个好消息。
    【解决方案2】:

    如果我正确理解您的问题,您希望授予特定用户访问权限,以便能够在此特定用户帐户中创建新数据库。对吗?

    如果是这样,当您在 CPANEL/WHM 中创建新域/用户时,您可以定义用户将拥有多少个数据库。 所以,如果你给这个用户定义了,比如3个数据库,你将授予这个用户他可以创建3个数据库。

    仅此而已...如果我正确理解您的问题。

    问候

    【讨论】:

    • 不,不是这样。 cPanel 用户拥有无限数量的数据库,我想做的是允许数据库用户创建新数据库。我需要这个,以便我可以即时创建新数据库,而无需登录到 cPanel 并手动创建它们。
    猜你喜欢
    • 2017-05-25
    • 1970-01-01
    • 1970-01-01
    • 2011-09-04
    • 2021-02-05
    • 1970-01-01
    • 1970-01-01
    • 2015-02-16
    • 1970-01-01
    相关资源
    最近更新 更多