您当前的位置:首页 > 养生 > 内容

数据库数据迁移(数据库OPEN状态下迁移数据文件的几种方法)

本文目录

  • 数据库OPEN状态下迁移数据文件的几种方法
  • 数据库迁移是什么
  • 同平台的数据库迁移要注意哪些事项
  • 将数据库迁移到云数据库需要注意什么
  • 数据库数据如何跨服务器迁移
  • 如何迁移MySQL数据库
  • 如何迁移SQL Server系统数据库
  • 如何把sqlserver数据迁移到mysql数据库及需要注意事项

数据库OPEN状态下迁移数据文件的几种方法

据库迁移的几种方式:eED/0D 这也算是最常用最简单的方法了,一般是基于应用的owne级做导出导入。操作方法为:在新库建立好owner和表空间,停老库的应用,在老库做exp userpwd wner-XXX file-exp xxx.dmp log-exp xxx.log buffer-6000000传dmp文件到新库,在新库幢imp user/pw d fromuser-XXX touser-XXXX file-exp xxx.dmp log-imp xxxJog ignore-y.i优缺点:优点是可以跨平台使用;缺点是停机时间长,停机时间为从ep到网络传输到新库,再加上imp的时间。二、存储迁移:这种情况下,数据文件、控制文件、日志文件、spfile都在存储上《一般情况下是裸设备) ,我们可以直接把存储挂到新机器上,然后在新机器上启动数据库。操作方法:将老库的rfile (困为里面有指向裸设备的spfile链接) ,msram es.ora ,istener.ora,密码文件传到新库的对应位置。将存储切至新机,或者用文件拷贝或dd的方式复制数据文件,启动数据库。优缺点:优点是该迁移方式非常简单,主要的工作是主机工程师的工作, dba只需配合即可,停机时间为当库、切存储、起库的时间。缺点是要求新老库都是同一平台,是相同的数据库版本。三、利用data guard迁移:用dg我们不仅可以用来做客灾,物理的 我们还可以作为迁移的方式。操作方法:略。主意switch over之后,可以将dg拆掉,去掉1ogarchive_dest2 FAL_SER VER、FAL_CLENT、standby-file m anagement参数。另外还妻注意如果用man做g,注意手工添加tempfile o优缺点:优点是停机时间短,停机时间为switch over的时间。缺点:主机必须双份、存储必须双份。四、用rman做迁移:man比较适畲于跨文件系统的迁移,如同平台下的不同文件系统。我的手机 2018-09-29 20:53:00◆1.停第三方的归档备份,如legto或中.2.backup数据库:allocate channe t1 type disk;backup full format ’$DIR_ BAKUNDOTBSI_ 2_ %d 9%s_ %p.bak’ datafile 2;release channel t1;●3.备份控制文件alter database backup contolfile to /tmp/mydb. 并到新数据库用man恢复: restore controlfile from ’/archisd168 ctI;@restore备份文件:runallocate channel t1 type disk;restore datafile 2;releasechannel t1;5.传归档日志,并且对归档进行做recover: recover dabase until sequence 归档的序号thread用1;6.对数据库open resetlogs RLMLAN》sql ’alter database open resetogs;T alter tablespace temp add tempfile XXXXCN size XXM reuse;优缺点:优点是可以跨文件系统,停机时间少a缺点是要时刻关注这归档日志,做recover的时候一个都不能少。

数据库迁移是什么

数据库迁移就是把历史数据从A数据库迁到B数据库,可能A库是postgres或者mysql.B库是oracle或者DB2,所以这个过程还是蛮复杂的,具有挑战性,要对数据库的原理以及各自的特性了如指掌才可以入手迁移,会java这时候用不上的.

同平台的数据库迁移要注意哪些事项

1、为了使新服务器的配置和引入尽可能简单,整理您当前使用的服务器是必要的。因此,数据迁移是删除任何冗余或过期页面、备份、电子邮件和用户帐户的最佳时间。这意味着您将传输的数据量减少到最小,另一方面,您可以从目标系统上的所需资源中获得更大的价值。2、您应该为关闭活动服务器进程制定准确的计划,以便以后不会出现数据丢失导致的复杂情况。指定应停止对文件、脚本和配置所做的任何更改的时间,并尽可能临时阻止对数据库的访问。也可以稍后更新您的数据库。在大多数情况下,数据传输是通过完整的服务器备份进行的。

将数据库迁移到云数据库需要注意什么

需要注意的是:

1、想好迁移上云后想达到的效果

即通过使用云数据库希望达到的目的,比如降低成本,更高的灵活性,更大的可扩展性,还是更高的可靠性。用户需要根据迁移目的来选择合适的服务类型。如果只是简单的随大流将服务迁移到云上,很可能导致未来的问题。

2、选择有完善服务支持的云服务商

包括服务商的 SLA 承诺和数据安全承诺。很多情况下,将应用迁移到云数据库涉及数据迁移,应用适配等,云服务商有完善的支持服务,可以在遇到困难时起到事半功倍的效果。如果云服务商具备足够的经验,通常可以给出场景性的完整方案,对于提高迁移的成功率有直接的帮助。

