MySQL数据库数据迁移到SQLserver

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,独享型 2核4GB
简介: 最近因工作需要,需要将mysql数据库迁移到sqlserver,仅仅是数据迁移,因此相对比较简单。

最近因工作需要,需要将mysql数据库迁移到sqlserver,仅仅是数据迁移,因此相对比较简单。对于mysql迁移到sqlserver,我们需要使用到mysql odbc驱动,然后透过sqlserver链接服务器的方式来访问mysql。具体见下文描述。

一、 迁移环境

源:RHEL 6.5 + MySQL 5.6.26
目标: Windows 7 64 + SQLserver 2014

二、准备迁移环境

1、下载及安装ODBC驱动

http://dev.mysql.com/downloads/connector/odbc/

本次安装下载的文件为:mysql-connector-odbc-5.2.7-winx64.msi 安装过程略

2、配置ODBC驱动

对于mysql的访问,我们需要配置ODBC驱动,来使得SQLserver能够识别。
打开控制面板,管理工具,数据源(ODBC),选择System DSN选项卡,单击添加,选择MySQL ODBC 5.2 Unicode
Driver,如下截图:

这里写图片描述

以下配置连接参数,指定数据源名称,IP地址及端口号,如下图:

这里写图片描述
添加完毕后单击确定(OK)。

3、添加链接服务器

使用下面的代码添加链接服务器,注意替换相应的字符。
USE master
GO
EXEC sp_addlinkedserver @server = 'MySQL', @srvproduct='MySQL', @provider = 'MSDASQL', @datasrc = 'MySQL_SRC'
GO
EXEC sp_addlinkedsrvlogin @rmtsrvname='MySQL',@useself='false',@locallogin='sa',@rmtuser='root',@rmtpassword='mysql'
GO

4、测试链接服务器

SELECT * FROM OPENQUERY (MySQL ,'select * from testdb.tt)
id  dt
1   2016-03-18 10:48:06.0000000
2   NULL
3   NULL

二、 实施数据迁移

USE master
GO 
CREATE DATABASE material  --创建目标数据库
GO
可以使用以下语句查询需要迁移的schema下的表
SELECT * FROM OPENQUERY (MySQL ,'select * from information_schema.TABLES where table_schema=''material''' )

将所有表内容插入到SQLserver,如下方式
SELECT * INTO material.dbo.ic_goods FROM OPENQUERY (MySQL ,'select * from material.ic_goods');
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
29天前
|
关系型数据库 MySQL 数据库
数据迁移脚本优化过程:从 MySQL 到 Django 模型表
在大规模的数据迁移过程中,性能问题往往是开发者面临的主要挑战之一。本文将分析一个数据迁移脚本的优化过程,展示如何从 MySQL 数据库迁移数据到 Django 模型表,并探讨优化前后的性能差异。
|
1月前
|
SQL IDE Java
Java连接SQL Server数据库的详细操作流程
Java连接SQL Server数据库的详细操作流程
|
5天前
|
关系型数据库 MySQL 测试技术
数据库升级是一个涉及数据备份、新版本安装、数据迁移和测试等关键环节的复杂过程
【7月更文挑战第21天】数据库升级是一个涉及数据备份、新版本安装、数据迁移和测试等关键环节的复杂过程
15 1
|
11天前
|
SQL Oracle 关系型数据库
MySQL、SQL Server和Oracle数据库安装部署教程
数据库的安装部署教程因不同的数据库管理系统(DBMS)而异,以下将以MySQL、SQL Server和Oracle为例,分别概述其安装部署的基本步骤。请注意,由于软件版本和操作系统的不同,具体步骤可能会有所变化。
42 3
|
16天前
|
SQL 存储 安全
数据库数据恢复—SQL Server数据库出现逻辑错误的数据恢复案例
SQL Server数据库数据恢复环境: 某品牌服务器存储中有两组raid5磁盘阵列。操作系统层面跑着SQL Server数据库,SQL Server数据库存放在D盘分区中。 SQL Server数据库故障: 存放SQL Server数据库的D盘分区容量不足,管理员在E盘中生成了一个.ndf的文件并且将数据库路径指向E盘继续使用。数据库继续运行一段时间后出现故障并报错,连接失效,SqlServer数据库无法附加查询。管理员多次尝试恢复数据库数据但是没有成功。
|
18天前
|
SQL 关系型数据库 MySQL
「Python入门」python操作MySQL和SqlServer
**摘要:** 了解如何使用Python的pymysql模块与MySQL数据库交互。首先,通过`pip install pymysql`安装模块。pymysql提供与MySQL的连接功能,例如创建数据库连接、执行SQL查询。在设置好MySQL环境后,使用`pymysql.connect()`建立连接,并通过游标执行SQL(如用户登录验证)。注意防止SQL注入,使用参数化查询。增删改操作需调用`conn.commit()`来保存更改。pymssql模块类似,但导入和连接对象创建略有不同。
23 0
「Python入门」python操作MySQL和SqlServer
|
22天前
|
SQL 存储 关系型数据库
关系型数据库SQL Server学习
【7月更文挑战第4天】
26 2
|
28天前
|
SQL 弹性计算 数据管理
数据管理DMS产品使用合集之sql server实例,已经创建了数据库,登录时提示实例已存在,该怎么处理
阿里云数据管理DMS提供了全面的数据管理、数据库运维、数据安全、数据迁移与同步等功能,助力企业高效、安全地进行数据库管理和运维工作。以下是DMS产品使用合集的详细介绍。
36 1
|
1月前
|
SQL 存储 关系型数据库
关系型数据库中的SQL Server
【6月更文挑战第11天】
61 3
|
1月前
|
SQL 存储 数据库
如何在SQLServer中创建数据库
在SQL Server中创建数据库,可通过SSMS的图形界面或T-SQL语句。在SSMS中,连接到服务器,右键“数据库”选择“新建数据库”,配置属性后点击确定。使用T-SQL,连接到服务器,编写CREATE DATABASE语句指定数据库名称、文件路径及大小信息,执行查询完成创建。确保有足够磁盘空间,并注意权限设置。