MySQL 数据库跨操作系统的最快迁移方法
数据库文件很大,约有70G,
如果普通的迁移,需要在原始数据库导出数据,然后在新数据库导入数据
经仔细考虑,是否MySQL的数据库文件存储格式在不同的操作系统相同呢?
测试过程如下:
在64位SUN机器上安装64位版的MySQL
停止MySQL服务
复制Windows上的32位MySQL的数据文件(全部,除了system和日志等)到64位机器上,
修改相应的文件和目录权限,
文件为 chmod 660
目录为 chmod 700
然后重启MySQL服务,运行正常。
总结:
别以为这个看上去很简单,许多人会错误的认为,不同的操作系统,其存储并不是通用的,而这个例子证明,相同数据库数据的存储结构是没有区别的,完全可以直接拿来使用。
附上中间遇到的一个小异常,那就是数据库的数据目录,必须有可执行的权限,也就是7的权限,6的不可以。
我的测试过程
相关推荐
-
mysql 备份与迁移 数据同步方法
不过最近发现这个可视化操作有点点问题,就是当数据条数超过一定数目EMS SQL Manager就挂了,也不知道是否是软件问题--当然该开始我是将大的数据库文件分拆成小份小份的,多次导入. 刚才发现同事用了mysql 自带的mysqldump 工具就不存在这个问题. (羞愧,不过我平时极少接触数据库) 这里记录下操作方式: 1. 进入bin目录,执行命令: mysqldump -hlocalhost -uroot -padmin local_db > a.sql 2. 这时发现在bin目录生成了
-
简述MySQL分片中快速数据迁移
推荐阅读:MySQL 数据库跨操作系统的最快迁移方法 mysql 备份与迁移 数据同步方法 操作实践背景: travelrecord表定义为10个分片,尝试将10个分片中的2个分片转移到第二台MySQL上,并完成记录, 要求最快的数据迁移做法,中断业务时间最短 思路一利用mysqldump: 在这里我们只针对mysql innodb engine,而且配置bin-log的数据库进行分析.因为是将10个分片中的两个分片进行迁移,其实就是数据库的迁移过程,就是将10个数据库中的两个数据迁移到另外一台
-
如何把sqlserver数据迁移到mysql数据库及需要注意事项
在项目开发中,有时由于项目开始时候使用的数据库是SQL Server,后来把存储的数据库调整为MySQL,所以需要把SQL Server的数据迁移到MySQL.下面是小编日常整理的一种sqlserver数据库迁移的方法. 一.SQL Server中常用数据类型与MySQL不同的地方 二.将SQL Server数据迁移到MySQL需要注意的一些问题 1.唯一索引的不同,sql server的唯一索引的字段只能允许存在一个null值,而mysql,一直oracle中唯一索引对应的字段都允许存在多个n
-
关于MySQL数据迁移--data目录直接替换注意事项的详解
近日更换服务器,要做数据库迁移,将数据库内的数据从服务器A迁移到服务器B.由于数据量较大,直接做dump耗时太长,故而采用如下方式处理:首先,在服务器B上安装了与服务器A同版本的MySQL,停止MySQL服务,将安装后的data目录删除:然后,服务器A锁住全部表,从服务器A将整个data目录和数据文件直到拷贝到服务器B上,修改服务器B上MySQL的my.cnf文件中的datadir指向新的data目录.最后,启动服务器B上的MySQL服务.结果启动失败,报出 "无法启动MySQL服务"
-
从MySQL到Redis的简单数据库迁移方法
从mysql搬一个大表到redis中,你会发现在提取.转换或是载入一行数据时,速度慢的让你难以忍受.这里我就要告诉一个让你解脱的小技巧.使用"管道输出"的方式把mysql命令行产生的内容直接传递给redis-cli,以绕过"中间件"的方式使两者在进行数据操作时达到最佳速度. 一个约八百万行数据的mysql表,原本导入到redis中需要90分钟,使用这个方法后,只需要两分钟.不管你信不信,反正我是信了. Mysql到Redis的数据协议 redis-cli命令行工具有
-
MySQL下海量数据的迁移步骤分享
公司数据中心计划将海量数据做一次迁移,同时增加某时间字段(原来是datatime类型,现在增加一个date类型),单表数据量达到6亿多条记录,数据是基于时间(月)做的partition由于比较忙,一直没有总结,所以很细节的地方都记不清楚了,此处只是简单总结下当时的情形,备忘 乱打乱撞 最初接到任务,没有明确的入手点,直接就是select * from db limit 10000,动态修改翻页数量,通过控制台看耗时情况,慢 复制代码 代码如下: SELECT IR_SID,IR_HKEY,IR_
-
Python中MySQL数据迁移到MongoDB脚本的方法
MongoDB简介 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. MongoDB是一个文档数据库,在存储小文件方面存在天然优势.随着业务求的变化,需要将线上MySQL数据库中的行记录,导入到MongoDB中文档记录. 一.场景:线上MySQL数据库某表迁移到MongoDB,字段无变化. 二.Python
-
一句命令完成MySQL的数据迁移(轻量级数据)
用管道符将mysqldump的输出流和mysql的输入流串接在一起,管道符真是一个伟大的发明. 复制代码 代码如下: mysqldump -uXXX -pYYY -h192.168.4.98 -P3306 DBNAME --skip-lock-tables | mysql -uroot -h127.0.0.1 DBNAME 首先要保证本地可以连接服务器上的3306端口,如果win2003系统相同直接复制数据库文件夹即可.
-
mysql数据迁移到Oracle的正确方法
在mysql数据库里有一个表student,它的结构如下: 在Oracle数据库里有一个表from_mysql,它的结构如下: 现在要把数据从mysql的student转移到Oracle的from_mysql中去,这里笔者借助kettle的spoon工具,可以快速的实现这个功能. 首先,打开spoon,新建一个转换,命名为表输入到表输出.然后在核心对象中的输入那里找到表输入,拖到编辑界面中,再从输出那里找到输出拖到编辑界面中,连接表输入和表输出,如图所示: 右击表输入,选择编辑步骤,弹出如下窗口
-
mysql中用于数据迁移存储过程分享
复制代码 代码如下: DELIMITER $$ USE `servant_591up`$$ DROP PROCEDURE IF EXISTS `sp_move_data`$$ CREATE PROCEDURE `sp_move_data`() BEGIN DECLARE v_exit INT DEFAULT 0; DECLARE v_spid BIGINT; DECLARE v_id BIGINT; DECLARE i INT DEFAULT 0; DECLARE c_table INT; DE
随机推荐
- 一些很有用的SQLite命令总结
- IOS开发实现录音功能
- PHP实现发送邮件的方法(基于简单邮件发送类)
- jQuery数组处理方法汇总
- SpringBoot使用自定义注解实现权限拦截的示例
- JS控制表单提交的方法
- ES6新特性八:async函数用法实例详解
- Asp.Mvc 2.0用户服务器验证实例讲解(4)
- PHP获取url的函数代码
- thinkPHP5.0框架应用请求生命周期分析
- node.js 中间件express-session使用详解
- python 禁止函数修改列表的实现方法
- ASP 支持中文的len(),left(),right()的函数代码
- 用Jquery实现多级下拉框无刷新的联动
- Java中对HashMap的深度分析
- 函数式 JavaScript(一)简介
- xmlplus组件设计系列之下拉刷新(PullRefresh)(6)
- 浅谈Java编程中的synthetic关键字
- Win XP操作系统支持工具全接触
- 一些windows使用的精彩技巧