【发布时间】:2016-03-20 17:39:40
【问题描述】:
我有一个小型(几百 MB)SQL Server 数据库在 RDS 上运行。我花了几个小时试图将它的副本复制到我的本地 SQL Server 2014 实例上。以下所有失败。有什么想法可行吗?
Task -> Backup失败,因为它没有授予我的管理员帐户备份到本地驱动器的权限。Copy Database在使用While trying to find a folder on SQL an OLE DB error was encountered with error code 0x80040E4D创建包期间失败从 SSMS,连接到 RDS 服务器时,运行
BACKUP DATABASE。这将失败并显示消息BACKUP DATABASE permission denied in database 'MyDB'。即使在为连接的用户运行EXEC sp_addrolemember 'db_backupoperator'之后。-
李>General scripts生成一个 700MB 的.sql文件。使用sqlcmd -i运行它会在生成无法在本地服务器上挂载的合理.mdf和.ldf文件(可能是因为sqlcmd 未能完成和解锁它们)之后的某个时候失败。
【问题讨论】:
-
首先在本地手动创建数据库并使其正常工作。然后使用 Tasks / Generate Scripts。在 Advanced 中,选择 _Types of data to script = Schema and Data 并运行生成的脚本。如果您最初发布错误消息会有所帮助。如果这不起作用,请发布错误
-
@Nick.McDermaid - 在这种情况下,我最终能够让 (#4) 工作(在一系列重新启动机器和服务以连接 MDF 之后),但事实并非如此可扩展。
-
你真的是说“不能自动化”吗?如果您要发布错误,也许我们可以提供帮助。
-
@Nick.McDermaid - 操作系统认为它们被 MS SQL 进程锁定,而 MS SQL Server 认为它没有或无法获得锁定。我可以花时间确定安装它们的最小顺序,但对于任何大量数据,这似乎是最笨拙的方法。
-
如果您发布带有问题和错误的代码,也许我们可以提供帮助。通常你只需发出一个 CREATE DATABASE 然后使用它,但你仍然必须指定一个路径,所以在我看来,需要一定程度的配置
标签: sql-server amazon-rds