2015-10-05 57 views
0

我可以使用DBC執行以下操作,但在U使用SYSDBA用戶時失敗。我以爲我已經授予了SYSDBA的所有權利,但我必須錯過這個。Teradata 15失敗5678用戶未被授權分配默認角色

CREATE USER "zz_01" 
    FROM ALL_USERS AS 
PASSWORD="s#rMdfdgd1", 
PERMANENT = 0, 
SPOOL = 0, 
TEMPORARY = 0, 
COLLATION = HOST, 
ACCOUNT = 'sysdba', 
NO FALLBACK, 
NO BEFORE JOURNAL, 
NO AFTER JOURNAL, 
TIME ZONE = NULL, 
DATEFORM = NULL, 
DEFAULT CHARACTER SET LATIN, 
DEFAULT ROLE = "SL-TERADATA-TEST", 
PROFILE = PROFILE_DEFAULT_ACCOUNT; 

***失敗5678用戶無權指定默認角色 'SL- TERADATA-TEST'。

回答

1

您需要添加ADMIN OPTON

GRANT "SL-TERADATA-TEST" TO SYSDBA WITH ADMIN OPTION; 

也許你應該允許以SYSDBA創建角色也一樣,那麼他將自動獲得所有新角色右:

GRANT ROLE TO SYSDBA; 
+0

它沒有爲所有角色工作。它只適用於如果我授予「SL-TERADATA-TEST」SYSDBA WITH ADMIN OPTION;在將授權語句撤銷到sysdba後,SYSDBA不能再次分配默認角色。 – dave

+0

@dave:正如我寫的,這隻適用於** GRANT後創建的**新**角色**。如果您不想將ROLE權限永久分配給SYSDBA,則必須分別爲每個角色授予ADMIN OPTION權限。 – dnoeth

+0

我曾向sysdba授予角色。但它沒有什麼區別。使用sysdba分配角色時遇到同樣的錯誤。 Sysdba是我的DBA用戶,我非常想用它來做每天我所做的所有DBA工作。再次感謝您花時間回覆! – dave