首页 > 问答 > 关键词 > MySQL最新资讯 > 正文

MySQL怎么删除#sql开头的临时表

2020-07-08 11:31 · 稿源:数据库干货铺
文章目录

1.  现象

巡检时发现服务器磁盘空间不足,通过查看大文件进行筛选是发现有几个#sql开头的文件,且存在超过100G及10G以上的文件。

2. 原因

如果MySQL在一个 ALTER TABLE操作(ALGORITHM=INPLACE)的中间退出,那么可能会留下一个占用系统空间的临时表。例如,在对一张表(大表)添加索引时中途中断、磁盘不足导致异常或正在添加索引时实例被kill等等情况所致。

注意: 此类表空间文件不能直接rm -f的方式物理删除,因为该信息记录在ibdata的共享表空间里,直接删除后,后续实例重启时会出现错误。

3. 处理方法

3.1   同时存在.frm 和.ibd名称相同的文件

如果 #sql-*.ibd 和 #sql-*.frm两个文件都存在数据目录里的话,可以直接drop table。但注意删除时候表名的变化。

/* 直接删除,表名前加#mysql50*/root@testdb 01:42:57> DROP TABLE `#mysql50##sql-ib87-856498050`;

注: #mysql50#前缀是MySQL 5. 1 中引入的文件名安全编码。另外,表名因不符合命名规范,想要执行该脚本需要将表名用反引号括起来。

3.2  创建新表方式删除

因为本例中没有存在.frm 和.ibd名称相同的文件的情况,因此采用创建一张与ibd表空间对应的结构(字段名及索引)一致的表,然后将frm文件拷贝为和ibd一致的文件,再进行删除。

下面处理截图中#sql-ib1516-2335726735.ibd文件,步骤如下:

a) 创建一张与#sql-ib1516- 2335726735 相同的表

root@testdb 08:47:35>create table company20191216 likecompany;
Query OK, 0 rows affected (0.05 sec)
root@testdb 08:48:59>exitBye

b) 拷贝为#sql-ib1516-2335726735.frm的定义文件

[root@db4 testdb]# cp -p  company20191216.frm  \#sql-ib1516-2335726735.frm

  c)  删除表

因为上一步拷贝时使用-p的方式,即权限和原文件权限一致,属主及group均为mysql,因此可以直接在数据库里读取删除,如果权限不对,必须先修改文件权限。

root@testdb 08:49:54>drop table `#mysql50##sql-ib1516-2335726735`;
Query OK, 0 rows affected (6.65 sec)

此时,135G的文件就已经删掉了(其实另一个文件#sql-821_2.frm文件也一并删了)

 注: 删除这种100G的表不建议直接删除,而是通过创建硬链接的方式处理。

3.3  修改frm文件名与ibd文件名一致

上一步中删除ibd文件时,其中一个frm也自动删除了。为此,尝试通过修改frm文件名和ibd文件名一致的方式处理。但要注意,由于不确定是否结构一致,修改后可能异常,但如果没有暴力处理,通常均可以成功。如下:

a)  修改frm文件名与ibd文件名一致

[root@db4 testdb]# mv \#sql-a846_2.frm  \#sql-ib1570-121877015.frm

b) 删除表

root@testdb 01:41:06>DROP TABLE `#mysql50##sql-ib1570-121877015`;
Query OK, 0 rows affected (1.70 sec)

done!

其实还有其他的方式处理,大家可以自行测试。

参考资料:官方文档https://dev.mysql.com/doc/refman/5.7/en/innodb-troubleshooting-datadict.html

本文转载自【数据库干货铺】。

