1,下面标出的4张表只需要迁移表结构。
2,除了这四张表之外的表需要迁移整张表。
首先查询这个库数据量大小,选择迁移方法。
数据库只有100G左右,而且标出只迁移的表结构的四张表占有90多G。故而选择 mysqldump方式迁移。
下面是测试实验结果:
测试环境:迁移192.168.56.21服务器上数据库yz下的表结构a到192.168.56.22服务器上
一、首先测试迁移表结构
原192.168.56.21服务器yz下a的数据:
1)迁移表结构语句:其中 --opt就是选项只迁移表结构
[root@mysql2 bak]# /data/mysql/bin/mysqldump -h192.168.56.21 -uroot -proot --opt -d yz a>a.sql
其中文件a.sql具体内容如下:
2)恢复
恢复语句:[root@mysql2 bak]# mysql -uroot -proot yz <a.sql
验证正确,如图:
二,测试迁移除部分表的结构和数据
原192.168.56.21服务器yz下表如下:
1)迁移表语句,其中--ignore-table选项是需要忽略迁移的表
[root@mysql2 bak]# /data/mysql/bin/mysqldump -h192.168.56.21 -uroot -proot yz --ignore-table=yz.c --ignore-table=yz.d >c.sql
其中文件c.sql具体内容如下:
可以看到只是迁移了表a和b的数据和结构
2)恢复
恢复语句:[root@mysql2 bak]# mysql -uroot -proot yz <c.sql
验证正确,如图:
mysql怎样只导出表结构
mysql mysqldump 只导出表结构 不导出数据
1.导出结构不导出数据
代码如下:
2.导出数据不导出结构
代码如下:
3.导出数据和表结构
代码如下:
4.导出特定表的结构
代码如下:
扩展知识:
mysqldump 是 MySQL 自带的逻辑备份工具。
它的备份原理是通过协议连接到 MySQL 数据库,将需要备份的数据查询出来,将查询出的数据转换成对应的insert 语句,当我们需要还原这些数据时,只要执行这些 insert 语句,即可将对应的数据还原。
备份命令
命令格式
或
或
将数据库导入后,在查询分析器中执行:select 'truncate table '+table_name
from information_schema.tables
where table_type='BASE TABLE' AND TABLE_NAME <>'dtproperties'
将产生的输入拷贝到询分析器中运行,数据库中所有用户表将补清空.
第二种方法:
脚本化所有数据库对象->新建数据库->运行脚本
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)