mysql truncate 释放空间_mysql truncate table未释放表空间磁盘空间
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分配磁盘空间 进入磁盘管理-确定要拆分的目标磁盘-确定新磁盘的用途.容量.名称.详细操作请看连锁附图,本文以我的小D盘为 ...
- mysql truncate很慢_mysql truncate 的问题
问题是微信群里一伙计提的 `mysql truncate 空表都需要3 4秒,要优化解决` 一开始觉得这莫名其妙,因为作这种操作的都是后台运维,不是实时的对外服务,运维又不差这3秒 其反应trunca ...
- java怎么清空表释放空间_Linux 删除文件未释放空间问题处理,下清空或删除大文件...
linux里的文件被删除后,空间没有被释放是因为在Linux系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么 ...
- MYSQL数据库字段关联_MySQL数据库 字段操作 多表关系(更新中...)
外键 (foreign key) ## 外键 ```mysql # 作者(author):id,name,sex,age,mobile, detail_id # 作者详情(author_detail) ...
- mysql查询数据库结构_mysql查询数据库下的表结构
mysql查询数据库下的表结构 方法:1.使用DESCRIBE命令以表格的形式展示表结构,语法"DESCRIBE 表名;":2.使用"SHOW CREATE TABLE& ...
- MYSQL数据库字段关联_MySQL数据库基础——操作关系表、连接查询
MySQL数据库基础入门--day11 一.操作关联表 1.关联关系: 关联关系有:多对一.多对多和一对多. 一对一关联关系可以应用在以下几方面: (1)分割具有很多列的表 (2)由于安全原因而隔离表 ...
- mysql使得df和du不一致_df和du显示的磁盘空间使用情况不一致的原因及处理
在Linux下查看磁盘空间使用情况,最常使用的就是du和df了.然而两者还是有很大区别的,有时候其输出结果甚至非常悬殊. 1. 如何记忆这两个命令 du-Disk Usage df-Disk Free ...
- linux 硬链接占空间吗,硬链接到底占不占用磁盘空间?
硬链接到底占不占用磁盘空间? 查了很多资料都说 硬链接不占用磁盘空间, 于是乎,我做了如下实验,竟意外地发现有的硬链接也占用了磁盘空间!!! 文件系统是 ext4,centos虚拟机. 不多说,往下 ...
- linux磁盘空间不足,但是使用df却发现磁盘空间至少有一半的空间没有使用
linux磁盘空间不足,但是使用df -ah却看到还有近一半的空间,怎么会报磁盘空间不足呢? 其实很简单,因为node节点已经用完了,一个文件对应一个node节点,我们这里的说的空间其实是block, ...
最新文章
- VScode的撤销操作的快捷键
- PaddleClas
- 博士申请 | 日内瓦大学招收机器学习和计算机视觉博士生(年薪35万)
- java反射的优化_请问Java反射的性能为什么比直接调用慢一个数量级左右?
- Linux学习笔记之安装mplayer过程详解
- Python程序开发——第三章 列表与元组
- AttributeError: ‘str‘ object has no attribute ‘copy
- 傅里叶变换的终极解释上
- SPMetal语法用法
- 基于遗传算法(deap)的配词问题与deap框架
- 外文文献翻译一条龙 -对于毕设翻译贼有用
- 记一次perl使用lwp获取结果为乱码
- Linux - 一次性计划任务之at命令使用
- [Android]天气App 1
- 部署阿里云盘的目录文件列表程序教程
- 物联网开发笔记(50)- 使用Micropython开发ESP32开发板之控制HC-SR501人体红外感应传感器
- 日本寿司第一人有多夸张?米饭用扇子降温,学徒十年才有资格煎蛋
- 艾永亮:超级产品战略助戴森品牌C位出道,它却在汽车行业栽跟头
- Spring 事务的属性
- 大华SDK二次开发,JAVA