网友热搜:

  • 相关推荐
  • 大家在看
  • MySQL忘记密码怎么办 密码重置详细教程

    如果忘记密码,对于MySQL而言处理起来也相对比较简单。但需要修改配置,重启数据库。可以按照如下步骤处理。

  • MySQL敏感数据怎么加密 数据加密解密教程

    大数据时代的到来,数据成为企业最重要的资产之一,数据加密的也是保护数据资产的重要手段。本文主要在结合学习通过MySQL函数及Python加密方法来演示数据加密的一些简单方式。

  • MySQL怎么连接 全部连接方式汇总

    1. 连接方式1.1 方式1 /usr/local/mysql5.7/bin/mysql -p此方法默认采用root@localhost用户登录,1.2 方式2/usr/local/mysql5.7/bin/mysql -uroot -p -S /app/data/mysql3307/tmp/mysql.sock1.3 方式3/usr/local/mysql5.7/bin/mysql -uroot -p -h 127.0.0.1 -P3307此方式的用户和方式 2 的不同,如下 root@localhost 和root@127.0.0.1是不同的用户1.4 方式4 /usr/local/mysql5.7/bin/mysql -uroot -p -h localhost -P3307此方式和?

  • MySQL一直自动重启解决办法

    近期,测试环境出现了一次MySQL数据库不断自动重启的问题,导致的原因是强行kill -9 杀掉数据库进程导致,报错信息如下:2019-07-24T01:14:53.769512Z 0 [Note] Executing SELECT * FROM INFORMATION_SCHEMA.TABLES; to get a list of tables using the deprecated partition engine. You may use the startup option --disable-partition-engine-check to skip this check.2019-07-24T01:14:53.769516Z 0 [Note] Beginning of

  • MYSQL的ibtmp1文件太大怎么处理

    1. 啥情况呀测试环境机器磁盘空间不足的告警打破了下午的沉寂,一群人开始忙活着删数据。但是,不久前刚清理了一波数据,测试环境在没做压测的情况下不至于短短一个月不到就涨了200G数据,于是,我悄悄的进入数据目录下,发现一个不寻常的点,ibtmp1 文件有192G ll -hibtmp1 -rw-r----- 1 mysql mysql 192G Aug 12 16:20 ibtmp12. 怎么处理2.1 简单说明ibtmp1 是非压缩的innodb临时表的独立表空间,通过innodb_temp_data_file_pat

  • MySQL数据备份及恢复教程 巧用xtrabackup工具备份恢复

    本文将通过应用更为普遍的物理备份工具xtrabackup来演示数据备份及恢复的第二篇内容。

  • 为避免种族歧视,MySQL宣布删除黑名单白名单等术语

    MySQL数据库的开发人员日前宣布,计划在数据库源代码和文档中停止使用并替换 master、 slave、 blacklist(黑名单)和whitelist(白名单)等术语。

  • MySQL传统点位复制在线转为GTID模式复制

    1. GTID优缺点MySQL传统点位复制在5. 7 版本前是主要的主从复制模式,而随着MySQL5. 6 版本引入GTID,并且MySQL5. 7 进行各方面的优化以后,在mySQL5.7(尤其是MySQL5.7.6)版本后GTID模式的主从复制方式成为一个新的选择方式。要使用GTID模式,首先也需知其优缺点,其主要的优缺点如下:1.1 优点a) 更简单的实现failover,无需找log_file和log_Pos。b) 更简单的搭建主从复制。c) 复制集群有一个统一的方式识别复制位置,给集群管理

  • 黑名单、白名单完全不能用了!MySQL、Twitter等纷纷删除

    作为全球第二大流行数据库,MySQL也受到了众所周知事件的影响,不得不做出一些调整。MySQL开发人员今天宣布,计划在数据库源文件、文档中停止使用master(主)、slave(从)、blacklist(黑名单)、

  • BBC蛋炒饭教程气坏亚洲网友 蛋炒饭教程视频观看地址

    【BBC蛋炒饭教程气坏亚洲网友】据媒体报道,近日马来西亚 Youtube 博主mrnigelng发布了一则吐槽BBC美食频道蛋炒饭教程的视频。新闻发出后引起了网友的热议。

  • 花呗怎么取消征信 花呗取消征信记录教程

    最近花呗正式的接入了央行征信,很多朋友想知道怎么取消这个征信记录,下面就来为大家分享一下花呗取消征信记录教程。

  • 紫塞秋风莫高窟晚上禁地怎么进去 详细进入方法教程

    紫塞秋风很多玩家在做到任务莫高窟这个地方的时候,如果做了支线就不会让你进去,那么怎么才能再进去呢?下面就来为大家详细的介绍一下进入莫高窟的办法。

  • 《天气之子》免费观看教程,葫芦视频讲解

    自从电影院开始复工,很多片子也陆陆续续开始上映了。《天气之子》这部日本动漫,相信有的朋友已经看过了,影片在国内上映自 2019 年 11 月 1 日。这也是无数的动漫迷期盼 3 年已久的新海诚新作,整个故事时长 2 个小时左右。新海诚的这部新作,主要是描述一名叫“天野阳菜”的女主,她在一年前意外获得了“能够100%放晴天气”的超能力,但是几乎没有怎么使用过,直到男主“森岛帆高”的出现,事情自此变得不再一样。然而聪明的男?

  • 微信视频号怎么涨粉 快速涨粉技巧教程

    微信视频号随着腾讯的开放和推广是越来越火了,很多朋友都想做一个微信视频号进行涨粉,所以今天就来为大家分享一下微信视频号的涨粉教程,帮助大家快速涨粉。

  • BBC蛋炒饭教程气坏亚洲网友,主持人表示自己是无辜的

    炒饭在亚洲国家里可以说是一道十分简单又很普及的食物,但最近英国广播电视台BBC的一个炒饭制作教程却引发了很多亚洲网友的不满,原因是他们在制作的过程中,将煮熟的米饭放在水龙头下冲洗。

    BBC
  • BBC蛋炒饭教程气坏亚洲网友,居然用水冲洗饭

    英国BBC电视台曾推出过多部纪录片,如《地球脉动》、《蓝色星球》等均获得了好评,但近日他们推出的一个有关炒饭的美食视频却遭到了大量亚洲网友的批评,原因竟是他们的食谱要求在饭蒸好之后还要用水冲洗。

    BBC
  • 新手如何购买比特币?OKEx买币详细教程

    比特币在过去七天里波动很大。这种加密货币在 6 月 1 日突破了 1 万美元,在主要的加密货币交易所甚至一度达到 10450 美元的高度,这一上涨也清算了BitMEX价值数千万美元的空头头寸。在推特上颇受欢迎的分析师“凯撒”(Caesar)表示,如果该加密货币可以通过每日收盘高于该水平来果断地宣称该水平为支撑位,那么接下来将会有更大的动作。他说:“如果比特币能够重新获得这些高点,并且每天收盘都在接近高点,我认为我们可以开始瞄准

  • 对马岛之魂全部传说故事图文攻略 7个传说故事接取完成教程

    对马岛之魂中一共是有7个传说故事可以接取,并且可以获得很多好的道具装备奖励,下面就来为大家分享一下对马岛之魂全部传说故事图文攻略。

  • 电视也能截图?当贝市场分享详细图文教程

    当我们在电视时,想要把某一个画面分享给朋友时,往往是通过手机拍摄电视画面,但这种方法在拍摄时会受到周围灯光的影响,拍出来不的画质并不清晰。那么,你可能需要直接电视截图,接下来,小编就来分享电视截图的教程了!方法一:悟空遥控器首先要在智能电视和手机上分别下载一个悟空遥控,在悟空遥控器的工具箱中就有截屏这个功能。将智能电视和手机连接同一个局域网,成功连接后,点击截屏就可以成功将电视桌面截下。方法二:远程?

  • 剑与远征血仇边塞通关攻略 血仇边塞详细通关路线教程

    ​剑与远征的血仇边塞马上就要开启了,很多玩家还不清楚血仇边塞这个关卡怎么过,下面就来为大家详细的介绍一下血仇边塞详细通关路线攻略。

  • 参与评论
文明上网理性发言,请遵守新闻评论服务协议
  • 热门标签