返回顶部
首页 > 资讯 > 数据库 >mysql中怎么删除ibdata文件
  • 378
分享到

mysql中怎么删除ibdata文件

2024-04-02 19:04:59 378人浏览 薄情痞子
摘要

本篇文章给大家分享的是有关Mysql中怎么删除ibdata文件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 在数

本篇文章给大家分享的是有关Mysql中怎么删除ibdata文件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。


在数据文件下的innodb ibdata包括表空间:ibdata1,ibdata2,回滚日志ib_logfile0,ib_logfile1,ib_logfile2.
[root@localhost data]# ls
5k72           db-bin.000015  dbjijin-bin.000001  ibdata1      ib_logfile1                localhost-slow.log  mysql.err           test
auto.cnf       db-bin.000016  dbjijin-bin.000002  ibdata2      ib_logfile2                monitor             perfORMance_schema  test333
db-bin.000014  db-bin.index   dbjijin-bin.index   ib_logfile0  localhost.localdomain.pid  mysql               rrr                 ttt
[root@localhost data]#

现在删除这几个文件:

[root@localhost data]# rm -f ib*
[root@localhost data]# ls
5k72           db-bin.000015  dbjijin-bin.000001    localhost-slow.log  mysql.err           test
auto.cnf       db-bin.000016  dbjijin-bin.000002    monitor             performance_schema  test333
db-bin.000014  db-bin.index   dbjijin-bin.index       localhost.localdomain.pid  mysql               rrr                 ttt
[root@localhost data]#

删除之后,数据库还可以正常工作,切记不要停止mysql服务,不然神仙也难救.....

先找到mysql的pid.
[root@localhost data]# netstat -ntlp|grep mysqld
tcp        0      0 :::3307                     :::*                        LISTEN      4863/mysqld        
tcp        0      0 :::3306                     :::*                        LISTEN      2169/mysqld  


第一个是我们需要的pid号,4863
通过pid号,找到相关的文件,红色标记的是我们需要的文件:
[root@localhost data]# ll /proc/4863/fd
total 0
lr-x------. 1 root root 64 Apr 24 10:58 0 -> /dev/null
l-wx------. 1 root root 64 Apr 24 10:58 1 -> /home/mysql3307/data/mysql.err
lrwx------. 1 root root 64 Apr 24 10:58 10 -> /home/mysql3307/data/ib_logfile0 (deleted)
lrwx------. 1 root root 64 Apr 24 10:58 11 -> /home/mysql3307/data/ib_logfile1 (deleted)
lrwx------. 1 root root 64 Apr 24 10:58 12 -> /home/mysql3307/data/ib_logfile2 (deleted)
.
..
...
lrwx------. 1 root root 64 Apr 24 10:58 4 -> /home/mysql3307/data/ibdata1 (deleted)
..
...
....
lrwx------. 1 root root 64 Apr 24 10:58 9 -> /home/mysql3307/data/ibdata2 (deleted)

这时,需要暂停前端的业务,也就是需要停止数据的写操作.
关闭业务,或者: flush tables with read lock;
然后把脏页尽快刷入到磁盘里,
mysql>set global innodb_max_dirty_pages_pct=0;
然后查看binlog日志写入情况,确保file和position的值没有变化
Your MySQL connection id is 7
Server version: 5.6.20-log Source distribution
Copyright (c) 2000, 2014, oracle and/or its affiliates. All rights reserved.
Oracle is a reGIStered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| db-bin.000016 |     3415 |              |                  |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| db-bin.000016 |     3415 |              |                  |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| db-bin.000016 |     3415 |              |                  |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)
mysql> show master status;
+---------------+----------+--------------+------------------+-------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+---------------+----------+--------------+------------------+-------------------+
| db-bin.000016 |     3415 |              |                  |                   |
+---------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

然后查看innodb状态信息,确保脏页已经刷入磁盘.
mysql> show engine innodb status \G
************************** 1. row ***************************
  Type: InnoDB
  Name:
Status:
=====================================
2015-04-24 11:51:52 7f7038202700 INNODB MONITOR OUTPUT
------------
TRANSACTIONS
------------
Trx id counter 18696
Purge done for trx's n:o < 18696 undo n:o < 0 state: running but idle
##确保后台purge进程吧 undo log 全部清除掉,事务id要一致.

-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 0, seg size 2, 0 merges
## insert buffer 合并插入缓存等于1
---
LOG
---
Log sequence number 5196495
Log flushed up to   5196495
Pages flushed up to 5196495
Last checkpoint at  5196495
## 确保这4个值不会变

----------------------
BUFFER POOL AND MEMORY
----------------------
Total memory allocated 1098907648; in additional pool allocated 0
Dictionary memory allocated 74136
Buffer pool size   65528
Free buffers       65121
Database pages     406
Old database pages 0
Modified db pages  0
## 确保脏页数据为0

--------------
ROW OPERATIONS
--------------
0 queries inside InnoDB, 0 queries in queue
0 read views open inside InnoDB
Main thread process no. 1964, id 140119885477632, state: sleeping
Number of rows inserted 1, updated 0, deleted 0, read 4
0.00 inserts/s, 0.00 updates/s, 0.00 deletes/s, 0.00 reads/s
## 确保插入,更新,删除为0


