收藏本站 
广告服务 
网站地图 
>> 本频道近100000余篇各类电脑技术、网络技术、软件技术、网页及平面设计等方面的电脑教程,我们的原则:不是精华拒不收录!
先飞电脑技术网技术文章数据库开发Mysql
网络编程 | 网站建设 | 网络技术 | 设计教程 | 软件教学 | 程序开发 | 数据库开发 | 教育认证 | 硬件维护 | 媒体动画 | 机械电子 |

带你快速了解MyISAM启动选项

[ 作者:佚名    转贴自:网络转载    阅读次数:84    更新时间:2007-10-4 12:37:00   录入:刘光勇 ]         
    下列对mysqld 的选项可用来改变MyISAM表的行为:

·--myisam-recover=mode

设置为崩溃MyISAM表自动恢复的模式。

·--delay-key-write=ALL

对任何MyISAM表的写操作之间不要刷新键缓冲区。

注释:如果你要这么做。当表在使用中之时,你应该不使用来自另一个程序的MyISAM表(比如从另一个MySQL服务器或用myisamchk)。这么做会导致索引被破坏。

对使用--delay-key-write的表,使用--external-locking没有帮助。

列系统变量影响MyISAM表的行为:

·bulk_insert_buffer_size

用在块插入优化中的树缓冲区的大小。注释:这是一个per thread的限制。

·(OBSOLETE) myisam_max_extra_sort_file_size

这个参数已经不在MySQL中使用。

·myisam_max_sort_file_size

如果临时文件会变得超过索引,不要使用快速排序索引方法来创建一个索引。注释:这个参数以字节的形式给出。

·myisam_sort_buffer_size

设置恢复表之时使用的缓冲区的尺寸。

如果用--myisam-recover选项启动mysqld,自动恢复被激活。在这种情况下,当服务器打开一个MyISAM表之时,服务器会检查是否表被标注为崩溃,或者表的打开计数变量是否不为0且你正用--skip-external-locking运行服务器。如果这些条件的任何一个为真,下列情况发生:

·表被查错。

·如果服务器发现一个错误,它试着做快速表修复(排序且不重新创建数据文件)。

·如果修复因为数据文件中的一个错误而失败(例如,一个重复键错误),服务器会再次尝试修复,这一次重建数据文件。

· 如果修复仍然失败,服务器用旧修复选项方法再重试一次修复(一行接一行地写,不排序)。这个方法应该能修复任何类型的错误,并且需要很低的磁盘空间。

如果恢复不能够从先前完成的语句里恢复所有行,而且你不能在--myisam-recover选项值指定FORCE,自动修复会终止,并在错误日志里写一条错误信息:

Error: Couldn't repair table: test.g00pages

如果你指定FORCE,取而代之地,类似这样的一个警告被给出:

Warning: Found 344 of 354 rows 
when repairing ./test/g00pages

注释:如果自动恢复值包括BACKUP,恢复进程创建文件并用tbl_name-datetime.BAK形式取名。你应该有一个cron脚本,它自动把这些文件从数据库目录移到备份媒质上。

文章首页【加入到收藏夹】告诉好友】【打印此文】【关闭窗口
  版权声明:本站提供的“带你快速了解MyISAM启动选项”版权归文章所有者,转载请注明出处!
 ·上一篇文章:轻松掌握MySQL中静态表特征      ·下一篇文章:在MySQL数据库中选择存储引擎
相关文章
·带你轻松接触多线索机制概念[108]
·带你轻松了解Oracle架构相关知识[42]
·带你快速了解MyISAM启动选项[84]
·带你轻松的了解 InnoDB的概念[81]
·带你轻松接触13个数据库术语[63]
网站主页 | 收藏本页 | 联系我们 | 广告服务 | 站点地图 | 会员注册 | 招聘信息 | 内容指正

联系QQ:先飞电脑技术网站事务联系QQ,点击可以直接留言. 32933427 电话:13710542091 [世界排名] 鄂ICP备05005890号 先飞电脑教程网