您的位置:首页技术文章

mysql中如何查看表空间

【字号: 日期:2023-02-05 11:01:54浏览:8作者:猪猪
目录
  • mysql 查看表空间
  • mysql 临时表空间不足解决
    • 查找思路以及解决方案
  • 总结

    mysql 查看表空间

    主要是查看创建的库和系统自带的库大小

     - SELECT table_schema,
             concat(sum(round(data_length / (1024 * 1024), 2)), "MB")  data_length,
             concat(sum(round(index_length / (1024 * 1024), 2)), "MB") index_length,
             concat(sum(round(round(data_length + index_length) / (1024 * 1024), 2)), "MB")total_size FROM information_schema.TABLES group by  
       table_schema;

    mysql 临时表空间不足解决

    当数据量过大时,通过工具(sqlYog、Navicat)查询表数据时,

    会报Got error 28 from storage engine错误

    详情截图如下

    网上搜寻好解决方法,好多都是直接清空临时表空间,感觉不可以行,如果是重要数据,仅仅因为内存不足,清空表空间,造成数据丢失,就得不偿失了,经过多方搜寻,

    查找思路以及解决方案

    1.进入mysql自带的临时表空间目录,linux一般为:mysql/data下:cd usr/local/mysql

    2.查看占用内存情况:du -sh *

    3.占用40g内存的即为表数据存放处,如不是重要数据,清空里面的数据即可(数据库中的数据也同样会消失)

    4.如是重要数据,修改my.cnf文件(一般再mysql安装目录下)在mysqld下面添加tmpdir=/home/mysql (/home/mysql`为自己自定义的表空间)

    5.重启mysql,会发现,可以正常使用

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

    标签: MySQL