经过上面确认后,可以进行恢复操作了.复制上面表示部分数据到数据库目录:
[root@localhost fd]# cp 4 /home/mysql3307/data/ibdata1
[root@localhost fd]# cp 10 /home/mysql3307/data/ib_logfile0
[root@localhost fd]# cp 11 /home/mysql3307/data/ib_logfile1
[root@localhost fd]# cp 12 /home/mysql3307/data/ib_logfile2
给文件授权:
[root@localhost fd]# chown mysql:mysql /home/mysql3307/data/ib*

以上就是mysql中怎么删除ibdata文件,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: mysql中怎么删除ibdata文件

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

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

猜你喜欢
  • mysql中怎么删除ibdata文件
    本篇文章给大家分享的是有关mysql中怎么删除ibdata文件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。 在数...
    99+
    2024-04-02
  • mysql ibdata文件 误删除 恢复
    1 当我们误删除ibdata 文件时 千万不要慌张 此时只要不重启服务 mysql数据库还是可以使用的 如何恢复 前提 不要把mysqld进程杀死,且不能关闭mysql服务  查到mysql...
    99+
    2024-04-02
  • Mysql中误删ibdata ib_logfile等文件怎么办
    这篇文章主要介绍了Mysql中误删ibdata ib_logfile等文件怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 ...
    99+
    2024-04-02
  • 误删除InnoDB ibdata数据文件怎么办
    这篇文章主要介绍了误删除InnoDB ibdata数据文件怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 下边这个案例模拟人...
    99+
    2024-04-02
  • mysql5.7.33误删除ibdata文件找回数据的方法
    一、场景说明: 很多时候因为 MySQL 数据库不能启动而造成数据无法访问,但应用的数据通常没有丢失,只是系统表空间等其它文件损坏了,或者遇到 MySQL 的 bug。 这个时候如果没有备份,很多人就以为数据丢失...
    99+
    2022-05-14
    mysql误删ibdata mysql ibdata找回 mysql ibdata恢复
  • MySQL 5.6.26 误删ibdata该怎么恢复
    MySQL 5.6.26 误删ibdata该怎么恢复,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 [root@h...
    99+
    2024-04-02
  • Node.js中怎么删除文件夹
    本篇文章为大家展示了Node.js中怎么删除文件夹,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。核心代码如下:   function ...
    99+
    2024-04-02
  • VB.NET中怎么删除文件夹
    本篇文章给大家分享的是有关VB.NET中怎么删除文件夹,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。VB.NET删除文件夹的操作是采用递归算法删除带有多级子目录的目录Optio...
    99+
    2023-06-17
  • git中怎么删除大文件
    Git是一个非常流行的版本控制工具,它被广泛用于软件开发中,以跟踪代码的变化。在软件开发过程中,开发人员可能会发现版本库中有一些不需要的或过时的文件,这些文件可能是大文件,造成版本库占用空间过大,导致git的使用效率降低。在这种情况下,我们...
    99+
    2023-10-22
  • linux中怎么删除文件夹
    这篇文章主要介绍了linux中怎么删除文件夹的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇linux中怎么删除文件夹文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2023-03-09
    linux
  • 怎么在Gitee中删除文件
    这篇“怎么在Gitee中删除文件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么在Gitee中删除文件”文章吧。进入仓库首...
    99+
    2023-07-05
  • 文件夹中的autorun.inf文件怎么删除
    要删除文件夹中的autorun.inf文件,可以按照以下步骤进行操作:1. 打开文件夹,找到包含autorun.inf文件的文件夹。...
    99+
    2023-08-25
    删除
  • java怎么删除文件
    java删除文件的方法: import java.io.*; public class Exercise { public static void main(String args[]) { try { ...
    99+
    2018-10-07
    java 文件
  • phpstorm怎么删除文件
    phpstorm中删除文件的方法:1、打开phpstorm工具;2、打开需要删除文件的项目;3、选中文件名;4、使用“delete”键删除;5、在弹窗中选择“OK”确定删除即可。具体操作步骤:打开phpstorm工具。打开需要删除文件的项目...
    99+
    2024-04-02
  • php怎么删除文件
    这篇文章主要讲解了“php怎么删除文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php怎么删除文件”吧!php可以删除文件,其删除文件的方法:1、创建一个PHP示例文件;2、找到要删除的...
    99+
    2023-06-22
  • html怎么删除文件
    这篇文章主要介绍“html怎么删除文件”,在日常操作中,相信很多人在html怎么删除文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”html怎么删除文件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!首先...
    99+
    2023-07-06
  • 怎么删除Mysql的MySql-bin.0000X日志文件
    本篇内容主要讲解“怎么删除Mysql的MySql-bin.0000X日志文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么删除Mysql的MySql-bin.0000X日志文件”吧!我的数据...
    99+
    2023-06-13
  • 怎么在linux中删除文件夹
    今天就跟大家聊聊有关怎么在linux中删除文件夹,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。什么是Linux系统Linux是一种免费使用和自由传播的类UNIX操作系统,是一个基于P...
    99+
    2023-06-14
  • Vista中怎么删除隐藏文件
    这篇文章给大家介绍Vista中怎么删除隐藏文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。  删除多余的虚拟光驱图标   当我们在系统中安装了虚拟光驱后,“我的电脑”中就会多出一个光盘图标,即便日后你不再使用虚拟光驱...
    99+
    2023-06-14
  • php中指定文件怎么删除
    这篇文章将为大家详细讲解有关php中指定文件怎么删除,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php中指定文件的删除方法:首先新建文件,使用【header()】方法设置页面的编码格式为【utf-8】;...
    99+
    2023-06-07
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作