MySQL数据转移至SQL Server详解
最近有个活是mysql数据转移到sql server 2012,直接手动转工作量太大,发现网上有工具教程,则记录一下。
一.安装MySQL ODBC驱动
为MySQL安装Connector/ODBC驱动。在此需要注意的一点是Connector/ODBC驱动与MySQL Server的版本对应问题。
下载地址:https://dev.mysql.com/downloads/connector/odbc/
我下载的是:mysql-connector-odbc-8.0.16-winx64.msi
安装的时候能会提示需要 Microsoft Visual C++ 2015 Redistributable 等 ,直接微软官网下载就行。
二.创建系统DSN
DSN为ODBC定义了一个确定的数据库和必须用到的ODBC驱动程序。每个ODBC驱动程序定义为该驱动程序支持的一个数据库创建DSN需要的信息。
创建系统DSN步骤如下:
开始->设置->控制面板->管理工具->数据源(ODBC),按该流程打开ODBC数据源管理器。
切换至系统DSN选项卡,点击添加按钮。弹出创建新数据源对话框,选择MySQL ODBC 8.0 ANSI Driver驱动程序(根据版本不同,可能名称有出入),点击完成按钮。
在弹出的链接MySQL对话框中设置MySQL数据库帐号信息。
关键是Login选项卡下的几个参数。
l Data Source Name,这个根据命名规则任意命名就可以了,最终会显示于ODBC数据源管理器中系统DSN选项卡下的列表中。
l Description,对该数据源的描述,可不填写。
l Server,MySQL Server的主机名,这里填写计算机主机名或者localhost均可。
l User和Password是MySQL Server对应的用户名和密码。
l DataBase,选定该数据源所指向的数据库。在这一里必须要求前面几个参数都正确,否则会提示错误,无法选择MySQL Server中的数据库。
还有两个需要注意的参数是Connect Options选项卡下的Port和Character Set。Port用于设置MySQL Server的通信端口,默认是3306,在安装时候如果没有改动默认端口,这里可以不设置。Character Set用于设置数据库语言编码,这里选择gbk。
点击OK按钮,完成系统DSN的创建,返回到ODBC数据源管理器对话框,在系统DSN选项卡下可查看到刚建立的数据源。点击确定按钮退出。
三.创建MSSQL到MySQL的链接服务
打开SQL Server Management Studio,运行下述语句,通过前面新建的ODBC数据源建立与MySQL Server链接服务器。
EXEC master.dbo.sp_addlinkedserver
@server = N'MYSQL',
@srvproduct=N'MySQL',
@provider=N'MSDASQL',
@provstr=N'DRIVER={MySQL ODBC 8.0 ANSI Driver}; SERVER=127.0.0.1; _
DATABASE=news; USER=root; PASSWORD=root; OPTION=3'
刷新下链接服务器节点,既可以看到上述用语句创建的链接
四.利用SQL语句转移数据至MSSQL
在Microsoft SQL Server中创建新的数据库,运行如下语句,运行后就可以把MySQL 数据库 “news” 导入到 Microsoft SQL 数据库“news”中。
SELECT * INTO 数据库.dbo.表
FROM OPENQUERY (MySQL ,'select * from 数据库.表' )
例如:将MySQL数据库“news”中的article表导入到SQL Server数据库的“news”的article中
SELECT * INTO [news].dbo.article
FROM openquery(MYSQL, 'SELECT * FROM news.article')
执行结果
参考地址:https://blog.csdn.net/qq_37308779/article/details/80679358
MySQL数据转移至SQL Server详解的更多相关文章
- MySQL5.7数据转移至SQL Server详解
本文链接:https://blog.csdn.net/qq_37308779/article/details/80679358一.安装MySQL ODBC驱动为MySQL安装Connector/ODB ...
- 【转】MySQL用户管理及SQL语句详解
[转]MySQL用户管理及SQL语句详解 1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysq ...
- MySQL数据迁移到SQL Server
数据迁移的工具有很多,基本SSMA团队已经考虑到其他数据库到SQL Server迁移的需求了,所以已经开发了相关的迁移工具来支持. 此博客主要介绍MySQL到SQL Server数据迁移的工具:SQL ...
- MySQL用户管理及SQL语句详解
1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysql.user; +--------+--- ...
- 【记录】ELK之logstash同步mysql数据到Elasticsearch ,配置文件详解
本文出处:https://my.oschina.net/xiaowangqiongyou/blog/1812708#comments 截取部分内容以便学习 input { jdbc { # mysql ...
- MySQL--将MySQL数据导入到SQL Server
随着时代的进步,社会的发展,各种技术层出不穷五花八门乱七八糟数不胜数(写作文呢!!!) 不扯废话,简单而言,很多公司都会同时使用多种数据库,因此数据在不同数据库之间导入导出就成为一个让人蛋疼的问题,对 ...
- MYSQL之数据库初识、安装详解、sql语句基本操作
目录 MYSQL之数据库初识及安装详解 1.什么是数据库? 1.什么是数据?(data) 2.什么是数据库?(databases,简称DB) 2.为什要用数据库? 3.什么是数据库管理系统?(Data ...
- MySQL之SQL优化详解(二)
目录 MySQL之SQL优化详解(二) 1. SQL的执行顺序 1.1 手写顺序 1.2 机读顺序 2. 七种join 3. 索引 3.1 索引初探 3.2 索引分类 3.3 建与不建 4. 性能分析 ...
- mysql用户授权、数据库权限管理、sql语法详解
mysql用户授权.数据库权限管理.sql语法详解 —— NiceCui 某个数据库所有的权限 ALL 后面+ PRIVILEGES SQL 某个数据库 特定的权限SQL mysql 授权语法 SQL ...
随机推荐
- linux下oracle启动关闭
1.以oracle身份登录数据库,命令:su – oracle 2.执行以下命令查看数据库监听器的状况: lsnrctl status 3.执行以下命令停止数据库监听器运行: lsnrctl stop ...
- MongoDB- 简单操作命令
MongoDB是基于集合操作的数据库 1.进入与退出 mongo / exit 2.库操作 显示所有库: show dbs; 查看当前所在库: db; 切换&使用某个库: use db_nam ...
- DataGuard 单实例到RAC搭建
背景简介: 本文为针对一次windows平台RAC数据库迁移至Linux平台RAC的笔记,基本步骤为: 1.搭建windows RAC到Linux 单实例数据库的DataGuard 2.做switch ...
- Android串口开发
参考资料: https://www.jianshu.com/p/9249ed03e745 GitHUb地址: https://github.com/AIlll/AndroidSerialPort An ...
- 西湖论剑2019-msc之奇怪的TTL
msc1给了一串很长的TTL字符,参考一些隐写的文章,猜测是在ttl中藏了信息,题目是这样的 我们截获了一些IP数据报,发现报文头中的TTL值特别可疑,怀疑是通信方嵌入了数据到TTL,我们将这些TTL ...
- cent os 7 与cent os 6 修改主机名称
centos6 需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.零时修改用hostname your-name cnet ...
- Jsp的基本知识
jsp页面的基本组成部分:指令,表达式,小脚本,声明,注释,静态内容. 指令元素有三种: 1.page:eg <%@ page 属性名="属性值" 属性名="属性值 ...
- 移动开发的捷径:3种方式轻松创建webapp
移动开发行业发展迅速,为迎合用户的需求,大多数传统互联网公司在主导web网站的同时还需兼顾移动开发方向.在已有PC端网站的基础上,考虑到人力.成本和技术.开发周期等因素,许多公司会选择开发快速.维护便 ...
- js创建对象,放进js集合
var list=[]; for (var i=0;i<nodes.length;i++){ if(nodes[i].type=='user'){ person=new Object(); pe ...
- Python--day09(内存管理、垃圾回收机制)
昨天内容回顾 1. 操作文件的三个步骤: 1. 打开文件:硬盘的空间被操作系统持有,文件对象被用用程序持续 2. 操作文件:读写操作 3. 释放文件:释放操作系统对硬盘空间的持有 2. 基础 ...