iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >innodb表 手工导入导出
  • 753
分享到

innodb表 手工导入导出

2024-04-02 19:04:59 753人浏览 安东尼
摘要

上一篇文章介绍了“innobackupex 热备指定库表操作”,分析其整个过程,就是将表的字典和数据文件导出在导入的原理,那么针对单表的备份与恢复(新实例或者新库中恢复),我们可以直接采用物理导出innod

上一篇文章介绍了“innobackupex 热备指定库表操作”,分析其整个过程,就是将表的字典和数据文件导出在导入的原理,那么针对单表的备份与恢复(新实例或者新库中恢复),我们可以直接采用物理导出innodb表的办法。
具体操作如下:
1.将备份表加,导出cfg。

Mysql> select * from t1;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
| 2 |
| 3 |
| 4 |
+------+
7 rows in set (0.00 sec)

mysql> flush table t1 with read lock;
Query OK, 0 rows affected (0.01 sec)

发现t1生成了cfg文件。

[root@222 test]# ls
db.opt t1.cfg t1.frm t1.ibd t2.frm t2.ibd

执行unlock tables ,cfg文件回收。

mysql> unlock tables;
Query OK, 0 rows affected (0.00 sec)

[root@222 test]# ls ../test/
db.opt t1.frm t1.ibd t2.frm t2.ibd

2.在unlock tables前,将t1的cfg和ibd文件备份。

[root@222 test]# cp t1.ibd t1.cfg /home/backup/

3.创建一个新库,并创建相同结构的t1表。
mysql> create database test1;
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> use test1;
Database changed
mysql>
mysql> create table t1 like test.t1;
Query OK, 0 rows affected (0.03 sec)

4.删除新建的t1表空间。

mysql> alter table t1 discard tablespace;
Query OK, 0 rows affected (0.02 sec)

发现新建的t1表空间的ibd文件被清除。

[root@222 test]# ls ../test1/
db.opt t1.frm

5.将备份的t1表的cfg和ibd文件拷贝到新建的库下。
[root@222 test]# cd /home/backup/

[root@222 test1]# ll -trh
总用量 116K
-rw-rw----. 1 mysql mysql 61 12月 16 09:49 db.opt
-rw-rw----. 1 mysql mysql 8.4K 12月 16 09:49 t1.frm
-rw-r-----. 1 root root 96K 12月 16 09:51 t1.ibd
-rw-r-----. 1 root root 354 12月 16 09:51 t1.cfg
[root@222 test1]# chown -R mysql.mysql *
[root@222 test1]#
[root@222 test1]#
[root@222 test1]# ll -trh
总用量 116K
-rw-rw----. 1 mysql mysql 61 12月 16 09:49 db.opt
-rw-rw----. 1 mysql mysql 8.4K 12月 16 09:49 t1.frm
-rw-r-----. 1 mysql mysql 96K 12月 16 09:51 t1.ibd
-rw-r-----. 1 mysql mysql 354 12月 16 09:51 t1.cfg

6.执行新建t1表导入表空间操作。
mysql> alter table t1 import tablespace;
Query OK, 0 rows affected (0.08 sec)

7.查询结果和第1步备份的表一致,操作完成

mysql> select * from test1.t1;
+------+
| id |
+------+
| 1 |
| 2 |
| 3 |
| 4 |
| 2 |
| 3 |
| 4 |
+------+
7 rows in set (0.00 sec)

