web-dev-qa-db-ja.com

Workbenchを使用してMSSQLからMySQLに移行するときに、ソースからスキーマリストを取得しない

MS SQL ServerにあるデータベースをMySQLに移行しようとしていますが、Workbenchを使用しています。両方のデータベースに接続できますが、次の警告が表示されます。

Retrieve schema list from source.

そしてこれはメッセージログです:

Starting...
Connect to source DBMS...
- Connecting to source...
Connect to source DBMS done
Check target DBMS connection...
- Connecting to target...
Connecting to [email protected]:3306...
Connecting to [email protected]:3306...
Connected
Check target DBMS connection done
Retrieve schema list from source....
- Checking connection...
- Fetching catalog names...
WARNING: The following catalogs where not found: Autotask
- Fetching schema names...
- Finished
Retrieve schema list from source finished
Tasks finished with warnings and/or errors, view the logs for details
Finished performing tasks.

自動タスクはデータベースの名前です。何が間違っているのですか?

注:警告があっても、ウィザードで[次へ]をクリックできますが、次の画面にはスキーマが一覧表示されるはずですが、空なので続行できません。

前もって感謝します。パブロ

20

ユーザー「sa」としてMSSQLに接続していることを確認してください。管理者以外のユーザーには、スキーマを抽出するために必要な権限がない可能性があります...

5
Onlyjob

他の誰かがこの同じ問題に遭遇し、あなたが「sa」ユーザーにアクセスできない場合、私は問題を解決する方法を投稿したいと思いました。

根本的な問題はユーザーのアクセス許可です。データベースに正常にログインできますが、MySQLWorkbenchで機能するために設定する必要のある特定の権限があります。必要な権限は、ユーザーの[セキュリティ保護]タブにある[任意の定義を表示]です。

ここにすべてを説明する良い短いビデオがあります http://mysqlworkbench.org/2013/08/video-tutorial-setup-a-restricted-sql-server-account-for-migrations-with-mysql- workbench / そして特定の部分は2:17にあります。

データベースが共有ホスト上にある場合(私がアクセスする必要があったように)、ホストに電子メールを送信することをお勧めします(できればクライアントのメインの連絡先を介して)。私の場合、ホストは1日間オンにしました。これは、ホストの最後にオンにすると、他の潜在的なセキュリティリスクが発生する可能性があるためです。

これが他の誰かに役立つことを願っています。

Management Studio > Server > Security > Logins > User > Properties > Securables > Explicit > View any definition > Grant

30
SaRiD