数据库迁移(SQL SERVER导入数据到MySql)

地址:http://blog.csdn.net/jiaohougenyang/article/details/44937801

背景:项目最开始时使用的是SQL Server数据库,业务需求现要将数据库调整为MySQL。网上搜集了一些教程,整理了一个相对简单方便的分享给大家。

1、先去mysql官网下载一个odbc的驱动,因为MSsql一直没有集成mysql的驱动,这个玩意需要单独下载并安装。点我下载  我下载的是windows解压缩的包Windows (x86, 64-bit), ZIP Archive,免安装版(据说绿色版比安装版本要好)。

2、控制面板 —> 打开ODBC数据源

如果安装成功,在ODBC数据源驱动里面有2个相应选项,如下图:
 
                                                   
3、点击上图的用户DSN,添加一个mysql的连接(前提是你已经安装了一个mysql的数据库)。
 
    
双击之后出现下面的提示框:
 

啊,哈,至此已经成功了一半了!

4、如果是SQL server2000用DTS的话,就可以直接用了。关键步骤在下面

下面这个界面很熟悉了:

ok导入完成了。
当然也可以使用文件dsn,把连接串存成一个文件,然后导入的时候选择文件dsn,只要找到连接串的路径就可以了,不在赘述。。

驱动装完之后就可以开始导库了。

我使用的是MySQL的Client的工具SQLyog,安装很简单,功能界面很像SQL Server 2008,易上手。(由于本人安装的是中文破解版,为了更方便英文版的童鞋阅读理解,截图就直接拿原博的来用了,嘻嘻,附原博地址http://www.jb51.net/softjc/158485.html )

1. SQLyog安装完之后新建一个空数据库,右键【Import】->【Import Extenal Data】;

(Figure1:Import)

2. 选择【Start a new job】,点击【下一步】;

(Figure2:Start a new job)

3. 下面就是DSN的设置界面,如果你的下来列表中没有需要导出SQL Server数据库的DSN,那么需要通过【Create a New DSN】来创建一个新的DSN连接到SQL Sever;

(Figure3:Create a New DSN)

(Figure4:创建新数据源)

(Figure5:选择数据源类型)

4. 把上面的设置保存为一个local.dsn文件;

(Figure6:选择数据源保存路径)

(Figure7:选择SQL Server服务器)

(Figure8:设置SQL Server帐号和密码)

(Figure9:选择SQL Server数据库)

(Figure10:测试数据源)

(Figure11:测试成功)

5. 选中【File DSN】,在浏览中选择我们刚刚创建好的DSN,接着填写登录到SQL Server的帐号和密码;

(Figure12:选择DSN)

6. 下一步,选择目标MySQL服务器,填写IP地址和帐号密码,并选择目标数据库;

(Figure13:设置MySQL帐号和密码目标数据库)

(Figure14:表拷贝)

7. 这一步类似SQL Server的导入导出功能,这里可以拷贝一个表或者多个表。同时还可以设置具体的过滤细节,里面包括了SQL Server表字段与MySQL表字段之间的对应关系【Map】,高级选项【Advanced】,过滤【WHERE】。我们目前的需求是拷贝所有,所以后面的过滤步骤(第8步)可以不予考虑, 直接点击“下一步”开始copy。之前的全部过程就像是为SQL Server与MySQL创建了一个时光隧道,这里设置SQL Server表与MySQL表之间的对应关系好比是在告诉它我要传送的是什么东西(比如说人、还是动物),告诉他之后就可以点击“下一步”开始时光穿梭了^w^

(Figure15:选择表对应关系)

8. 下图Figure16,数据源【Source】,描述【Destination】,特别注意这里数据类型【Type】,这里的意思是转换目标的数据类型,但是不需要跟目标表的一样,因为这里是做为一个临时存储的数据类型,类似FindOn在SQL Server中是datetime,这里转换为MySQL的timestamp,其实MySQL目标表的数据类型是datetime,这样的设置也是可以转换成功的。

(Figure16:表字段转换)

(Figure17:高级选项)

(Figure18:Error)

(Figure19:Log日志信息)

(Figure20:执行信息)

(Figure21:执行结果)

(Figure22:原始SQL Server的数据列表)

(Figure23:转移到MySQL的数据列表)

。对比下Figure22与Figure23,发现我们数据已经全部转移成功了! 有不足之处还望各路大神多多指点^w^

时间: 2024-08-01 10:31:28

数据库迁移(SQL SERVER导入数据到MySql)的相关文章

中文 数据库 乱码 excel中导入数据到mysql 问题

数据库编码  表编码  ide编码 必须一致,即可解决问题 场景:把这些数据导入数据库,并且得到城市名称拼音的首字母 从excel中导入数据到mysql,使用了jxl这个库 使用了pinyin4这个库,但是发现有bug import java.io.UnsupportedEncodingException; import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import ja

SQL Server导入数据时“启用标示插入”详解

在SQL Server中导入数据时,会有一个"启用标示插入"的选项,突然间懵逼了,这到底啥意思?我选与不选这个选项,结果好像没区别!不科学啊这,"存在即合理",我相信这个选项肯定有它的用处,只是我不知道罢了. 于是我去查资料,在CSDN论坛里找到了可能的解释: 1)首先:"启用标示插入"只对标示列(identity定义的列)起作用.所以如果你要使用这个功能,肯定得有标示列了.我当时狂晕的地方在于,我没在数据库创建表,而是直接在导入数据的过程中创建

