2016-12-29 42 views
1

當我發出一個isql命令:如何創建由SYSDBA以外的用戶擁有的數據庫?

create database "localhost:testdb.fdb" user milenio password "secret"; 

我得到以下錯誤:

Statement failed, SQLSTATE = 28000 
no permission for CREATE access to DATABASE testdb.fdb 

我缺少什麼?我如何向用戶milenio授予必要的權限?

回答

3

在Firebird 3中,用戶需要擁有RDB$ADMIN角色(並使用其登錄),或者用戶(或其當前角色)需要具有CREATE DATABASE特權才能創建數據庫。

又見火鳥發行說明User Privileges for Metadata Changes

GRANT CREATE DATABASE TO [USER | ROLE] <user-name> | <role-name>; 

或者具體地說,這種特權授予用戶milenio

grant create database to user milenio; 

後跟提交。

這需要由安全數據庫上的SYSDBA或具有RDB$ADMIN角色的用戶執行。

相關問題