mysql数据同步到sql server

准备工作

  1. 下载安装sql server express 2019

  2. 现在安装SSMS(连接数据库GUI)

  3. 安装ssms for mysql

    需要注意的是在上面的步骤中首先需要根据指导安装mysql ODBC

  4. 设置express sa用户密码登录

sql 复制代码
	--change password for login user "sa"
	Security > Logins > sa (right-click) > Properties > General > Password and Confirm password
	
	--enable login for user "sa"
	Security > Logins > sa (right-click) > Properties > Status > Login, click in Enabled
	
	--ensure SQL Server authentication is enabled
	Right click on server > Properties > Security > Server authentication, click in SQL Server and Windows Authentication mode
  1. sql server新建一个与mysql数据库一样的库名称

评估

通过SSMA for MySQL,可评审数据库对象和数据,并评估数据库是否适合迁移。

  1. 打开 SSMA for MySQL。

  2. 在"文件"菜单中,选择"新建项目"。

  3. 输入项目名称、项目的保存位置和迁移目标。 然后,在"迁移到"选项中选择"SQL Server" 。

  4. 在"连接到 MySQL"对话框中,输入连接详细信息,然后连接到 MySQL 服务器。

  5. 在 MySQL 元数据资源管理器中右键单击 MySQL 数据库,然后选择"创建报表" 。 或者,可选择右上角的"创建报表"选项卡。查看 HTML 报表,了解转换统计信息以及任何错误或警告。 另外,还可以在 Excel 中打开报表以获取 MySQL 对象的清单,以及执行架构转换所需的工作量。

转换架构

转换数据库对象时,会从 MySQL 中获取对象定义,将这些定义转换为类似的 SQL Server 对象,然后将此信息加载到 SSMA for MySQL 元数据。 它不会将信息加载到 SQL Server 的实例中。 然后,可使用 SQL Server 元数据资源管理器查看对象及其属性。

在转换期间,SSMA for MySQL 会将输出消息打印到"输出"窗格,并将错误消息打印到"错误列表"窗格。 使用输出和错误信息来确定是否必须修改 MySQL 数据库或转换过程以获取所需的转换结果。

  1. 连接到sql server ellis数据库

  2. 在 MySQL 元数据资源管理器中右键单击 MySQL 数据库,然后选择"转换架构" 。 或者,可选择右上角的"转换架构"选项卡。

    需要注意的是我们需要更改Target.Schema 从ellis.ellis改成ellis.dbo

迁移

  1. 在 SQL Server 元数据资源管理器中右键单击数据库,然后选择"与数据库同步"来发布架构 。 此操作会将 MySQL 数据库发布到 SQL Server 实例。
  2. 在 MySQL 元数据资源管理器中右键单击要迁移的数据库或对象,然后选择"迁移数据"来迁移数据 。 或者,可选择"迁移数据"选项卡。若要迁移整个数据库的数据,请选中数据库名称旁边的复选框。 若要从单个表中迁移数据,请展开数据库、展开"表",然后选中表旁边的复选框。 若要忽略单个表中的数据,请清除对应的复选框。

    https://learn.microsoft.com/zh-cn/sql/sql-server/migrate/guides/mysql-to-sql-server?view=sql-server-ver16
相关推荐
苹果醋330 分钟前
SpringBoot快速入门
java·运维·spring boot·mysql·nginx
ROCKY_81734 分钟前
Mysql复习(一)
数据库·mysql
Smile丶凉轩1 小时前
MySQL库的操作
数据库·mysql·oracle
CodeChampion1 小时前
60.基于SSM的个人网站的设计与实现(项目 + 论文)
java·vue.js·mysql·spring·elementui·node.js·mybatis
我叫啥都行1 小时前
计算机基础复习12.22
java·jvm·redis·后端·mysql
明矾java2 小时前
Mysql-SQL执行流程解析
数据库·sql·mysql
wy02_3 小时前
MySQL-MVCC(多版本并发控制)
数据库·mysql
Future_yzx3 小时前
Mybatis中使用MySql触发器报错:You have an error in your SQL syntax; ‘DELIMITER $$
adb
中科院提名者5 小时前
Django连接mysql数据库报错ModuleNotFoundError: No module named ‘MySQLdb‘
数据库·mysql·django
Gauss松鼠会6 小时前
GaussDB数据库中SQL诊断解析之配置SQL限流
数据库·人工智能·sql·mysql·gaussdb