21

我正在尝试将 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 Mysql@74.5.3.2:3306...
Connecting to Mysql@74.5.3.2: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.

Autotask 是数据库的名称。请问我做错了什么?

注意:即使有警告,向导让我单击下一步,但下一个屏幕应该列出模式,但由于它是空的,我无法继续。

提前致谢。巴勃罗

4

2 回答 2

40

如果其他人遇到同样的问题,而您无权访问“sa”用户,我想我会发布如何解决该问题。

根本问题是用户权限。尽管您可以很好地登录数据库,但需要设置一个特定的权限才能使其与 MySQL Workbench 一起使用。您需要的权限是“查看任何定义”,该权限位于用户“Securables”选项卡下。

有一个很好的简短视频在这里解释了这一切http://mysqlworkbench.org/2013/08/video-tutorial-setup-a-restricted-sql-server-account-for-migrations-with-mysql-workbench/和具体部分位于2:17。

如果数据库位于共享主机上 - 正如我需要访问的那样 - 我建议只需向主机发送电子邮件(最好通过您的客户主要联系人),他们会希望为您完成。在我的情况下,主机将其打开了 1 天,因为在打开它的最后肯定存在一些其他潜在的安全风险。

希望这对其他人有帮助。

Management Studio > 服务器 > 安全 > 登录 > 用户 > 属性 > 安全 > 显式 > 查看任何定义 > 授予

于 2014-05-08T00:01:02.910 回答
5

确保您以用户“sa”的身份连接到 MS SQL。非管理员用户可能缺乏提取架构所需的权限...

于 2013-07-25T05:36:08.393 回答