如何将MySQL数据迁移到SQLServer中

作者&投稿:邵超 (若有异议请与网页底部的电邮联系)
如何将mysql 数据库导入到sql server 2008 数据库~

1.安装mysql数据库的ODBC驱动,mysql-connector-odbc-3.51.19-win32.msi
2.打开控制面板\管理工具\数据源ODBC,在用户DSN中添加一个MySQL ODBC 3.51数据源。
3.在登录login选项卡中输入数据源名称Data Source Name,此处输入MysqlDNS;然后输入服务器 Server,用户User,密码Password,输入正确后选择要导入的数据库。在连接选项connect options中根 据需要设置MySql使用的端口port和字符集Character Set。
注:字符集一定要和Mysql服务器相对应,如果Mysql使用了gbk字符集,则一定要设置字符集为gbk, 否则导入到Sql Server可能会出现问号乱码。
4.打开sql server企业管理器,新建一数据库MySql。选择该数据库,单击右键选择所有任务\导入数 据。
5.选择数据源为其它(ODBC数据源),用户/系统DSN为MysqlDNS。其余根据向导进行,即可将数据从 MySql数据库导入到MSSQL数据库中。

/*标题:SQL Server 2000 连接mysql.作者:爱新觉罗.毓华 时间:2009-02-23地点:广东深圳*/--连接mysql安装MySQL的ODBC驱动MyODBC1、为MySQL建立一个ODBC系统数据源,例如:选择数据库为test ,数据源名称为 myDSN2、建立链接数据库EXEC sp_addlinkedserver @server = 'MySQLTest', @srvproduct='MySQL', @provider = 'MSDASQL', @datasrc = 'myDSN'GOEXEC sp_addlinkedsrvlogin @rmtsrvname='MySqlTest',@useself='false',@locallogin='sa',@rmtuser='mysql的用户名',@rmtpassword='mysql的密码'3、查询数据SELECT * FROM OPENQUERY (MySQLTest ,'select * from 表' )4.如果Mysql修改密码后必须重新映射一下EXEC sp_addlinkedsrvlogin(http://topic.csdn.net/u/20090223/14/bd4eaef6-986e-483a-8155-5a563692d922.html)

以下有几款迁移工具的对比,可以参考,比较推荐DB2DB.

软件易用性主要是指软件在导入前的配置是否容易。由于很多软件设计是面向程序员而非一般的数据库管理人员、甚至是普通的应用程序实施人员,而这一类人员很多时候并没有数据源配置经验。因为一些使用 ODBC 或者 ADO 进行配置的程序往往会让这类用户造成困扰(主要是不知道应该选择什么类型的数据库驱动程序)。下面让我们看看四个工具的设计界面:

>>>>

1、SQLyog

SQLyog 使用的是古老的 ODBC 连接,但对于新一代的程序来说,这种方式的非常的不熟悉并且不容易使用,并且必须要求本机安装好相应的数据库的 ODBC 驱动程序(SQL Server 一般自带好)。

>>>>

2、Navicat Premium

NavicatPremium是四个应用工具中设计最不人性化的一个:从上图怎么也想像不到要点按那个小按钮来添加一个新的连接,并且这个连接设置不会保存,每次导入时都必须重新设置。NavicatPremium使用的是比 ODBC 稍先进的 ADO 设置方式(199X年代的产物),但使用上依然是针对老一代的程序员。







>>>>

3、Mss2sql

Mss2sql 是最容易在百度上搜索出来的工具,原因之一是它出现的时间较早。


Mss2sql由于是很有针对性的从 SQLServer 迁移到 MySQL,因为界面使用了操作向导设计,使用非常容易。同时在设置的过程中,有非常多的选项进行细节调整,可以感觉到软件经过了相当长一段时间的使用渐渐完善出来的。

>>>>

4、DB2DB




DB2DB 由于是由国人开发,因此无论是界面还是提示信息,都是全程汉字。另外,由于 DB2DB 在功能上很有针对性,因为界面设计一目了然和易使用。和 mss2sql 一样, DB2DB 提供了非常多的选项供用户进行选择和设置。


三、处理速度和内存占用评测

在本评测前,本人的一位资深同事曾经从网上下载了某款迁移软件,把一个大约2500万记录数的数据表转送到阿里云 MySQL,结果经过了三天三夜(好在其中两天是星期六和星期日两个休息日)都未能迁移过来。因此这一次需要对这四个工具的处理速度作一个详细的测试。

考虑到从 SQL Server 迁移到 MySQL 会出现两种不同的场景:

  • 从 SQL Server 迁移到本地 MySQL 进行代码测试和修改;

  • 从 SQL Server 迁移到云端 MySQL 数据库正式上线使用;

  • 以下为测试过程中的截图:

    >>>>

    1、SQLyog


    请点击输入图片描述

    >>>>

    2、Navicat Premium


    请点击输入图片描述


    请点击输入图片描述

    注意:我们在测试 Navicat Premium 迁移到  MySQL 时发现,对于 SQL Server 的 Money 类型支持不好(不排除还有其它的数据类型支持不好)。Money 类型字段默认的小数位长度为 255,使得无法创建数据表导致整个测试无法成功,需要我们逐张表进行表结构修改才能完成测试过程。

    Navicat Premium 的处理速度属于中等,不算快也不算慢,但 CPU 占用还有内存占用都处于高位水平。不过以现在的电脑硬件水平来说,还是可以接受。但 CPU 占用率太高,将使得数据在导入的过程中,服务器不能用于其它用途。

    >>>>

    3、Mss2sql

    Mss2sql 并没有提供计时器,因此我们使用人工计时的方法,整个过程处理完毕大于是 726 秒。Mss2sql 的 CPU 占用率相对其它工具来说较高,但仍属于可以接受的范围之内。

    >>>>

    4、DB2DB


    请点击输入图片描述

    DB2DB 同样迁移 300万数据时,仅仅使用了 2 分 44 秒,这个速度相当惊人。不过最后的结果出现一个 BUG,就是提示了转换成功,但后面的进度条却没有走完(在后面的数据完整性评测中,我们验证了数据其实是已经全部处理完毕了)。



/*
标题:SQL Server 2000 连接mysql.
作者:爱新觉罗.毓华
时间:2009-02-23
地点:<a href="https://www.baidu.com/s?wd=%E5%B9%BF%E4%B8%9C%E6%B7%B1%E5%9C%B3&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1dWPj--Pv7hmhnzmHKhnAcd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6K1TL0qnfK1TL0z5HD0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1m3nHD3n1D4PjfkrHndnHb1n6" target="_blank" class="baidu-highlight">广东深圳</a>
*/

--连接mysql

安装MySQL的<a href="https://www.baidu.com/s?wd=ODBC&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1dWPj--Pv7hmhnzmHKhnAcd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6K1TL0qnfK1TL0z5HD0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1m3nHD3n1D4PjfkrHndnHb1n6" target="_blank" class="baidu-highlight">ODBC</a>驱动My<a href="https://www.baidu.com/s?wd=ODBC&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1dWPj--Pv7hmhnzmHKhnAcd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6K1TL0qnfK1TL0z5HD0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1m3nHD3n1D4PjfkrHndnHb1n6" target="_blank" class="baidu-highlight">ODBC</a>

1、为MySQL建立一个<a href="https://www.baidu.com/s?wd=ODBC&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1dWPj--Pv7hmhnzmHKhnAcd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6K1TL0qnfK1TL0z5HD0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1m3nHD3n1D4PjfkrHndnHb1n6" target="_blank" class="baidu-highlight">ODBC</a>系统数据源,例如:选择数据库为test ,数据源名称为 myDSN

2、建立链接数据库
EXEC sp_addlinkedserver @server = 'MySQLTest', @srvproduct='MySQL', @provider = 'MSDASQL', @datasrc = 'myDSN'
<a href="https://www.baidu.com/s?wd=GO&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1dWPj--Pv7hmhnzmHKhnAcd0ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6K1TL0qnfK1TL0z5HD0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1m3nHD3n1D4PjfkrHndnHb1n6" target="_blank" class="baidu-highlight">GO</a>
EXEC sp_addlinkedsrvlogin @rmtsrvname='MySqlTest',@useself='false',@locallogin='sa',@rmtuser='mysql的用户名',@rmtpassword='mysql的密码'

3、查询数据

SELECT * FROM OPENQUERY (MySQLTest ,'select * from 表' )

4.如果Mysql修改密码后必须重新映射一下EXEC sp_addlinkedsrvlogin
(<a href="http://topic.csdn.net/u/20090223/14/bd4eaef6-986e-483a-8155-5a563692d922.html" target="_blank">http://topic.csdn.net/u/20090223/14/bd4eaef6-986e-483a-8155-5a563692d922.html</a>)

http://blog.csdn.net/zjturn/article/details/6779781
上面有教程,自己参考下吧


...将数据上传至万网平台或万网平台上传数据MySQL帮你实现mysql上传万网...
现在我们已经有了数据并且已经存储在MySQL中,接下来我们需要将它们上传到万网服务器中。要实现这一点,我们首先需要连接到万网平台。我们可以使用PHP连接到MySQL数据库,并使用mysqli_connect()函数进行连接。此函数需要包含MySQL服务器的主机名、用户名和密码作为参数。\/\/连接MySQL服务器,参数分别为MySQL...

MySQL的数据统计一种简单的方法是将两个表合并mysql两表合并统计_百度...
在实际应用中,我们可以将更多的表连接起来,以获得更多的数据信息。然而,在合并多个表时,我们需要更加小心和谨慎,以避免数据失真和错误的结果。因此,我们需要对数据的完整性和一致性进行充分的检查和验证,以确保我们得到的结果是正确和可靠的。综上所述,将两个表合并是MySQL中一种简单而有效的数据...

如何将mysql数据库表中的内容显示在Web页面中,用什么软件实现呢?_百度...
7、使用close()方法关闭连接。我们在使用mysql时需要添加smysql驱动的jar包。8、接下来我们创建MVC模式中的数据持久化层,首先我们创建一个TestDao接口,用于定义获取数据的方法。9、接下来我们创建TestDaoImpl实现类,并且实现TestDao接口,重写该接口中的方法,如下图所示。10、我们将数据以集合的形式返回...

django如何将数据写入mysql中(2023年最新解答)
导读:很多朋友问到关于django如何将数据写入mysql中的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!django怎么往mysql数据库插入数据修改setting.py里面的DATABASES元组为 DATABASES={ 'default':{ 'ENGINE':'django.db.backends.mysql','NAME':'books...

MySQL数据库备份的几种方式_MySQL
最近一直想写点博客,但是不知道写什么,感觉自己最近的知识没有什么增加,今天想到了一篇可以写的博客。以前试过根据data文件夹备份MySQL,但是从来没有成功过,前几天帮助朋友还原MySQL,终于成功的将备份的data文件夹还原成功了。MySQL数据库算是常用的数据库中最好使用的数据库了,对于备份的操作也不...

怎样将mysql数据库迁移到utf8?
修改导出的表结构文件,将表、列定义中的 utf8 改为 utf8mb4 5. 导入数据 先导入表结构:mysql -u -p testdb < \/backup\/testdb.sql 后导入数据:mysql -u -p testdb < \/backup\/testdata.sql 6. 建用户 查出旧环境的数据库用户,在新数据库中创建 7. 修改新数据库端口,启动应用进行...

MySQL如何将一行数据拆分为多行mysql一行拆分多行
MySQL 如何将一行数据拆分为多行?在实际开发过程中,我们经常遇到需要将一行数据拆分成多行的情况,例如需要将多个字段组合成一行记录时,在查询结果中需要每个字段独立占用一行。MySQL提供了几种方法可以实现这一操作。1. 使用UNION联合多个SELECT语句 这是最常用的一种方法。例如我们有一张student表,其中...

我想问一下MYSQL该如何导入和导出呢,我导出后是一个.TXT文本,那我该如 ...
这个选项使得mysqldump命令给每一个产生INSERT语句加上列(field)的名字。当把数据导出导另外一个数据库时这个选项很有用。--delayed-insert 在INSERT命令中加入DELAY选项 -F or -flush-logs 使用这个选项,在执行导出之前将会刷新MySQL服务器的log.-f or -force 使用这个选项,即使有错误发生,仍然继续...

怎么将mysql数据库数据导出成.sql文件
在原数据库服务器上,可以用phpMyAdmin工具,或者mysqldump(mysqldump命令位于mysql\/bin\/目录中)命令行,导出SQL脚本。2.用phpMyAdmin工具 导出选项中,选择导出“结构”和“数据”,不要添加“DROP DATABASE”和“DROP TABLE”选项。选中“另存为文件”选项,如果数据比较多,可以选中“gzipped”选项。将...

mysql数据库中如何将重复的数据覆盖掉呢?
重复导入已存在的数据库,有以下两种导入方法IMP和IMPDP;2 IMP导入的时候:如果已经存在此表, 会告诉你无法创建此表,因为表已经存在。同时使用参数full=y ignore=y 那就是全部导入,把dmp里的所有数据插入到表里面。换句话说会有重复,如果该表有主键,重复的会因为违反约束,导入不成功,但不重复的...

涞水县18321197871: 数据库迁移怎么操作
井侍维能: 1、导出源数据库数据:在源数据库中选择需要迁移的数据,使用命令或工具将数据导出为文件.不同类型的数据库有不同的导出方法,例如在MySQL中,可以使用mysqldump命令将数据导出为.sql文件.2、导入数据到目标数据库:将导出的文件复制到目标数据库所在的服务器上,使用命令或工具将数据导入到目标数据库中.例如,在MySQL中,可以使用mysql命令将.sql文件导入到目标数据库中.

涞水县18321197871: 如何将mysql数据库文件转换成sqlservice数据库文件
井侍维能: 先用mysqldump程序把你的数据库导出为sql形式的文件,然后再在sqlserver management studio里面打开这个sql文件,执行之就可以了

涞水县18321197871: 用mysql生成的数据库如何转换为sqlsever可用的数据库 -
井侍维能: 将MySQL数据库转换为SQL Server的数据库,或者将SQL Server数据库转换为MySQL的数据库,在NT环境下很多时候都会用到.使用MySQL ODBC后就比较好办,可以使用SQL Server7的管理工具,也可以使用MySQL的管理工具,更可以使...

涞水县18321197871: 如何 从 MySQL 5.0 迁移到 Sql Server 2008 导入 -
井侍维能: 最近在搞将mysql 数据库导入到sql server 2008 数据库,按照网上说的方法搞好后,发现在导入导出向导后找不到我在odbc 配置的数据源名,转换不了,提示【无法找到用于将提供程序类型映射到 SSIS 类型的映射文件】,各位大哥大姐们,给小妹指条明路吧.------解决方案-------------------------------------------------------- 会不会是你mysql的数据驱动没装好ODBC中才找不到吧,你重新装一下驱动,然后在ODBC中配置好在测试一下连接,然后可以通过SQL Server 的DTS工具导入;

涞水县18321197871: 怎么将mysql中的表和数据转换到oracle中 -
井侍维能: 我们项目组曾经将Oracle的数据倒入到DB2中,没有DBA,没有用到任何工具,是写数据迁移程序,大概步骤是这样:1、根据双方数据库的数据字典,罗列出需要的字段2、编写相应的迁移程序,主要注意的地方就是Oracle的数据类型要做相应的转换,转移成DB2里有的,删除倒出时一些无用的数据,使导入的数据具有意义!3、抽取数据做验证!你参考一下,如果数据量不大的话,完成可以用把表的数据倒成SQL文件再执行!

涞水县18321197871: 怎么把mysql数据库转换为SQL server2008数据库?
井侍维能: 如果数据量不大,数据操作不复杂,可以运用工具转换,例如powerdesigner可以转换,但这是不建议的 建议的方法是:将物理模型转为概念模型,通过概念模型转换;

涞水县18321197871: 如何将datetime类型数据从mysql迁移转换到sql server? -
井侍维能: Access与Sql Server之ASP代码比较 后台数据库:[Microsoft Access] 与 [Microsoft Sql Server] 更换之后,ASP代码应注意要修改的一些地方:[一]连接问题(举例) [Microsoft Access] constr = "DBQ=c:\data\clwz.mdb; DRIVER=" [Microsoft Sql Server] constr = "DRIVER=;SERVER=host;DATABASE=mydata;uid=sa;pwd="

涞水县18321197871: 如何将mysql数据库导入oracle -
井侍维能: 第一种方法:使用数据迁移工具 第二种方法:一、将表中数据导入文本文件保存我是在win下的命令行模式做的Mysql>select * from my_mysql_table into outfile 'c: /my_tmp.txt';二、写控制文件用记事本开文档写完后改扩展名为.ctl,以下是具体内...

涞水县18321197871: 如何将MySQL数据库迁移到Oracle数据库 -
井侍维能: 1.Oracle公司开发的SQL Developer 1.2 下面就是配置SQL Developer 1.2 配置环境. Convert the captured database or tables 3. Generate DDL for the new Oracle schema objects 4. Run the generated DDL script to create the new user and objects ...

涞水县18321197871: 数据库mysql转sql server2005怎么转?
井侍维能: 不能直接转换,因为两个数据库引擎的版本不同,标准不同,不兼容. 所以你要先把你的MYSQL导出为EXCEL,然后以EXCEL导入到SQL SERVER 2005才能确保数据一致.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网