文件转换

如何迁移MySQL数据库到任何地方的SQL

简介:本指南通过使用SQL Anywhere“迁移数据库向导”,解释了“如何手动迁移MySQL数据库到SQL Anywhere”的分步说明。它还讨论了与迁移数据库向导相关的限制,以及如何通过使用专门的数据库转换工具(如Stellar converter for Database)来克服它。

免费下载

介绍

将MySQL(源)数据库迁移到SQL Anywhere(目标)数据库涉及几个阶段。本文演示了将模式和数据从MySQL示例数据库“sakila”转换到SQL Anywhere数据库的过程。

要迁移数据库模式和数据,可以使用迁移数据库向导'包含在SQL Anywhere中。但是,请记住,在使用向导时需要耐心,因为它使迁移成为一个乏味且耗时的过程。此外,向导不支持迁移视图、存储过程、触发器和用户定义函数。您需要通过修改T-SQL代码来手动迁移这些数据库对象。此外,您需要在系统上安装Migrate Database Wizard,并建立到源(MySQL)数据库的连接,以执行迁移。

为了简化迁移过程,可以使用专门的数据库转换器将数据库表及其记录从MySQL轻松快速地转换为SQL Anywhere。

MySQL和SQL的区别是什么?

在继续迁移之前,让我们基于一些重要特性比较一下MySQL和SQL Anywhere数据库。

注意:对MySQL和SQL Anywhere的比较不感兴趣?直接跳到下一个部分。

特性 MySQL SQL在任何地方
概述 MySQL是Oracle拥有的一个开源关系数据库管理系统(RDBMS)。 SQL Anywhere(主要称为Sybase SQL Anywhere)是SAP专有的关系数据库管理系统(RDBMS)。
使用 该应用程序用于数据仓库、电子商务和其他应用程序。 该应用程序用于物联网和数据密集型应用。
安装和设置 安装和设置MySQL数据库需要花费一些时间。 安装、设置和管理SQL Anywhere数据库所需的工作量更少。
MSupport 自从Oracle接管了MySQL的开发以来,该公司一直没有发布错误纠正和检测的代码。 SAP的支持团队以提供良好的支持而闻名。
部署 与SQL Anywhere相比,在数据部署方面是否需要更多的时间 执行(小型和大型)查询所需的时间更少,从而确保更快地部署数据。
接口 友好的用户界面 不是很友好。

你需要知道的事情

在开始迁移过程之前,您需要了解以下几个概念:

综合(后端)数据库

后端数据库(在本例中为MySQL)保存需要迁移到SQL Anywhere数据库的系统表和过程。

Sybase中央

它是一个简单易用的数据库管理工具,可以帮助处理Windows系统上的数据库对象。它允许您创建SQL Anywhere数据库对象,包括表、视图、索引等。

数据类型

有一些MySQL数据类型与SQL Anywhere数据类型不完全匹配。例如,SQL Anywhere不支持MySQL YEAR数据类型。因此,YEAR数据类型需要映射到INTEGER。

下表列出了一些需要映射到SQL Anywhere的主要MySQL数据类型:

注意:有关需要在SQL Anywhere中映射的数据类型的详细列表,请参阅此链接。

MySQL SQL在任何地方 映射的笔记
文本(n < = 32767) VARCHAR (n)。 -
文本(n > 32767) 文本 -
非常小的整数无符号 非常小的整数 TINYINT在SQL Anywhere中是无符号的。
保龄球
量变 文本 -
整数 整数 -
时间 时间 MySQL中的TIME数据类型不支持小数秒。MySQL TIME数据类型的范围从'-838:59:59'到'838:59:59'。在SQL Anywhere中,TIME数据类型的范围是'00:00:00.000000'到'23:59:59:999999'。
年[(2 | 4)] 整数 SQL Anywhere不支持MySQL的YEAR数据类型,需要映射为INTEGER。INTEGER取值范围为1000 ~ 9999。
小数 小数 -

开始

确保您的系统满足这些先决条件:

•MySQL数据库必须安装在您的机器上

•安装SQL Anywhere数据库的系统必须安装MySQL ODBC驱动3.51及以上版本。

•ODBC数据源管理员

•SQL Anywhere 16

•Sakila样本数据库版本0.8

从MySQL迁移到SQL Anywhere

迁移包括以下阶段:

阶段1 -创建一个新的SQL Anywhere数据库

