【问题标题】:RESTORE DATABASE RDS - MS SQL - 0% complete恢复数据库 RDS - MS SQL - 0% 完成
【发布时间】:2017-05-24 20:13:40
【问题描述】:

我正在尝试从另一个 MS SQL 数据库(2014 版)的 .bak 文件中恢复/创建一个 MS SQL 数据库,但是从 SQL 基准测试中我可以看到我的任务从未完成。

我遵循了这份文档和来自 AWS 的文档:

https://trailheadtechnology.com/blog/restoring-a-sql-server-backup-to-amazon-rds

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.Procedural.Importing.html#SQLServer.Procedural.Importing.Native.Using

步骤:

  1. 创建具有 S3 权限的数据库以进行数据恢复。
  2. 安装 SQL 基准 Linux 和驱动程序
  3. 连接到数据库
  4. 将数据上传到 S3
  5. 恢复:

    exec msdb.dbo.rds_restore_database 
        @restore_db_name='DB_test', 
        @s3_arn_to_restore_from='arn:aws:s3:::bucket/backup.bak';
    

然后它创建任务并挂在那里..我等了 30 分钟,状态总是 0% 完成...没有错误

PD。我的用户是数据库的创建者,在创建时通过控制台提供给 AWS。

【问题讨论】:

  • 这些步骤适用于 Microsoft SQL Server Management Studio (SSMS)。因此,这似乎是与 MS SQL 的 SQL Benchmark 驱动程序相关的问题。

标签: sql-server amazon-web-services amazon-s3


【解决方案1】:

我最近尝试使用 SQL Workbench/J 将 .bak 转储从 S3 还原到 RDS SQL Server 2008 R2 时遇到了同样的问题(没有尝试 SSMS)

我最终通过使用支持 JDBC 4.2 API 的 Microsoft JDBC Driver 6.0 for SQL Server(包含在 Sqljdbc42.jar 中,它需要 8 的 JRE 并支持 JDBC 4.2 API)使其工作

不幸的是,AWS 文档在这个主题上不准确,因为他们建议使用 Microsoft JDBC Drivers 4.1(预览版)或 4.0 for SQL Server with SQL Workbench/J http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ConnectToMicrosoftSQLServerInstance.html

【讨论】:

    【解决方案2】:

    SQL Wrorkbench 和驱动程序 sqljdbc4.jar 发生在我身上。

    在任务生命周期处于CREATED 状态等待一段时间后,我执行了COMMIT 并立即将任务从CREATED 更改为IN_PROGRESS

    我认为较新的驱动程序或其他工具的默认行为是“自动提交”,这就是它在 SQL Server Management Studio 中工作的真正原因。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-18
      • 1970-01-01
      • 2016-04-04
      相关资源
      最近更新 更多