本篇内容介绍了“mysql表空间传输过程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
在mysql 5.6版本中引入了一个可移动表空间的新特性(复制的表空间到另一个服务器),即mysql表空间传输。这使得我们传输表或者单个库的数据变得十分方便。
,但才能是,传输表空间必须满足以下的条件
1 .必须使用独立表空间
2 .两个mysql数据库的页面大小必须一样
3.两个表的表结构必须一样
<强>下面我们对拉拉库下面的分数表进行传输强>
首先,先从主库导出分数
我们可以在导出之前对错误日志- f命令进行输出,跟踪它做了什么
(root@potato数据)# tail - f error.log
root@localhost: mysql.sock 01:31:46(拉拉)在冲洗出口表得分;
root@localhost: mysql.sock 02:08:21(拉拉)在从分数;选择*,,,,,,,,,+ - - - - - - - - - - - - - - - - - - - - - - - - + +
| id ,| name ,得分,| |
+ - - - - - - - - - - - - - - - - - - - - - - - - + +
|,,3 |萧红|,,99 |
|,,2 |小明|,,65 |
|,,1 | xiaojun |,,55 |
+ - - - - - - - - - - - - - - - - - - - - - - - - + +
3行集(0.00秒)
以下是错误日志的输出
25547 01:32:44 2016-12-19[注]InnoDB:同步到磁盘的& # 39;“lala"干净score" & # 39;开始。
25547 01:32:44 2016-12-19[注]InnoDB:停止清洗
25547 01:32:44 2016-12-19[注]InnoDB:写表元数据& # 39;。/拉拉score.cfg& # 39;
25547 01:32:44 2016-12-19[注]InnoDB:表& # 39;“lala"干净score" & # 39;刷新到磁盘
可见,它首先对表停止操作,再把分数的数据和元数据写到磁盘。
此时可以访问这张表,但是不能对数据进行DML操作,如
发起查询语句,成功
root@localhost: mysql.sock 01:33:11[(一)]在从lala.score select *,,,,,,+ - - - - - - - - - - - - - - - - - - - - - - - - + +
| id ,| name ,得分,| |
+ - - - - - - - - - - - - - - - - - - - - - - - - + +
|,,3 |萧红|,,99 |
|,,2 |小明|,,65 |
|,,1 | xiaojun |,,55 |
+ - - - - - - - - - - - - - - - - - - - - - - - - + +
3行集(0.00秒)
发起插入语句,一直在等待
root@localhost: mysql.sock 01:31:23[(一)]在插入拉拉。得分值(4日& # 39;少林# 39;,74年),
在库文件夹下面多了cfg文件
(root@potato拉拉)# ls - l评分*
-rw-r——1 mysql mysql ,470年12月19日02:07 score.cfg
-rw-rw - - - - -。1 mysql mysql 8618年12月19日02:03 score.frm
-rw-r——98304 12月19日mysql mysql 02:07 score.ibd
我们把cfg和ibd文件先复制到/tmp目录下
(root@potato拉拉)# cp 分数。cfg/tmp
(root@potato拉拉)# cp 分数。炎症性肠?tmp
然后解锁表,让外部可以尽快访问表
root@localhost: mysql.sock 01:35:02(拉拉)在解锁表;
查询好,0行影响(0.00秒)
备库此时没有该表
root@localhost: mysql.sock 01:35:28(拉拉)在显示表;
+ - - - - - - - - - - - - - - - - - +
| Tables_in_lala |
+ - - - - - - - - - - - - - - - - - +
| haha ,,,,,|
| test ,,,,,|
| test1 ,,,,|
+ - - - - - - - - - - - - - - - - - +
3行集(0.00秒)
分数查看主库的建表语句
root@localhost: mysql.sock 01:37:19(拉拉)在显示创建表得分\ G
* * * * * * * * * * * * * * * * * * * * * * * * * * * 1。行* * * * * * * * * * * * * * * * * * * * * * * * * * *
表:分数
创建表:创建表“得分”(
“id”int(11)默认为空,
“名字”varchar(15)默认为空,
“分数”int(11)默认空
)引擎=InnoDB的默认字符集=utf8
1行集(0.00秒)
在从库上执行
root@localhost: mysql.sock 02:03:44(拉拉)比;创建表的分数(
→,,“id”int(11)默认为空,
→,,“名字”varchar(15)默认为空,
→,,“分数”int(11)默认空
→)引擎=InnoDB默认字符集=utf8;
查询好,0行影响(0.02秒)