介绍
对于数据库管理员和开发人员来说,由于技术或经济原因,需要将数据库从一种类型迁移到另一种类型。在本文中,我们将介绍将 Microsoft SQL Server (MSSQL) 数据库迁移到 MySQL 数据库的简单方法。
我们使用的简单工具是 MySQL Workbench 数据库迁移向导,因为它提供了对源和目标数据库进行检查,并允许在一个基于图形的用户界面下配置数据迁移的能力。此外,MySQL Workbench 迁移向导还可以让您测试该迁移过程并检查最终结果。但是,您需要确认适当的权限和网络连接来使它成功。
检测准备
在迁移数据之前,需要检查 MSSQL 数据库是否具有适当的权限和网络连接以及 MySQL 数据库中是否具有相应的迁移插件。
检查 MSSQL 数据库准备
在 MSSQL 数据库上的用户需要具有对数据库服务器链接和 master 数据库访问的权限。您还需要检查 SQL Server 是否配置为向外部开放端口或是否在防火墙上允许了端口。默认情况下,MSSQL 使用的端口是 1433。
检查 MySQL 数据库准备
在 MySQL 数据库上的用户需要具备如下权限:
对 MySQL 下的 data 文件夹的读写权限。
远程访问管理权限。
plink 程序要获得 MySQL 的远程访问授权并正确安装在 MySQL Server 的本地计算机上。
执行迁移过程
在这一部分,我们将使用 MySQL Workbench 数据库迁移向导将 MSSQL 数据库转换为 MySQL 数据库。
指定源服务器
连接 MySQL Server 并启动 MySQL Workbench。然后,转到工作区左侧的菜单并选择:Database Migration Wizard。
在 Database Migration - Step 1 of 6 窗口中,选择 Microsoft SQL Server 作为源数据库。然后在下一个输入框中,输入源服务器的 IP 地址或名称以及端口,以便连接到 MSSQL 数据库。最后,输入管理员用户名和密码以连接到 MSSQL 服务器。
Select Microsoft SQL Server
Input source server name or IP address: xx.xx.xx.xx:1433
Administrator username: xxxx
Password: xxxx
选择要迁移的数据库对象
在 Database Migration - Step 2 of 6 窗口中,您需要选择要迁移的数据库对象。您可以选择全部或者选择表、过程或者视图进行选择。在此之后,可以在下拉菜单中选择 MSQL 数据库对象的详细分类,如表、视图和存储过程等。
请选择您需要迁移的对象,并检查列名称和数据类型是否准确无误。您还可以在此窗口中选择表之间的数据映射规则、数据类型映射规则和执行迁移的批次大小。
指定目标服务器
在 Database Migration - Step 3 of 6 窗口中,您需要指定将要迁移到的目标数据库服务器。在服务器地址和端口输入框中,输入您的 MySQL 服务器地址和端口号。您需要输入管理员的 MySQL 用户名和密码进行身份验证。请注意,如果您的管理员用户名和密码与 MSSQL 的用户名和密码不同,则需要输入相应的名称和密码。
Input Target Database Information
Target System: MySQL
Hostname: xx.xx.xx.xx:3306
Username: root
Password: xxxx
指定数据库名
在 Database Migration - Step 4 of 6 窗口中,您需要指定要将源数据库迁移到的 MySQL 数据库名称。在此窗口中,您可以选择新增一个数据库或选择现有数据库。还可以更改表名和列名的名称,以使其适应您的 MySQL 数据库结构。
测试连接和迁移
在 Database Migration - Step 5 of 6 窗口中,您需要确认您的迁移设置。在此之后,您可以在源和目标对象之间进行数据映射,并且可以测试您的迁移设置。检查所有的权限和映射设置是否正确。
完成所有设置后,您可以单击 Start Migration 按钮来执行迁移任务。
总结
如今,将数据从一种类型的数据库转移到另一种类型的数据库已成为常态。处理这种数据库类型转换的困难使得这种过程看起来很难,但是使用 MySQL Workbench 数据库迁移向导可以简化这种转换,使这个过程看起来很容易。不管使用什么工具和技术,客户都需要坚守最佳实践,以确保最终的迁移是准确、有序的。