带你快速了解MyISAM启动选项MySQL综合 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【meiwen.anslib.com - 电脑资料】

   

    下列对MySQLd 的选项可用来改变MyISAM表的行为:

    ·--myisam-recover=mode

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

带你快速了解MyISAM启动选项MySQL综合

    ·--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启动选项MySQL综合》(http://meiwen.anslib.com)。如果这些条件的任何一个为真,下列情况发生:

    ·表被查错。

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

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

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

    如果恢复不能够从先前完成的语句里恢复所有行,而且你不能在--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脚本,它自动把这些文件从数据库目录移到备份媒质上。

    关 键 字:MYSQL

    相关文章:

    master数据库中两个非常有用的存储过程

    如何利用存储过程和触发器来管理数据

    轻松应对创建存储过程时出现失败的情况

    深入了解存储过程的编写经验和优化措施

    通过实例讲解由浅入深学会存储过程

   

最新文章