从SQL Server到MySQL的数据迁移

时间:2017-03-30 09:48:44

标签: mysql sql-server mysql-workbench sqldatasource data-migration

我收到此属性错误:'没有类型'目标没有属性' split'当我试图在mysql workbench中将sql db迁移到mysql db时

这些是日志详细信息:

Starting...
Connect to source DBMS...
- Connecting to source...
Connecting to Mssql@sa...
Opening ODBC connection to Driver=sa;DATABASE=;UID=sa;PWD=XXXX...
Connected to Mssql@ 11.0.2100.60
Traceback (most recent call last):
  File "/Applications/MySQLWorkbench.app/Contents/PlugIns/db_mssql_grt.py", line 147, in connect
    _connections[connection.__id__]["version"] = getServerVersion(connection)
  File "/Applications/MySQLWorkbench.app/Contents/PlugIns/db_mssql_grt.py", line 174, in getServerVersion
    ver_parts = [ int(part) for part in ver_string.split('.') ] + 4*[ 0 ]
AttributeError: 'NoneType' object has no attribute 'split'
Traceback (most recent call last):
  File "/Applications/MySQLWorkbench.app/Contents/PlugIns/db_mssql_grt.py", line 174, in getServerVersion
    ver_parts = [ int(part) for part in ver_string.split('.') ] + 4*[ 0 ]
AttributeError: 'NoneType' object has no attribute 'split'

Traceback (most recent call last):
  File "/Applications/MySQLWorkbench.app/Contents/Resources/libraries/workbench/wizard_progress_page_widget.py", line 65, in run
    self.func()
  File "/Applications/MySQLWorkbench.app/Contents/PlugIns/migration_source_selection.py", line 406, in task_connect
    raise e
SystemError: AttributeError("'NoneType' object has no attribute 'split'"): error calling Python module function DbMssqlRE.getServerVersion
*** ERROR: Error during Connect to source DBMS: AttributeError("'NoneType' object has no attribute 'split'"): error calling Python module function DbMssqlRE.getServerVersion

Traceback (most recent call last):
  File "/Applications/MySQLWorkbench.app/Contents/Resources/libraries/workbench/wizard_progress_page_widget.py", line 543, in update_status
    task.run()
  File "/Applications/MySQLWorkbench.app/Contents/Resources/libraries/workbench/wizard_progress_page_widget.py", line 80, in run
    raise e
SystemError: AttributeError("'NoneType' object has no attribute 'split'"): error calling Python module function DbMssqlRE.getServerVersion
*** ERROR: Exception in task 'Connect to source DBMS': SystemError('AttributeError("\'NoneType\' object has no attribute \'split\'"): error calling Python module function DbMssqlRE.getServerVersion',)

Failed

我尝试了一个解决方案(如下所示,取自链接https://bugs.mysql.com/bug.php?id=66030&thanks=3&notify=195)。但它没有帮助。我仍然得到同样的错误。请帮我。

解决方案:

//我们需要您的帮助才能诊断出这一点。使用文本编辑器,打开/Applications/MySQLWorkbench.app/Contents/PlugIns/db_mssql_grt.py文件 在第174行附近,您会找到一条如下所示的行:     ver_string = execute_query(connection," SELECT SERVERPROPERTY(' ProductVersion')")。fetchone()[0]

将其更改为:

ver_string = execute_query(connection, "SELECT CAST(SERVERPROPERTY('ProductVersion') AS VARCHAR)").fetchone()[0]

然后保存并重试。谢谢! //

0 个答案:

没有答案