MYSQL数据库探讨Mysql中OPTIMIZE TABLE的作用详解
《MYSQL数据库探讨Mysql中OPTIMIZE TABLE的作用详解》要点: MYSQL必读当您的库中删除了大量的数据后,您可能会发现数据文件尺寸并没有减小.这是因为删 除操作后在数据文件中留下碎片所致.Discuz! 在系统数设置界面提供了数据表优化的功能,可以去除删除操作后留下的数据文件碎片,减小文件尺寸,加快未来的读写操作.您只要在做完批量删除,或定期(如 每一两个月)进行一次数据表优化操作即可. MYSQL必读OPTIMIZE TABLE通过制作原来的表的一个临时副原来工作 MYSQL必读OPTIMIZE TABLE语法 MYSQL必读如果您已经删除了表的一大部分,或者如果您已经对含有可变长度行的表(含有 VARCHAR,BLOB或TEXT列的表)进行了很多更改,则应使用OPTIMIZE TABLE.被删除的记录被坚持在链接清单中,后续的INSERT操作会重新使用旧的记录位置.您可以使用OPTIMIZE TABLE来重新利用未使用的空间,并整理数据文件的碎片. MYSQL必读在多数的设置中,您根本不必要运行OPTIMIZE TABLE.即使您对可变长度的行进行了大量的更新,您也不必要经常运行,每周一次或每月一次即可,只对特定的表运行. MYSQL必读OPTIMIZE TABLE只对MyISAM,BDB和InnoDB表起作用. MYSQL必读对于MyISAM表,OPTIMIZE TABLE按如下方式操作: MYSQL必读1. 如果表已经删除或分解了行,则修复表. MYSQL必读对于BDB表,OPTIMIZE TABLE目前被映射到ANALYZE TABLE上.对于InnoDB表,OPTIMIZE TABLE被映射到ALTER TABLE上,这会重建表.重建操作能更新索引统计数据并释放成簇索引中的未使用的空间.请参见13.5.2.1节,“ANALYZE TABLE语法”. MYSQL必读使用―skip-new或―safe-mode选项可以启动mysqld.通过启动mysqld,您可以使OPTIMIZE TABLE对其它表类型起作用. MYSQL必读注意,在OPTIMIZE TABLE运行过程中,MySQL会锁定表. MYSQL必读OPTIMIZE TABLE语句被写入到二进制日志中,除非使用了自选的NO_WRITE_TO_BINLOG关键词(或其别号LOCAL).已经这么做了,因此,用于 MySQL服务器的OPTIMIZE TABLE命令的作用相当于一个复制主服务器,在默认情况下,这些命令将被复制到复制从属服务器中. 欢迎参与《MYSQL数据库探讨Mysql中OPTIMIZE TABLE的作用详解》讨论,分享您的想法,编程之家PHP学院为您提供专业教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |