mysql迁移:ibd表空间迁移库表
问题描述:将一个库中的表迁移到另一个数据库或实例下,利用ibd文件物理迁移,可适用情况为数据库起不来,强制迁移数据文件恢复
将数据库中的zabbix数据迁移到另一个库中
frm:存储表的列信息
ibd:表的数据行和索引
myd 表数据文件
myi 表索引文件
1.备份出来表结构,如果有历史库的情况可备份
mysqldump -uroot -p -S /data/3307/mysql.sock -B zabbix --no-data > /data/zabbix_20210128.sql
2.传到测试库上进行恢复
mysql> source /data/zabbix_20210128.sql ERROR 1813 (HY000): Tablespace '`zabbix`.`Student`' exists.
ERROR 1813 (HY000): Tablespace '`zabbix`.`Teacher`' exists.
ERROR 1813 (HY000): Tablespace '`zabbix`.`course`' exists.
...
错误原因:
应该在把表结构回复完成后,再把源库的,ibd文件传过来,要不然直接恢复有冲突
3.表结构恢复完成
mysql> show tables;
+------------------+
| Tables_in_zabbix |
+------------------+
| Student |
| Teacher |
| city |
| course |
| department |
| stu |
| zabbix_table |
+------------------+
7 rows in set (0.00 sec)
4.删除恢复库的表空间
mysql> alter table Student discard tablespace;
table discard tablespace;Query OK, 0 rows affected (0.00 sec) mysql> alter table Teacher discard tablespace;
Query OK, 0 rows affected (0.01 sec) mysql> alter table city discard tablespace;
ERROR 1031 (HY000): Table storage engine for 'city' doesn't have this option
mysql> alter table course discard tablespace;
Query OK, 0 rows affected (0.00 sec) mysql> alter table department discard tablespace;
ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails ()
mysql> alter table stu discard tablespace;
Query OK, 0 rows affected (0.00 sec) mysql> alter table zabbix_table discard tablespace;
Query OK, 0 rows affected (0.00 sec)
外键冲突
set foreign_key_checks=0 跳过外键检查。
5.重新删除表空间
mysql> alter table Student discard tablespace;
table discard tablespace;Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> alter table Teacher discard tablespace;
Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> alter table city discard tablespace;
ERROR 1031 (HY000): Table storage engine for 'city' doesn't have this option
mysql> alter table course discard tablespace;
Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> alter table department discard tablespace;
Query OK, 0 rows affected (0.01 sec) mysql> alter table stu discard tablespace;
Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> alter table zabbix_table discard tablespace;
Query OK, 0 rows affected, 1 warning (0.01 sec)
有一个存储引擎为MyIsam的表不支持这样恢复
6.导入表空间
mysql> alter table Student import tablespace;
mport tablespace;Query OK, 0 rows affected, 1 warning (0.01 sec) mysql> alter table Teacher import tablespace;
Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> alter table city import tablespace;
ERROR 1031 (HY000): Table storage engine for 'city' doesn't have this option
mysql> alter table course import tablespace;
Query OK, 0 rows affected, 1 warning (0.02 sec) mysql> alter table department import tablespace;
Query OK, 0 rows affected, 1 warning (0.01 sec) mysql> alter table stu import tablespace;
Query OK, 0 rows affected, 1 warning (0.01 sec) mysql> alter table zabbix_table import tablespace;
Query OK, 0 rows affected, 1 warning (0.01 sec)
7.验证导入数据情况
默认存储引擎是Innodb的数据都没有问题,但是之前更改成MyIsam的导入不成功
8.恢复MyIsam存储引擎的表
MyIsam的存储方式:
Innodb的存储方式:
将源库的city表文件传输到恢复库指定位置
[mysql@mysql-test /data/3307/data/zabbix ]$ cp city.frm city.MYD city.MYI /data/3308/data/zabbix/
9.查询验证数据库数据
以MyIsam存储引擎的表可以直接物理迁移
mysql迁移:ibd表空间迁移库表的更多相关文章
- 使用MySQL传输表空间迁移数据
对于大表的迁移,如果使用mysqldump进行导出,然后重新导入到其它环境,速度是非常缓慢的.如果使用传输表空间,则可以解决这个问题. 测试使用传输表空间迁移表,基础环境如下: 源库 目标库 IP ...
- mysql 案例 ~ 表空间迁移数据与数据导入
一 简介:mysql5.6+的表空间传输二 目的:复制数据到另一个表三 步骤 1 create table b like a ->创建一个空表 2 alter table b disc ...
- mysql5.6之 传输表空间迁移表或恢复误删除的表
一,简单说明: 1),传输表空间的限制: 1,mysql 版本 5.6.6 及其以上,并且版本建议源和目标版本建议都是GA版并且大版本一样 2,表引擎为innodb并且开启独立表空间 innod ...
- Oracle 表空间迁移
迁移表空间databump 使用databump导入导出,两个库用户必须一致,否则另一个库导入的时候会报错.所以两个库都是用helei用户. 给两个数据库的用户分别授予dba权限,这里只是实验更清晰而 ...
- 【oracle11g,18】存储结构:暂时表,手工条带化,表/索引迁移表空间,删除表,外部表
一. 暂时表 暂时表放在暂时表空间,不生成redo,仅仅有undo. 在暂时表中能够创建索引.视图及触发器,还能够使用"Export and Import(导出和导入)"或&quo ...
- 如何通过RMAN使用传输表空间迁移到不同的Endian平台 (Doc ID 371556.1)
How to Migrate to different Endian Platform Using Transportable Tablespaces With RMAN (Doc ID 371556 ...
- mysql InnoDB引擎 共享表空间和独立表空间(转载)
PS:innodb这种引擎,与MYISAM引擎的区别很大.特别是它的数据存储格式等.对于innodb的数据结构,首先要解决两个概念性的问题: 共享表空间以及独占表空间. 1.什么是共享表空间和独占表空 ...
- [Mysql]Innodb 独立表空间和共享表空间
innodb有2中表空间方式: 共享表空间 和 独立表空间 查询数据的设置: show variables like '%per_table'; 默认是共享表空间,独立表空间在配置文件中添加 inno ...
- MySQL如何判别InnoDB表是独立表空间还是共享表空间
InnoDB采用按表空间(tablespace)的方式进行存储数据, 默认配置情况下会有一个初始大小为10MB, 名字为ibdata1的文件, 该文件就是默认的表空间文件(tablespce file ...
- mysql共享表空间和独立表空间
innodb这种引擎,与MYISAM引擎的区别很大.特别是它的数据存储格式等. 对于innodb的数据结构,首先要解决两个概念性的问题: 共享表空间以及独占表空间. 什么是共享表空间和独占表空间 共享 ...
随机推荐
- Verilog 变量中位的数值类型
Verilog 变量中位的数值类型 Verilog变量中每个位(bit)的数值类型有四种,分别为1,0,Z,X.其中1,0比较明确就是高.低电平.而x, z在逻辑设计中也经常用到来建模.X,Z既可以大 ...
- 正向代理和反向代理和spring的动态代理模式有几种?默认是那种?如何切换?
spring的动态代理模式有几种?默认是那种?如何切换? spring的动态的代理模式有两种 JDK动态代理,基于接口(默认代理模式),CGLIB动态代理(若要使用需要进行配置) JDK动态代理是由j ...
- 2020.6.6OO学期末总结
0.前言 本次博客是对整个java及oo学习情况的一个概略性总结,目的在于反思这半年来的学习情况和实际感受,和具体学习方面的理解和问题. 1.作业过程总结 看着自己一个学期做的所有作业,我想起的是总是 ...
- Java基础学习——Scanner
import java.util.Scanner; public class HelloWord{ public static void main(String[] args){ Scanner s= ...
- 记我的第一个UVM项目
没有天天写博客的习惯,后果就是老是忘记自己的排版风格.为了追求统一还要翻一下之前是怎么写的.这也算是意料之外的发现吧. 说实话,没人教的话从零开始学一个新的东西实在是太难了.即使互联网的存在已经大幅降 ...
- 线程Thread小记
1 public class ConcurentDemo extends Thread { 2 @Override 3 public void run() { 4 super.run(); 5 Sys ...
- GPU Skinning
这个工具的作用是同一种角色在同屏里面出现一大堆时,可以大幅度的降低DrawCall.我试了一下,感觉挺有意思的,各位可以试试.它的原理实际上是把骨骼矩阵存在配置文件里面,然后通过特殊的shader,计 ...
- web目录扫描工具
在对Web网站进行审计时,首先我们会对进场出现的/admin和robots.txt等信息和目录进行初步的审计获取重要的信息,但是手动猜测目录过于缓慢,使用工具能够迅速的爆破出目录 目录爆破取决于字典的 ...
- 谈谈Selenium中的日志
谈谈Selenium中的日志 来源于一位同学,"老师为啥firefox执行后会有日志文件,chrome没有呢?" 比对 你打开chrome浏览器 from selenium imp ...
- 组合计数中的q-模拟 q analog
拒绝更新,深度和广度上建议看这个pdf URL里面用到的一些query-string过期了,,, 论文题目是 THE q-SERIES IN COMBINATORICS; PERMUTATION ST ...