2017-09-11 1 views
1

私はこれに続くtutorial on Microsoft Docsです。私は、「Data Migration Assistantを」使用部分に到達しましたが、ターゲットAzureのデータベースを選択し、「次へ」をクリックした後、私は次のエラーを取得する:SQLデータベースをAzureに移行するときのCONTROL DATABASEの問題

An unexpected error occurred. Current principal does not have CONTROL permission on securable AzureDatabaseName of class DATABASE.

私はのユーザーのみを使用していますAzure SQLサーバー - サーバー管理者。すべてのアクセス許可が必要です。私はIS_ROLEMEMBERを使用して、ユーザーが 'db_owner'であることを確認しました。

何か不足していますか?

答えて

2

私は同じ問題がありました。これは、Azure SQLデータベースのバグのようです。データベース名にドットがある場合、それは機能しません。私は点をスラッシュに置き換え、それは私のために働いた。

データベースを再作成する必要はありません。名前の変更が正常に機能しました。

  1. 他に誰もデータベースを使用していないことを確認してください。
  2. Azure SQL Serverでマスターテーブルに接続し、次のスクリプトを実行します。

    USE master;
    GO
    ALTER DATABASE [my.database] 名前の変更[my-database];
    GO

    ここ

は、AzureのSQLデータベースの名前を変更する方法についてのリンクです:

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

1

データベース、SQLサーバー、およびリソースグループのすべてを削除しました。その後、以前はドットが含まれていたデータベース名を除いて、同じ名前を使用してすべてを再作成し、今回は移行ツールが機能しました。私はちょうどいくつかのバグに遭遇したと思います。

0

あなたがターゲット・データベース名にドットがある場合、あなたはデシベルでドットを削除するか、または交換する必要が名。
のように: 'デモのCustomerDB' から 'demo.customerdb'

あなたはデシベルの名前変更のSQL Management Studioを使用することができます。

  1. 接続ターゲット・データベース・サーバー
  2. 選択ターゲット・データベース
  3. プレス」 F2キーを押すか、ターゲットデータベースを右クリックして 「名前を変更」を選択します
  4. データベース名からドット(。)を削除します。 :)

その後、移行プロセスを最初からやり直すことができます。

関連する問題