将SQL数据库迁移到Azure时出现CONTROL DATABASE问题

时间:2017-09-11 10:41:41

标签: sql-server azure

我跟随此tutorial on Microsoft Docs。我已经到达了使用"数据迁移助手"的部分,但在选择目标Azure数据库并单击"下一步"后,我收到以下错误:

  

发生意外错误。   当前主体对类DATABASE的安全AzureDatabaseName没有CONTROL权限。

我使用Azure SQL服务器的唯一用户 - 服务器管理员,该用户应具有所有权限。我已经验证用户是“db_owner”'使用IS_ROLEMEMBER

我错过了什么吗?

4 个答案:

答案 0 :(得分:10)

我有同样的问题。这似乎是Azure SQL数据库中的一个错误。如果数据库名称中有点,则它不起作用。我用斜线替换了这些点,它对我有用。

您无需重新创建数据库。重命名对我来说很好:

  1. 你必须确保没有其他人在使用数据库!
  2. 连接到主表并在Azure SQL Server上执行以下脚本:

    USE master;
    GO
    ALTER DATABASE [my.database] 修改名称= [my-database];
    GO

  3. 以下是有关如何重命名Azure SQL数据库的链接:

    https://docs.microsoft.com/en-us/sql/relational-databases/databases/rename-a-database

答案 1 :(得分:1)

我删除了所有内容 - 数据库,sql server和资源组。然后我使用相同的名称重新创建所有内容,除了数据库名称 - 以前包含点 - 这次迁移工具工作。我想我刚遇到一些错误。

答案 2 :(得分:1)

还要确保为传入连接创建防火墙规则。这个错误可能有点像红鲱鱼。

答案 3 :(得分:0)

如果目标数据库名称中有点,则必须删除或替换db name中的点 喜欢:' demo.customerdb'到' demo-customerdb'

您可以使用Sql Management Studio进行数据库重命名:

  1. 连接目标数据库服务器
  2. 选择目标数据库
  3. 按" F2"键或右键单击目标数据库,然后选择 "重命名"
  4. 从数据库名称中删除点(。)以及它! :)
  5. 之后,您可以从一开始就再次尝试迁移过程。

相关问题