前几天因为MySQL数据库部分数据损坏原因,我尝试了下恢复数据,之后整理以下文档,供各位参考,以备各位同事以后如有类似问题,可以少走些弯路,尽快解决问题。 环境:Windows2003 数据库:MySQL 损坏数据文件名:function_products 将数据库内容物理文件直
| @@######@@ |
<p>注:此为记录我当时操作的全部过程<br>d:\documents and settings\administrator>c:<br>c:\>cd mysql<br>c:\mysql>cd data<br>c:\mysql\data>cd hw_enterprice<br>c:\mysql\data\hw_enterprice>myisamchk function_products.frm<br>'myisamchk' 不是内部或外部命令,也不是可运行的程序或批处理文件。<br>c:\mysql\data\hw_enterprice>cd\<br>c:\>cd mysql<br>c:\mysql>cd bin<br>注:查看myisamchk的帮助信息<br>c:\mysql\bin>myisamchk<br>myisamchk  ver 2.6 for win95/win98 at i32<br>by monty, for your professional use<br>this software comes with no warranty: see the public for details.</p>
<div class="aritcle_card">
<a class="aritcle_card_img" href="/xiazai/code/616">
<img src="https://img.php.cn/upload/webcode/000/000/000/58a41a8ba1c18672.png" alt="双轨制会员管理系统 v9.1">
</a>
<div class="aritcle_card_info">
<a href="/xiazai/code/616">双轨制会员管理系统 v9.1</a>
<p>双轨制会员管理系统是一个以asp+access进行开发的双轨制直销系统源码,要求很低,容易维护。
后台路径:/admin
后台用户名和密码均为:admin
9.1版更新内容:
1、增加了操作余额前自动备份数据库,如果操作成功,则自动删除备份的数据库;如果操作有页面错误导致不成功,则会自动恢复到备份的数据库。这样运行过程中,即使是程序错误,也不用担心数据丢失了。
2、增加会员登录首</p>
<div class="">
<img src="/static/images/card_xiazai.png" alt="双轨制会员管理系统 v9.1">
<span>843</span>
</div>
</div>
<a href="/xiazai/code/616" class="aritcle_card_btn">
<span>查看详情</span>
<img src="/static/images/cardxiayige-3.png" alt="双轨制会员管理系统 v9.1">
</a>
</div>
<DIV align=left>description, check and repair of isam tables.<br>used without options all tables on the command will be checked for errors<br>usage: myisamchk [options] tables[.myi]</DIV><DIV align=left>global options:<br>  -#, --debug=...     output debug log. often this is 'd:t:o,filename'<br>  -?, --help          display this help and exit.<br>  -o, --set-variable var=option<br>                      change the value of a variable. please note that<br>                      this option is deprecated; you can set variables<br>                      directly with '--variable-name=value'.<br>  -t, --tmpdir=path   path for temporary files<br>  -s, --silent        only print errors.  one can use two -s to make<br>                      myisamchk very silent<br>  -v, --verbose       print more information. this can be used with<br>                      --description and --check. use many -v for more verbosity!</DIV><DIV align=left>  -v, --version       print version and exit.<br>  -w, --wait          wait if table is locked.</DIV><DIV align=left>check options (check is the default action for myisamchk):<br>  -c, --check         check table for errors<br>  -e, --extend-check  check the table very throughly.  only use this in<br>                      extreme cases as myisamchk should normally be able to<br>                      find out if the table is ok even without this switch<br>  -f, --fast          check only tables that haven't been closed properly<br>  -c, --check-only-changed<br>                      check only tables that have changed since last check<br>  -f, --force         restart with '-r' if there are any errors in the table.<br>                      states will be updated as with '--update-state'<br>  -i, --information   print statistics information about table that is checked<br>  -m, --medium-check  faster than extend-check, but only finds 99.99% of<br>                      all errors.  should be good enough for most cases<br>  -u  --update-state  mark tables as crashed if you find any errors<br>  -t, --read-only     don't mark table as checked</DIV><DIV align=left>repair options (when using '-r' or '-o')<br>  -b, --backup        make a backup of the .myd file as 'filename-time.bak'<br>  --correct-checksum  correct checksum information for table.<br>  -d, --data-file-length=#  max length of data file (when recreating data<br>                      file when it's full)<br>  -e, --extend-check  try to recover every possible row from the data file<br>                      normally this will also find a lot of garbage rows;<br>                      don't use this option if you are not totally desperate.<br>  -f, --force         overwrite old temporary files.<br>  -k, --keys-used=#   tell myisam to update only some specific keys. # is a<br>                      bit mask of which keys to use. this can be used to<br>                      get faster inserts!<br>  -r, --recover       can fix almost anything except unique keys that aren't<br>                      unique.<br>  -n, --sort-recover  forces recovering with sorting even if the temporary<br>                      file would be very big.<br>  -p, --parallel-recover<br>                      uses the same technique as '-r' and '-n', but creates<br>                      all the keys in parallel, in different threads.<br>                      this is alpha code. use at your own risk!<br>  -o, --safe-recover  uses old recovery method; slower than '-r' but can<br>                      handle a couple of cases where '-r' reports that it<br>                      can't fix the data file.<br>  --character-sets-dir=...<br>                      directory where character sets are<br>  --set-character-set=name<br>                      change the character set used by the index<br>  -q, --quick         faster repair by not modifying the data file.<br>                      one can give a second '-q' to force myisamchk to<br>                      modify the original datafile in case of duplicate keys<br>  -u, --unpack        unpack file packed with myisampack.</DIV><DIV align=left>other actions:<br>  -a, --analyze       analyze distribution of keys. will make some joins in<br>                      MySQL faster.  you can check the calculated distribution<br>                      by using '--description --verbose table_name'.<br>  -d, --description   prints some information about table.<br>  -a, --set-auto-increment[=value]<br>                      force auto_increment to start at this or higher value<br>                      if no value is given, then sets the next auto_increment<br>                      value to the highest used value for the auto key + 1.<br>  -s, --sort-index    sort index blocks.  this speeds up 'read-next' in<br>                      applications<br>  -r, --sort-records=#<br>                      sort records according to an index.  this makes your<br>                      data much more localized and may speed up things<br>c:\mysql\bin>myisamchk c:\mysql\data\hw_enterprice\function_products.frm<br>myisamchk: error: 'c:\mysql\data\hw_enterprice\function_products.frm' is not a m<br>yisam-table</DIV><DIV align=left>c:\mysql\bin>myisamchk c:\mysql\data\hw_enterprice\function_products.myi<br>checking myisam file: c:\mysql\data\hw_enterprice\function_products.myi<br>data records:   85207   deleted blocks:      39<br>myisamchk: warning: table is marked as crashed<br>myisamchk: warning: 1 clients is using or hasn't closed the table properly<br>- check file-size<br>- check key delete-chain<br>- check record delete-chain<br>myisamchk: error: record delete-link-chain corrupted<br>- check index reference<br>- check data record references index: 1<br>- check data record references index: 2<br>- check data record references index: 3<br>- check record links<br>myisamchk: error: wrong bytesec: 0-195-171 at linkstart: 841908<br>myisam-table 'c:\MySQL\data\hw_enterprice\function_products.myi' is corrupted<br>fix it using switch "-r" or "-o" </DIV>
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号