您将需要创建一个新的SQL Anywhere数据库,希望将源数据库迁移到该数据库。下面的步骤解释了使用Sybase Central创建新数据库的过程:

步骤1:发射Sybase中央(开始>程序> SQL Anywhere 16 >管理工具> Sybase Central)。如果提示对话框和/或欢迎对话框出现,关闭它们。

步骤2:工具菜单,扩大SQL Anywhere 16,右键单击SQL Anywhere数据库,然后单击创建数据库。

步骤3:创建数据库向导,选择“”在这台计算机上创建数据库,然后单击“下一步”。

步骤4:用名称保存数据库文件sakila.db。

注意:一旦创建了新数据库,就可以更改数据库的默认设置(如页面大小、加密等)。

步骤5:点击完成完成数据库创建过程。

创建数据库后,关闭创建数据库向导。

阶段2 -为MySQL数据库创建ODBC数据源

要继续迁移,您需要设置到源数据库的ODBC连接。要做到这一点,请遵循以下步骤:

步骤1:打开Sybase Central,单击工具> SQL Anywhere 16 >管理工具> ODBC数据源管理器。

步骤2:在弹出的窗口中单击添加

步骤3:从驱动程序列表中选择MySQL ODBC 3.51驱动程序然后点击完成

注意:下载并安装MySQL ODBC驱动程序(如果您还没有下载驱动程序)。

步骤4:打开MySQL连接器/ODBC数据源配置窗口。中填写所需的详细信息连接参数节以连接到数据库。

步骤5:点击好吧退出“MySQL Connector/ODBC”窗口。再次,点击好吧退出ODBC管理员。

阶段3 -将模式和数据从MySQL迁移到SQL Anywhere

一旦SQL Anywhere Server数据库开始运行,并且可以通过ODBC与MySQL数据库通信,下一步需要将源数据库模式和数据移动到目标(SQL Anywhere)数据库。

SQL Anywhere有一个内置的迁移数据库向导可用于将MySQL数据库模式及其数据迁移到新创建的SQL Anywhere数据库。这个向导帮助创建表、索引和其他数据库对象,以便将源数据库(MySQL)模式与目标数据库模式相匹配。然后将所有表数据从源数据库复制到目标数据库。

注意:除了“迁移数据库向导”之外,您还可以使用sa_migrate系统过程将所有表从MySQL数据库迁移到SQL Anywhere数据库。

使用“迁移数据库向导”的步骤如下:

步骤1:在Sybase Central中,单击工具> SQL Anywhere 16 >迁移数据库.这将启动迁移数据库向导。

步骤2:在向导中,选择sakila’数据库,然后单击下一个

步骤3:输入的sakila’作为要从中迁移的远程数据库的名称,然后单击立即创建远程服务器。

注意:MySQL 'sakila' database包含需要迁移到目标数据库的所有数据库对象。

步骤4:出现提示时,输入'SakilaMySQLRemoteServer’作为远程服务器名称,单击下一个

步骤5:选择服务器类型界面,选择。MySQL从远程服务器类型列表中,按下一个按钮。

步骤6:提供连接详细信息屏幕上,选择开放数据库连接(ODBC);并在连接信息文本框中输入MySQL数据库的ODBC数据源的名称(即之前创建的MySQL ODBC源数据)。点击下一个

第七步:避免将服务器设置为只读,然后单击下一个

步骤8:将SQL Anywhere数据库连接为DBA.由于远程服务器(MySQL)不知道这个用户,您应该创建一个外部登录,将SQL Anywhere DBA映射到MySQL用户。接下来,检查'为当前用户创建外部登录’复选框,并输入正确的凭据,登录MySQL数据库服务器。点击下一个

步骤9:摘要页面将显示目标数据库为创建远程服务器(MySQL)而执行的SQL语句。点击完成用于创建远程服务器。

第十步:您将回到迁移数据库向导。在向导中,选择新创建的SakilaMySQLRemoteServer,然后点击下一个

步骤11:在“选择表”屏幕中,从“sakila要移动的左侧列表框中的'数据库'。选中表后,单击Add All,然后下一个

步骤12:您可以将表添加到用户'DBA”;但是,让我们创建一个可以访问的新用户Sakila数据库对象。为此,单击Cre现在就吃新用户

步骤13:出现“创建用户向导”窗口。类型的sakila’作为新用户名,然后单击“下一步”。

步骤14:为新创建的用户分配密码,单击下一个

步骤十五:将出现一个窗口,要求更改新用户的默认设置。您可以跳过此步骤,单击完成

