从MySQL(MariaDB)迁移到SQL(Azure)

时间:2018-09-11 09:12:39

标签: mysql sql-server ssis mariadb ssms

我在此过程中遇到了麻烦,并且会喜欢一些指针!

当前的源数据库是MariaDB数据库(类似于MySQL)。我有ODBC驱动程序成功连接。

我已经安装了Microsoft SQL Server Management(SSMS)17,并连接到我的Azure SQL数据库。

我已经找到了可以在SSMS中创建链接服务器的解决方案-但由于某些原因,我无法在对象资源管理器中看到它?

我尝试使用SQL Server 2017导入和导出工具。 选择源作为ODBC的.Net Framework数据提供程序,并输入DSN的名称。

选择目标作为SQL Server本机客户端(也尝试使用SQL Server的Microsoft OLE DB提供程序)。

引发第一个警告(不确定这是否是问题?) [源信息] 找不到映射文件以将提供程序类型映射到SSIS类型

还有大错误...

标题:SQL Server导入和导出向导

无法连接源组件。

  

错误0xc0047062:源-tblBookings [1]:   System.Data.Odbc.OdbcException(0x80131937):错误[42000]   [ma-3.0.6] [5.5.59-MariaDB]您的SQL语法有误;校验   与您的MariaDB服务器版本相对应的手册   在第1行的'“ tblBookings”'附近使用正确的语法   System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle,   RetCode retcode)   System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior   行为,String方法,布尔型NeedReader,Object [] methodArguments,   SQL_API odbcApiMethod)在   System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior   行为,字符串方法,布尔型NeedReader)位于   System.Data.Odbc.OdbcCommand.ExecuteReader(CommandBehavior行为)
  在System.Data.Odbc.OdbcCommand.ExecuteDbDataReader(CommandBehavior   行为)   System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior   行为)   Microsoft.SqlServer.Dts.Pipeline.DataReaderSourceAdapter.ReinitializeMetaData()   在   Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostReinitializeMetaData(IDTSManagedComponentWrapper100   包装器)


其他信息:

  

错误[42000] [ma-3.0.6] [5.5.59-MariaDB]您的SQL错误   句法;检查与您的MariaDB服务器相对应的手册   在第1行的'“ tblBookings”'附近使用的正确语法的版本   (maodbc.dll)


按钮: 好 ------------------------------ *

很高兴尝试以另一种方式进行此迁移。 任何提示,不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试以root用户身份执行此操作:

Set global sql_mode=ansi_quotes