MyISAM表的维护和恢复
本节将讨论如何使用myisamchk检查和修复MyISAM表。
同时,你可以用myisamchk来检查,修复和优化数据库表。下面将讲述如何执行这些操作并建立维护计划。
虽然使用myisamchk很安全,但在操作前做个备份总是个好Idea。
当然也可以使用Sql达到与myisamchk相同的效果:
To check
MyISAM
tables, useCHECK TABLE
.To repair
MyISAM
tables, useREPAIR TABLE
.To optimize
MyISAM
tables, useOPTIMIZE TABLE
.To analyze
MyISAM
tables, useANALYZE TABLE
8.6.2 How to Check MyISAM Tables for Errors
myisamchk tbl_name ,能找到99.99%的错误。不检测Data文件中的Corruption[一般不会出问题].
myisamchk -m tbl_name 能检测出99.999%的错误,checks all index entries for errors and then reads through all rows.
myisamchk -e -i tbl_name
,全部检查,并输出统计信息。
8.6.3 How to Repair MyISAM Tables
使用perror展示错误码对应的描述:如 perror 123 134
Stage 1: Checking your tables
Stage 2: Easy safe repair
myisamchk -r -q tbl_name :快速修复【quick recovery mode】,对Myisam表Index进行修复而不触及.MYD【数据】。
也可用下面:
Make a backup of the data file before continuing.
Use myisamchk -r
tbl_name
(-r
means “recovery mode”). This removes incorrect rows and deleted rows from the data file and reconstructs the index file.If the preceding step fails, use myisamchk --safe-recover
tbl_name
. Safe recovery mode uses an old recovery method that handles a few cases that regular recovery mode does not (but is slower).
Stage 3: Difficult repair 【 index file is destroyed or contains incorrect ,即.MYI文件出了问题,或or if the index file is missing】
1.移动数据文件到其他地方
2. Use the table description file to create new (empty) data and index files
TRUNCATE TABLE tbl_name
;
3.再将数据文件拷回
4.myisamchk -r should work.
5.重启Msyql
Stage 4: Very difficult repair【the .frm
description file has also crashed】
1.从之前备份的.frm文件恢复,然后按照Stage3的方式处理
2.如果没有备份,但你知道表怎么被创建,则可以在其他服务器上创建该表,然后将.frm和.MYI文件拷到该服务器上,之后执行Stage2的操作,重建索引文件。
Setting Up a MyISAM Table Maintenance Schedule
You should also check your tables regularly during normal system operation. For example, you can run a cron job to check important tables once a week, using a line like this in a crontab
file:
35 0 * * 0/path/to/myisamchk
--fast --silent/path/to/datadir
/*/*.MYI
MyISAM表的维护和恢复的更多相关文章
- mysql 开发进阶篇系列 34 工具篇 mysqlcheck(MyISAM表维护工具)
一.概述 mysqlcheck客户端工具可以检查和修复MyISAM表,还可以优化和分析表.实际上,它集成了mysql工具中check,repair,analyze,optimize功能,对于check ...
- (转)Mysql数据库管理 表的维护
原文:http://t.dbdao.com/archives/mysql%E6%95%B0%E6%8D%AE%E5%BA%93%E7%AE%A1%E7%90%86-%E8%A1%A8%E7%9A%84 ...
- centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复
centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复 有时候我们会碰到这样的业务场景: 1.将大的数据库恢复到本地进行业务测试 ...
- RMAN详细教程(二):备份、检查、维护、恢复
RMAN详细教程(一):基本命令代码 一.创建增量备份 增量备份级别为0-4,但为方便备份管理,oracle建议只限于0级和1级. 1.差异增量备份(differential incremental ...
- MySQL优化篇系列文章(二)——MyISAM表锁与InnoDB锁问题
我可以和面试官多聊几句吗?只是想... MySQL优化篇系列文章(基于MySQL8.0测试验证),上部分:优化SQL语句.数据库对象,MyISAM表锁和InnoDB锁问题. 面试官:咦,小伙子,又来啦 ...
- 锁(MySQL篇)—之MyISAM表锁
前言 锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,除传统的计算资源(如CPU.RAM.I/O等)的争用以外,数据也是一种供许多用户共享的资源.如何保证数据并发访问的一致性.有效性是 ...
- MyISAM表加字段的特殊方法
最近一个统计系统的大表需要加字段,表的引擎是myisam,表大小在3亿,物理文件在106G.想想都蛋疼.那么这种情况下怎么把字段撸上去呢? 1. 首先想到了<高性能MySQL>提到的直接更 ...
- MyISAM表杂记实验
一.本文说明 由于刚学mysql所以动手做了一些实验. 二.实验内容 1.验证MyISAM有AUOT_INCREMENT coloumn功能 ----在这里是对现有表t,增加一个主键----mysql ...
- 【转】MYISAM表批量压缩
关于对MYISAM表的压缩,可以使用myisampack和myisamchk完成(myisampack完之后必须进行myisamchk才能使用压缩后的表,而且是只读的), 其详细地用法可以参考官方文档 ...
随机推荐
- Android 实现简单音乐播放器(一)
今天掐指一算,学习Android长达近两个月了,今天开始,对过去一段时间的学习收获以及遇到的疑难杂症做一些总结. 简单音乐播放器是我自己完成的第一个功能较为完整的APP,可以说是我的Android学习 ...
- java常量池存放在哪里
运行以下方法: public class Test { public static void main(String[] args) { String str = "abc"; c ...
- H5项目常见问题汇总及解决方案
H5项目常见问题汇总及解决方案 H5 2015-12-06 10:15:33 发布 您的评价: 4.5 收藏 4收藏 H5项目常见问题及注意事项 Meta基础知识: H5页 ...
- c# random string
var randomString= Path.GetRandomFileName(); 返回 ar1opgzw.1gp 详细 http://www.dotnetperls.com/random-str ...
- SVN版本冲突解决
解决冲突有三种选择: A.放弃自己的更新,使用svn revert(回滚),然后提交.在这种方式下不需要使用svn resolved(解决) B.放弃自己的更新,使用别人的更新.使用最新获取的版本覆盖 ...
- BZOJ 3362: [Usaco2004 Feb]Navigation Nightmare 导航噩梦
Description 给你每个点与相邻点的距离和方向,求两点间的曼哈顿距离. \(n \leqslant 4\times 10^4\) . Sol 加权并查集. 像向量合成一样合并就可以了,找 \( ...
- 把ZenCart在线商店搭建到本地
前些日子,要给在线的zencart商店做一些小改动,需要安装一个插件.大家都知道,zencart有很多插件选用,兼容性也好坏不一,直接在正在运营的网站程序上修改,难免会影响到客户体验,出什么差错了代价 ...
- Google java style
这里主要是记录关于java style的笔记. 1,Google的. 博客链接(中文):http://www.cnblogs.com/lanxuezaipiao/p/3534447.html. 官方链 ...
- JAVA调用动态链接库DLL之JNative学习
package com.ehfscliax; import java.io.UnsupportedEncodingException;import java.net.URLEncoder;import ...
- SqlServer coalesce函数
SqlServer数据库中coalesce函数用法:在SqlServer2005中有了新的函数,它非常的实用,它就是coalesce函数,此函数可以返回参数中的第一个非空表达式,当你要在N个字段中选取 ...