以下选项用于mysqld可以用来改变行为的MyISAM
表。有关其他信息,请参见第5.1.7节“服务器命令选项”.
表16.3 MyISAM选项和变量参考
的名字 | Cmd-Line | 选择文件 | 系统无功 | 状态变量 | Var范围 | 动态 |
---|---|---|---|---|---|---|
bulk_insert_buffer_size | 是的 | 是的 | 是的 | 这两个 | 是的 | |
concurrent_insert | 是的 | 是的 | 是的 | 全球 | 是的 | |
delay_key_write | 是的 | 是的 | 是的 | 全球 | 是的 | |
have_rtree_keys | 是的 | 全球 | 没有 | |||
key_buffer_size | 是的 | 是的 | 是的 | 全球 | 是的 | |
log-isam | 是的 | 是的 | ||||
myisam-block-size | 是的 | 是的 | ||||
myisam_data_pointer_size | 是的 | 是的 | 是的 | 全球 | 是的 | |
myisam_max_sort_file_size | 是的 | 是的 | 是的 | 全球 | 是的 | |
myisam_mmap_size | 是的 | 是的 | 是的 | 全球 | 没有 | |
myisam_recover_options | 是的 | 是的 | 是的 | 全球 | 没有 | |
myisam_repair_threads | 是的 | 是的 | 是的 | 这两个 | 是的 | |
myisam_sort_buffer_size | 是的 | 是的 | 是的 | 这两个 | 是的 | |
myisam_stats_method | 是的 | 是的 | 是的 | 这两个 | 是的 | |
myisam_use_mmap | 是的 | 是的 | 是的 | 全球 | 是的 | |
tmp_table_size | 是的 | 是的 | 是的 | 这两个 | 是的 |
以下系统变量影响的行为MyISAM
表。有关其他信息,请参见章节5.1.8,“服务器系统变量”.
用于批量插入优化的树缓存的大小。
请注意这是一个极限每个线程!
不要在写操作之间刷新键缓冲区
MyISAM
表格MySQL在重新创建对象时允许使用的临时文件的最大大小
MyISAM
指数(在修理表
,ALTER TABLE
,或加载数据
).如果文件大小大于此值,则使用键缓存创建索引,但速度较慢。该值以字节为单位给出。设置崩溃自动恢复模式
MyISAM
表。设置恢复表时使用的缓冲区的大小。
如果启动,自动恢复将被激活mysqld与myisam_recover_options
系统变量集。在本例中,当服务器打开一个MyISAM
表,它检查表是否被标记为崩溃,或者表的打开计数变量是否不为0,以及您正在运行外部锁定禁用的服务器。如果这些条件中的任何一个为真,则会发生以下情况:
服务器检查表中的错误。
如果服务器发现错误,它将尝试执行快速表修复(使用排序,而不重新创建数据文件)。
如果修复由于数据文件中的错误(例如,重复键错误)而失败,服务器将再次尝试,这一次将重新创建数据文件。
如果修复仍然失败,服务器将再次尝试使用旧的修复选项方法(不排序地逐行写入)。这种方法应该能够修复任何类型的错误,并且对磁盘空间的要求很低。
如果恢复不能从以前完成的语句中恢复所有行,并且您没有指定力
的值myisam_recover_options
系统变量,自动修复终止,并在错误日志中显示错误消息:
错误:无法修复表:test.g00pages
如果你指定力
,就会写成这样的警告:
警告:修复。/test/g00pages时发现354行中的344行
如果自动恢复值包括备份
,恢复过程将创建具有该表单名称的文件
.你应该有一个cron自动将这些文件从数据库目录移动到备份介质的脚本。tbl_name-datetime
. bak