(5.3.7)数据库迁移——sql server备份文件的加密解密

嗯,最近在研究数据库备份相关的东西,考虑到应该为数据库备份加个密,就准备从网上搜索一下看看有什么好办法,没想到还挺乱... 首先,我从网上搜到的,对数据库备份加密的方法,主要有三种: [1]使用With Password(2008以下(含)) 在使用 BACKUP 语句时,添加 PASSWORD 参数[此方法适用于 sql server 2012 以前的版本(不包含 2012)] 不过呢,其实这个 PASSWORD 参数的加密,并不是我们想象中的对数据完整的加密. 案例: --备份 Backup

sql server导入数据

bulk insert dbo.BLT_BULLETINANNEX from 'C:\soft\资讯数据\资讯数据\nannex.dat'; bulk insert dbo.BLT_BULLETINANNEX from 'C:\soft\资讯数据\资讯数据\nannex.dat'; bcp test.dbo.RPT_REPORTANNEX IN C:\soft\资讯数据\资讯数据\rtannex_n.dat -N -T;

将SQL Server 2000数据导入到MySQL 5.5的方法

一.安装MySQL 5.5(可以与SQL Server不在同一台服务器上),并新建一个空的数据库(一般用utf-8编码),用于接收导入的数据. 二.在SQL Server的服务器上安装mysql-connector-odbc-5.3.2-win32. 三.在SQL Server的服务器上运行"管理工具"->"数据源(ODBC)",切换到"系统DSN"面板,添加"MySQL ODBC 5.3 Unicode Driver"

Sql Server 导入还有一个数据库中的表数据

在涉及到SQL Server编程或是管理时一定会用到数据的导入与导出, 导入导出的方法有多种,此处以SQL Server导入表数据为例.阐述一下: 1.打开SQL Server Management Studio.在对象资源管理器中,展开"SQL Server 实例"→"数据库"→"你须要导入数据的数据库"节点.单击鼠标右键,选择"任务"→"导出数据"命令. 出现导入和导出向导的欢迎界面,单击"下

Sql Server 导入另一个数据库中的表数据

在涉及到SQL Server编程或是管理时一定会用到数据的导入与导出, 导入导出的方法有多种,此处以SQL Server导入表数据为例,阐述一下: 1.打开SQL Server Management Studio,在对象资源管理器中,展开"SQL Server 实例"→"数据库"→"你需要导入数据的数据库"节点,单击鼠标右键,选择"任务"→"导出数据"命令.出现导入和导出向导的欢迎界面,单击"下一

C#连接Access、SQL Server、Oracle、MySQL、DB2和SyBase数据库的代码集

C#连接六类数据库的代码集 本文列出了C#连接Access.SQL Server.Oracle.MySQL.DB2和SyBase六种不同数据库的程序源码和需要注意的点. 1.C#连接Access 程序代码: Code using System.Data;using System.Data.OleDb; .. string strConnection="Provider=Microsoft.Jet.OleDb.4.0;"; strConnection+[email protected]&

SQL Server GUID 数据迁移至MongoDB后怎样查看?

关键字:SQL Server NEWID():BSON:MongoDB UUID 1.遇到的问题和困惑 SQL Server中的NEWID数据存储到MongoDB中会是什么样子呢?发现不能简单的通过此数据查询了. 例如我们将SQL Server 数据库中的QQStatements2019表迁移至MongoDB 中,集合命名也为QQStatements2019. 在SQL Server中选择4个OrderId,数据作为演示实例,查看如下: 经过程序转换后,在mongodb的客户端工具nosqlbo