truncate table tablename;

该命令可以清空一个表里的所有数据,并归1自增ID的值。

但myisam的表和innodb的表在使用上有一定的区别。

myisam表会清空所有数据,并释放表空间,即硬盘空间会得到释放。

innodb表也会清空所有数据,但不释放表空间。

Innodb数据库对于已经删除的数据只是标记为删除,并不真正释放所占用的磁盘空间,这就导致InnoDB数据库文件不断增长。如果想彻底释放这些已经删除的数据,需要把数据库导出,删除InnoDB数据库文件,然后再倒入。 下面是基本的步骤:  1 使用mysqldump命令将InnoDB数据库导出  2 停止MySQL  3 删除所有InnoDB数据库文件和日志  4 启动MySQL并自动重建InnoDB数据库文件和日志文件  5 导入前面备份的数据库文件

具体命令:

# 备份数据库:

mysqldump -uroot -proot --quick --force --all-databases > mysqldump.sql

# 停止数据库

service mysqld stop

# 删除这些大文件

rm /usr/local/mysql/var/ibdata1

rm /usr/local/mysql/var/ib_logfile*

# 手动删除除Mysql之外所有数据库文件夹,然后启动数据库

service mysqld start

# 还原数据

mysql -uroot -proot < mysqldump.sql

还有一种方式是在创建数据库的时候设置innodb_file_per_table,这样InnoDB会对每个表创建一个数据文件,然后只需要运行OPTIMIZE TABLE 命令就可以释放所有已经删除的磁盘空间。

编辑my.ini或my.cnf 在innodb段中加入 innodb_file_per_table=1 # 1为启用,0为禁用

通过mysql语句可以查看该变量的值:mysql> show variables like '%per_table%';

mysql truncate 释放空间_mysql truncate table未释放表空间磁盘空间相关推荐

  1. 磁盘空间不足怎么办?教你重新分配磁盘空间

    磁盘空间不足怎么办?教你重新分配磁盘空间 阅读导航(搭配图片食用效果更佳!) 1分配磁盘空间 进入磁盘管理-确定要拆分的目标磁盘-确定新磁盘的用途.容量.名称.详细操作请看连锁附图,本文以我的小D盘为 ...

  2. mysql truncate很慢_mysql truncate 的问题

    问题是微信群里一伙计提的 `mysql truncate 空表都需要3 4秒,要优化解决` 一开始觉得这莫名其妙,因为作这种操作的都是后台运维,不是实时的对外服务,运维又不差这3秒 其反应trunca ...

  3. java怎么清空表释放空间_Linux 删除文件未释放空间问题处理,下清空或删除大文件...

    linux里的文件被删除后,空间没有被释放是因为在Linux系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么 ...

  4. MYSQL数据库字段关联_MySQL数据库 字段操作 多表关系(更新中...)

    外键 (foreign key) ## 外键 ```mysql # 作者(author):id,name,sex,age,mobile, detail_id # 作者详情(author_detail) ...

  5. mysql查询数据库结构_mysql查询数据库下的表结构

    mysql查询数据库下的表结构 方法:1.使用DESCRIBE命令以表格的形式展示表结构,语法"DESCRIBE 表名;":2.使用"SHOW CREATE TABLE& ...

  6. MYSQL数据库字段关联_MySQL数据库基础——操作关系表、连接查询

    MySQL数据库基础入门--day11 一.操作关联表 1.关联关系: 关联关系有:多对一.多对多和一对多. 一对一关联关系可以应用在以下几方面: (1)分割具有很多列的表 (2)由于安全原因而隔离表 ...

  7. mysql使得df和du不一致_df和du显示的磁盘空间使用情况不一致的原因及处理

    在Linux下查看磁盘空间使用情况,最常使用的就是du和df了.然而两者还是有很大区别的,有时候其输出结果甚至非常悬殊. 1. 如何记忆这两个命令 du-Disk Usage df-Disk Free ...

  8. linux 硬链接占空间吗,硬链接到底占不占用磁盘空间?

    硬链接到底占不占用磁盘空间? 查了很多资料都说  硬链接不占用磁盘空间, 于是乎,我做了如下实验,竟意外地发现有的硬链接也占用了磁盘空间!!! 文件系统是 ext4,centos虚拟机. 不多说,往下 ...

  9. linux磁盘空间不足,但是使用df却发现磁盘空间至少有一半的空间没有使用

    linux磁盘空间不足,但是使用df -ah却看到还有近一半的空间,怎么会报磁盘空间不足呢? 其实很简单,因为node节点已经用完了,一个文件对应一个node节点,我们这里的说的空间其实是block, ...

最新文章

  1. VScode的撤销操作的快捷键
  2. PaddleClas
  3. 博士申请 | 日内瓦大学招收机器学习和计算机视觉博士生(年薪35万)
  4. java反射的优化_请问Java反射的性能为什么比直接调用慢一个数量级左右?
  5. Linux学习笔记之安装mplayer过程详解
  6. Python程序开发——第三章 列表与元组
  7. AttributeError: ‘str‘ object has no attribute ‘copy
  8. 傅里叶变换的终极解释上
  9. SPMetal语法用法
  10. 基于遗传算法(deap)的配词问题与deap框架
  11. 外文文献翻译一条龙 -对于毕设翻译贼有用
  12. 记一次perl使用lwp获取结果为乱码
  13. Linux - 一次性计划任务之at命令使用
  14. [Android]天气App 1
  15. 部署阿里云盘的目录文件列表程序教程
  16. 物联网开发笔记(50)- 使用Micropython开发ESP32开发板之控制HC-SR501人体红外感应传感器
  17. 日本寿司第一人有多夸张?米饭用扇子降温,学徒十年才有资格煎蛋
  18. 艾永亮:超级产品战略助戴森品牌C位出道,它却在汽车行业栽跟头
  19. Spring 事务的属性
  20. 大华SDK二次开发,JAVA

热门文章

  1. Java开发如何在线打开Word文件
  2. 西文字体相关术语解说及《干货分享》
  3. java处理图片 adobe_Adobe开发出一个反修图工具 还原人像PS 痕迹
  4. D.引水工程 【最小生成树+超级源点】
  5. echart与百度地图实现省、市、县地图
  6. jQuery插件之form
  7. 通过sql语句查询oracle版本信息
  8. 《动手学机器人学》7.3.1齐次坐标变换齐次变换矩阵
  9. Golang 开发的一站式云原生 PaaS 平台 —— Erda
  10. 遇到跑批时快时慢、或一直变慢,作为运维DBA或开发的你,如何下手?