btw.
a.由于新表存在cfg文件,在删除库操作的时候会报错,
ERROR 1010 (HY000): Error dropping database (can't rmdir './test1/', errno: 17)
如果使用innobackupex备份,并导入的exp文件,则会发现删除库后,exp文件无法删除,那么手工将exp文件删除,在删除库即可。
如果使用如上方法手工命令方式导入cfg文件,在删除库时报错,但是查看库文件时发现无文件,则在执行一遍即可;对于新导入的cfg文件,可以在次执行如下命令,则cfg文件消失。
mysql> flush table t1 for export;
Query OK, 0 rows affected (0.00 sec)

[root@222 test1]# ll -trh
总用量 116K
-rw-rw----. 1 mysql mysql 61 12月 16 09:49 db.opt
-rw-rw----. 1 mysql mysql 8.4K 12月 16 09:56 t1.frm
-rw-r-----. 1 mysql mysql 96K 12月 16 09:56 t1.ibd
-rw-r-----. 1 mysql mysql 355 12月 16 09:57 t1.cfg

mysql>
mysql>
mysql> unlock tables;
Query OK, 0 rows affected (0.00 sec)

[root@222 test1]# ll -trh
总用量 112K
-rw-rw----. 1 mysql mysql 61 12月 16 09:49 db.opt
-rw-rw----. 1 mysql mysql 8.4K 12月 16 09:56 t1.frm
-rw-r-----. 1 mysql mysql 96K 12月 16 09:56 t1.ibd

b.发现手工命令行方式备份恢复更加便捷,但是会有一个锁表的过程,那么则根据不同情况选择不同方式进行备份,对于线上有写入的表采用innobackupex方式,不会导致复制延迟;对于无写入的表,直接采用加锁导入cfg文件方式,操作更加便捷。

OK,done。

您可能感兴趣的文档:

--结束END--

本文标题: innodb表 手工导入导出

本文链接: https://www.lsjlt.com/news/42769.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • sqlserver数据表怎么导入导出
    在SQL Server中,可以使用以下方法来导入和导出数据表: 导入数据表: 使用SSMS(SQL Server Manag...
    99+
    2024-04-09
    sqlserver
  • tp6 thinkphp6 excel导入导出 PHPExcel导入导出excel
    tp6 thinkphp6 Excel导入导出,主要是使用了PHPExcel类库。 php导出excel数字太长尾数变000解决方法 导出时为什么数字字段要加“\t”。是因为,由于数字超过15位,会被显示成0或者加小数点处理。造成这种情况是...
    99+
    2023-08-31
    php 数据库 服务器
  • EasySwoole文档:EasySwoole导入导出Execl表格
    要在EasySwoole中导入导出Excel表格,您可以使用PHPExcel库。下面是一个简单的示例,演示如何导入和导出Excel表...
    99+
    2023-09-22
    EasySwoole
  • Mysql通过workbench对表进行导出导入
    打开workbench工具: 打开上面工具栏的Server-Data Export 选中数据库,选中要export的,点击Start Export 旁边的Export Progress会显示进度。 其实就...
    99+
    2024-04-02
  • mysql数据表导出导入过程详解
    一、mysqldump导出sql文件 内网导出sql文件速度快,推荐内网导出。外网导出的时候容易断连接,外网导出时使用nohup后台运行,一般不会断。但是一些无效的报警信息会进入到sql文件首行里,导...
    99+
    2023-09-08
    mysql 数据库
  • VMware - 导入/导出OVF
    OVF文件 开放虚拟机格式文件 ( Open Virtualization Format , OVF ),是一种针对 虚拟设备 (或者可以允许 软件 运行的 虚拟机 )打包和发布的 开放标准 。. 这...
    99+
    2023-10-20
    java linux ubuntu
  • MySQL表数据的导入与导出方法
    本篇内容介绍了“MySQL表数据的导入与导出方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! LOAD...
    99+
    2024-04-02
  • 怎么导入导出Oracle分区表数据
    这篇文章主要介绍“怎么导入导出Oracle分区表数据”,在日常操作中,相信很多人在怎么导入导出Oracle分区表数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么导入导出...
    99+
    2024-04-02
  • win10系统如何导出导入注册表
    这篇文章主要为大家展示了“win10系统如何导出导入注册表”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“win10系统如何导出导入注册表”这篇文章吧。首先在登录win10系统打开注册表,在打开的...
    99+
    2023-06-28
  • DataGrip导出和导入表结构和数据
    一、导出步骤 1)选择需要导出的数据库,点击右键选择 Export with 'mysqldump' 2)在弹出的界面中,选中mysql安装目录下的mysqldump.exe的位置,并设置导出的路径以及文件名称 点击Run按钮,则导出...
    99+
    2023-09-03
    DataGrip
  • .NET6导入和导出EXCEL
    使用NPOI导入.xlsx遇到“EOF in header”报错,网上找好很多方法,没解决,最后换成EPPlus.Core导入。 导出默认是.xls。 NPOI操作类: usin...
    99+
    2024-04-02
  • vue怎么实现excel表格的导入导出
    这篇文章主要介绍“vue怎么实现excel表格的导入导出”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue怎么实现excel表格的导入导出”文章能帮助大家解决问题。一、下载xlsx插件npm&nb...
    99+
    2023-07-06
  • 如何导入和导出win10系统注册表
    这篇文章主要介绍了如何导入和导出win10系统注册表,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。首先在登录win10系统打开注册表,在打开的注册表编辑器中点击文件 – 导出...
    99+
    2023-06-27
  • Xshell导入导出会话
    配置好的xshell会话面临需要迁移到另一台机器上的需求,如果手动逐个重新配置那就太糟糕了,所以此文作为迁移步骤的相关记录,以供参考。 文章目录 一. 设置主密码二. 导出/迁移源文件使用xts文件方式使用源文件迁移方式 ...
    99+
    2023-08-24
    linux 服务器 网络
  • Java利用POI实现导入导出Excel表格
    本文实例为大家分享了Java利用POI实现导入导出Excel表格的具体代码,供大家参考,具体内容如下 一、Java利用POI实现导入导出Excel表格demo 1.引入依赖 <...
    99+
    2024-04-02
  • Java 使用hutool工具进行导出导入excel表格(代码很简单)
    1.先引入hutool的相关依赖                      cn.hutool            hutool-all            5.8.4                            org.ap...
    99+
    2023-09-24
    java excel 开发语言
  • vue实现excel表格的导入导出的示例
    目录一、下载xlsx插件二、通过element-ui组件的upload组件上传文件三、把选择的Excel文件把文件内容转化为二进制四、通过插件中的xlsx.read()读取二进制数据...
    99+
    2023-05-15
    vue excel导入导出 vue excel导入 vue excel导出
  • 用mysql工具导出表的方法
    这篇文章将为大家详细讲解有关用mysql工具导出表的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。导出方法:1、使用mysql的navicat工具进入到源数据库系统中...
    99+
    2024-04-02
  • oracle中expdp和impdp如何导出导入表空间
    小编给大家分享一下oracle中expdp和impdp如何导出导入表空间,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
  • plsql表结构导入导出的方法是什么
    PL/SQL表结构导入导出的方法有以下几种: 使用Oracle Data Pump导入导出:Oracle Data Pump提供...
    99+
    2023-10-23
    pgsql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作