我使用SQL Azure中非常有用的"CREATE AS COPY OF"命令编写了一个小应用程序来备份SQL Azure数据库.例如
CREATE DATABASE MyNewDB AS COPY OF MyOldDB
Run Code Online (Sandbox Code Playgroud)
我使用admin登录运行此命令(在创建服务器时首先登录). 我的问题:新登录执行上述命令需要的最小权限是多少?
到目前为止,这就是我所做的:
-- IN MASTER DB --
CREATE LOGIN DBCreator WITH PASSWORD = '?????????????'
CREATE USER DBCreator FROM LOGIN DBCreator;
EXEC sp_addrolemember 'dbmanager', 'DBCreator';
-- IN MyOldDB --
-- (I ran this stuff when the previous commands didn't do it) --
CREATE USER DBCreator FROM LOGIN DBCreator;
EXEC sp_addrolemember 'db_datareader', 'DBCreator'; --
Run Code Online (Sandbox Code Playgroud)
运行上面的CREATE DATABASE命令时的结果:
CREATE DATABASE permission denied in database 'MyOldDB'.
Run Code Online (Sandbox Code Playgroud)