3、充分的迁移规划

1)维护和数据管理计划。IT人员提前了解公司所需的数据需求,选择合适的数据库引擎类型、付费方式;熟悉云数据库引擎提供的管理工具,基于预期的云数据管理需求,做好主动解决问题的准备。

2)账户控制计划。云数据库服务商一般都会提供丰富的账户控制能力,包括授权和再授权、审计,基于预先确定的安全设置,授权访问设置,审计计划,然后会发现云数据库服务真的是一个非常高效简洁的工具。

3)迁移和回退计划。一般来说,一个完备的迁移计划和演练, 有助于在事先发现迁移过程中可能遇到的问题, 制定有针对性的计划;万一迁移失败,回退计划可以保证业务在本地继续执行,从而减少迁移过程的压力,并保证业务的完整性。

4、从容易的服务开始

云计算的环境和本地数据库存在一定的差异,考虑到业务的连续性,初次使用公有云数据库时,可以从简单的服务开始,如测试验证数据库、辅组性的资源索引数据库、新开发业务数据库等,通过这些服务先熟悉云数据库的基本特征和特性,评估其性能和可用性相关内容,管理工具的成熟度。比如,有些服务商的云数据库存在不同时段的性能波动,则可能不是好的选择。

数据库数据如何跨服务器迁移

  • 开始菜单---》程序,打开SQL Server Management Studio(即我们的SQL 2005)

    请点击输入图片描述

  • 连接服务器后,找到我们需要迁移的数据,右键点击属性.

    请点击输入图片描述

  • 在数据库属性里面,点击文件,可查看数据库文件和数据库日志文件的存放路径.

    请点击输入图片描述

  • 确定没有任何其它用户连接到此数据库后,点击该数据库--》任务--》分离

    请点击输入图片描述

  • 我们可以看到分离以后,刚刚那个数据库,已经不在此列表.

    请点击输入图片描述

  • 进入刚刚我们第3步属性里面看到的数据库文件路径.如下图把我们的ZNLCRM.mdf数据库文件和ZNLCRM_Log.Ldf数据库日志文件拷贝到另外一台服务器.

    请点击输入图片描述

  • 在另外台服务器上打开SQL数据库.与第1步一样.点击数据库---》附加.

    请点击输入图片描述

  • 在附加数据库里面,点击添加,如下图所示.

    请点击输入图片描述

  • 找到刚刚拷贝过来的ZNLCRM.mdf文件.选中该文件,依次点击确定.(注意日志文件会自动一起加载过来)

    请点击输入图片描述

  • 然后我们就可以看到,一个完整的数据库就直接被迁移过来.如下图

    请点击输入图片描述

如何迁移MySQL数据库

  • caching_sha2_password认证插件提供更多的密码加密方式,并且在加密方面具有更好的表现,目前MySQL 8.0选用caching_sha2_password作为默认的认证插件,MySQL 5.7的认证插件是MySQL_native_password。如果客户端版本过低,会造成无法识别MySQL 8.0的加密认证方式,最终导致连接问题。

  • MySQL存储引擎现在负责提供自己的分区处理程序,而MySQL服务器不再提供通用分区支持,InnoDB和NDB是唯一提供MySQL 8.0支持的本地分区处理程序的存储引擎。 如果分区表用的是别的存储引擎,存储引擎必须进行修改。要么将其转换为InnoDB或NDB,要么删除其分区。通过MySQLdump从5.7获取的备份文件,在导入到8.0环境前,需要确保创建分区表语句中指定的存储引擎必须支持分区,否则会报错。

  • MySQL 8.0的默认字符集utf8mb4,可能会导致之前数据的字符集跟新建对象的字符集不一致,为了避免新旧对象字符集不一致的情况,可以在配置文件将字符集和校验规则设置为旧版本的字符集和校验规则。

  • MySQL 8.0启动使用的lower_case_table_names值必须跟初始化时使用的一致。使用不同的设置重新启动服务器会引入与标识符的排序和比较方式不一致的问题。

  • 《 lower_case_table_names 》

如何迁移SQL Server系统数据库

迁移SQLServer系统数据库步骤:使用微软SQLServer管理工具移动数据库1、单击开始菜单,选择SQLServer管理工具,然后在快速查找栏输入SQLServer。2、打开SQLServer管理工具3、目的数据库选择将会出现恢复数据库窗口,在恢复到数据库框中输入我们想要恢复的数据库名称。4、源数据库选择来源数据库单选按钮选择你的备份文件存放的位置。5、选择备份文件要恢复的文件将会出现在已经选择的要恢复文件框中,选中多选按钮继续下一步操作。6、新路径现在处于恢复的关键时刻,你需要从选择页中选择选项,如上图所示。在这里要为你的数据库文件指定新的路径。这和后面将要介绍的移动选项类似,只要在数据库和日志文件后面键入一个新的路径即可。例如,当前的路径结构如下:C:ProgramFilesMicrosoft SQLServerMSSQL.1MSSQLDATADatabase_Name_Here.mdfC:ProgramFilesMicrosoft SQLServerMSSQL.1MSSQLDATADatabase_Name_Here_1.ldf7、移动到新路径我们希望将这些数据库文件移动到一个新路径,键入新路径就可以。本文我们移动到下面的路径:D:SQLDATADatabase_Name_Here.mdfD:SQLLogsDatabase_Name_Here_1.ldf8.成功恢复

