zoukankan      html  css  js  c++  java
  • MySql 常用语句

    MySql 常用语句

    -- 查看当前打开的表
    SHOW OPEN TABLES WHERE IN_USE > 0;
    
    -- 查看当前的MYSQL执行进程详细
    SHOW FULL PROCESSLIST;
    
    -- 结束某个进程
    kill pid
    
    -- 命令是用来查看当前运行的所有事务:
    SELECT * FROM information_schema.INNODB_TRX;
    
    -- 命令是用来查看当前出现的锁;
    SELECT * FROM information_schema.INNODB_LOCKs;
    
    -- 命令是用来查看锁等待的对应关系;
    SELECT * FROM information_schema.INNODB_LOCK_waits;
    
    -- 查看每个表
    SHOW TABLE STATUS;
    
    -- 查看表状态明细
    SELECT * FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_SCHEMA = 'dss' and table_name='AC_DOOR_ACCESS_RECORD'
    ORDER BY TABLE_ROWS DESC;
    
    -- 删除表的全部数据
    delete from table_name;
    1.对于MyISAM会立刻释放磁盘空间(应该是做了特别处理,也比较合理)
    2.InnoDB不会释放磁盘空间
    
    -- 带条件的删除
    delete from table_name where xxx
    1.不管是 Innodb 还是MyISAM都不会释放磁盘空间
    2.delete操作以后使用optimize table table_name会立刻释放空间
    3.不管是Innodb还是MyISAM,所以想要达到清理数据的目的,请delete以后执行optimize table操作
    4.delete from 表以后虽然未释放磁盘空间,但是下次插入数据的时候,仍然可以使用这部分空间。
    
    -- mysql优化表释放表空间
    法一:
    optimize table table_name;
    这是我们经常见到的方法,这里就不在过多介绍。
    
    方法二:
    alter table table_name engine=engine_name;
    该方法通常用于切换表的引擎,例如MyISAM转为InnoDB,但是同样适用于释放表空间,
    只不过切换后的引擎和原来的engine相同罢了。 注意事项
    1.这两种方式都适用于我们常用的表,myisam和innodb。 2.优化表的时候会锁表,数据表越大,耗时越长,因此不要在网站忙时进行表优化。 方法三: truncate table table_name; 会保留表结构,立刻释放表空间,表空间和索引占用的空间恢复如初,但是会删除所有数据,删除速度快。
  • 相关阅读:
    iOS开发-Scheduler attach ERROR when replacing an existing executor !!! id:88
    多层导航栏下的登陆注销架构
    iOS开发-功能篇-静态库
    iOS开发-UI篇-AutoLayout
    iOS开发-数据篇-sqlite存储
    零碎知识整理-外链应用
    零碎知识整理
    iOS开发-功能篇-国际化|NSUserDefaults
    iOS开发-底层篇-Class详解
    swift可选隐式可选类型
  • 原文地址:https://www.cnblogs.com/rinack/p/14151703.html
Copyright © 2011-2022 走看看