步骤16:将出现“迁移数据库向导”窗口。选择新创建的用户'sakila’,然后点击下一个

步骤17:在“指定迁移选项”屏幕中,保留选中的所有选项,然后单击下一个

步骤18:Summary屏幕显示将由Migrate Database Wizard执行的SQL语句,用于迁移数据库模式和数据。

步骤19:单击Finish启动迁移过程。

迁移数据库向导将从MySQL数据库中迁移模式和数据。Sakila数据库到SQL的任何地方Sakila的数据库。

迁移的下一个阶段需要验证迁移的数据库模式和数据。检查完数据后,可以继续将视图、存储过程和其他MySQL数据库对象迁移到SQL Anywhere数据库。

迁移数据库向导的限制

SQL Anywhere迁移向导具有如下所列的某些限制:

•将模式和数据从MySQL数据库转换到SQL Anywhere数据库是一个漫长而耗时的过程。

•需要技术专长。

•计算机上需要同时安装源数据库和目标数据库。

•仅将源数据库文件移动到活动数据库。

如何克服这些限制?

恒星数据库转换器可以帮助您克服迁移数据库向导相关的限制。方法如下:

•通过几个简单的步骤将数据从MySQL转换为SQL Anywhere数据库。

•软件用户界面(UI)可以轻松操作,无需技术支持。

•只需要安装目标数据库服务器。

•允许保存转换的文件,以生活或离线数据库。

使用软件进行转换的步骤如下:

注意:在开始转换过程之前,请确保您的系统满足以下先决条件:

SQL Anywhere(目标)数据库必须安装在您的机器上。

应该在SQL Anywhere应用程序中创建一个新的数据库文件。

存储数据库的驱动器必须具有与所选数据库大小相等的可用空间。

步骤1:下载、安装和启动恒星数据库转换器软件

步骤2:选择数据库对话框中,选择MySQL作为源数据库类型。

步骤3:要选择要转换的数据库文件,请单击“数据库路径”下的“浏览”,然后单击“扫描”。

注意:如果您找不到数据库文件,请单击“搜索”以在系统硬盘驱动器或文件夹中找到数据库文件。

步骤4:当“扫描完成的对话框,单击好吧.显示可转换为SQL Anywhere的MySQL数据库对象预览。

注意:预览过程所花费的时间取决于表中记录的数量。您可以通过单击“文件”菜单上的“停止”跳过该过程。

步骤5:要继续转换,请单击转换文件菜单。

步骤6:在转换和保存数据库对话框中,执行以下操作:

1.选择SQL Anywhere选择数据库类型

3.步骤9下一步,从下拉列表中选择以下Actions之一:

•要将转换后的文件保存到离线数据库,请选择“连接到脱机空数据库”。

•要将文件保存到实时数据库,请选择“连接到正在运行的数据库',并指定服务器名称。

4.点击保存

选择的MySQL数据库文件将被转换为SQL Anywhere数据库文件格式。

注意:恒星数欧宝娱乐app下载地址据库转换器软件只转换表和表数据。然而,软件试图执行数据库对象(如视图、过程、触发器、索引、约束、函数等)查询。如果查询执行失败,软件会在源路径中生成失败查询的“。txt”文件。

结论

本文演示了将MySQL(源)数据库迁移到SQL Anywhere(目标)数据库的主要阶段。最重要的是,它介绍了如何使用“Migrate Database Wizard”将数据从源数据库平滑地转移到目标数据库。但是,迁移向导有一些缺点。将MySQL数据库模式和数据转换为SQL Anywhere的步骤很复杂,需要专业技术知识。如果您是初学者,正在寻找一种快速执行MySQL到SQL Anywhere转换的方法,请使用恒星数据库转换器软件

常见问题解答

.使用迁移数据库向导可以迁移什么?

回答.向导帮助将表及其记录从MySQL数据库迁移到SQL Anywhere数据库。

.如何将数据库对象(如存储过程、触发器、函数、视图等)从MySQL迁移到SQL Anywhere?

回答.要将视图、触发器和其他数据库对象从MySQL数据库迁移到SQL Anywhere,您需要在T-SQL代码中进行修改。

.恒星转换器的数据库软件需要互联网连接的转换过程?

回答.不,该软件不需要互联网连接来执行转换。

进步
76% 很多人觉得这篇文章很有帮助

  • 我们符合iso 27001标准
  • 我们符合iso 9001标准
  • NIST
  • HIPAA验证