如何把sqlserver数据迁移到mysql数据库及需要注意事项

以下有几款迁移工具的对比,可以参考,比较推荐DB2DB.

软件易用性主要是指软件在导入前的配置是否容易。由于很多软件设计是面向程序员而非一般的数据库管理人员、甚至是普通的应用程序实施人员,而这一类人员很多时候并没有数据源配置经验。因为一些使用 ODBC 或者 ADO 进行配置的程序往往会让这类用户造成困扰(主要是不知道应该选择什么类型的数据库驱动程序)。下面让我们看看四个工具的设计界面:

》》》》

1、SQLyog

SQLyog 使用的是古老的 ODBC 连接,但对于新一代的程序来说,这种方式的非常的不熟悉并且不容易使用,并且必须要求本机安装好相应的数据库的 ODBC 驱动程序(SQL Server 一般自带好)。

》》》》

2、Navicat Premium

NavicatPremium是四个应用工具中设计最不人性化的一个:从上图怎么也想像不到要点按那个小按钮来添加一个新的连接,并且这个连接设置不会保存,每次导入时都必须重新设置。NavicatPremium使用的是比 ODBC 稍先进的 ADO 设置方式(199X年代的产物),但使用上依然是针对老一代的程序员。

》》》》

3、Mss2sql

Mss2sql 是最容易在百度上搜索出来的工具,原因之一是它出现的时间较早。

Mss2sql由于是很有针对性的从 SQLServer 迁移到 MySQL,因为界面使用了操作向导设计,使用非常容易。同时在设置的过程中,有非常多的选项进行细节调整,可以感觉到软件经过了相当长一段时间的使用渐渐完善出来的。

》》》》

4、DB2DB

DB2DB 由于是由国人开发,因此无论是界面还是提示信息,都是全程汉字。另外,由于 DB2DB 在功能上很有针对性,因为界面设计一目了然和易使用。和 mss2sql 一样, DB2DB 提供了非常多的选项供用户进行选择和设置。

三、处理速度和内存占用评测

在本评测前,本人的一位资深同事曾经从网上下载了某款迁移软件,把一个大约2500万记录数的数据表转送到阿里云 MySQL,结果经过了三天三夜(好在其中两天是星期六和星期日两个休息日)都未能迁移过来。因此这一次需要对这四个工具的处理速度作一个详细的测试。

考虑到从 SQL Server 迁移到 MySQL 会出现两种不同的场景:

  • 从 SQL Server 迁移到本地 MySQL 进行代码测试和修改;

  • 从 SQL Server 迁移到云端 MySQL 数据库正式上线使用;

  • 以下为测试过程中的截图:

    》》》》

    1、SQLyog

    请点击输入图片描述

    》》》》

    2、Navicat Premium

    请点击输入图片描述

    请点击输入图片描述

    注意:我们在测试 Navicat Premium 迁移到  MySQL 时发现,对于 SQL Server 的 Money 类型支持不好(不排除还有其它的数据类型支持不好)。Money 类型字段默认的小数位长度为 255,使得无法创建数据表导致整个测试无法成功,需要我们逐张表进行表结构修改才能完成测试过程。

    Navicat Premium 的处理速度属于中等,不算快也不算慢,但 CPU 占用还有内存占用都处于高位水平。不过以现在的电脑硬件水平来说,还是可以接受。但 CPU 占用率太高,将使得数据在导入的过程中,服务器不能用于其它用途。

    》》》》

    3、Mss2sql

    Mss2sql 并没有提供计时器,因此我们使用人工计时的方法,整个过程处理完毕大于是 726 秒。Mss2sql 的 CPU 占用率相对其它工具来说较高,但仍属于可以接受的范围之内。

    》》》》

    4、DB2DB

    请点击输入图片描述

    DB2DB 同样迁移 300万数据时,仅仅使用了 2 分 44 秒,这个速度相当惊人。不过最后的结果出现一个 BUG,就是提示了转换成功,但后面的进度条却没有走完(在后面的数据完整性评测中,我们验证了数据其实是已经全部处理完毕了)。


声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,谢谢。

上一篇: 游戏源码出售(在猪八戒网找了家公司开发app,但是因为资金不够所以想不要源码,我想问不要源码有什么风险)

下一篇: 用织梦做的网站怎样看?如何用织梦创建一个网站



推荐阅读

网站内容来自网络,如有侵权请联系我们,立即删除! | 软文发布 | 粤ICP备2021106084号