有哪些方法可以修复mysql表

发布时间:2021-08-09 14:18:58 作者:chen
来源:亿速云 阅读:146

本篇内容主要讲解“有哪些方法可以修复mysql表”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“有哪些方法可以修复mysql表”吧!

  修复mysql表第一种方法:

  shell>mysqlcheck-r-c-o-uuser-ppasswddb_name

  修复mysql表第二种方法,用以下这个脚本,从网上下的,似很管用.将这个脚本放在你的web根目录下,然后从web页面运行这个脚本.

  修复mysql表的方法有哪些

  catrepair.php需要修改$dbuser="root";--->需要修改$dbpw="";--->需要修改$dbname="db_name";-->需要修改#$table="search_profile";mysql_connect($dbhost,$dbuser,$dbpw);mysql_select_db($dbname);if(!get_cfg_var("register_globals")){foreach($HTTP_GET_VARSas$key=>$val){$$key=$val;}}functionchecktable($table,$loops=0){global$db,$nohtml;$result=mysql_query("CHECKTABLE$table");if(!$nohtml){echo"Checkingtable$table";echo"TableOperationTypeText";}else{echo"\n>>>>>>>>>>>>>CheckingTable$table\n";echo"---------------------------------\n";}$error=0;while($r=mysql_fetch_row($result)){if($r[2]=='error'){if($r[3]=="Thehandlerforthetabledoesn'tsupportcheck/repair"){$r[2]='status';$r[3]='Thistabledoesnotsupportcheck/repair/optimize';unset($bgcolor);$nooptimize=1;}else{$error=1;$bgcolor='red';unset($nooptimize);}}else{unset($bgcolor);unset($nooptimize);}if(!$nohtml){echo"$r[0]$r[1]$r[2]$r[3]";}else{echo"$r[0]|$r[1]|$r[2]|$r[3]\n";}}if($error){if(!$nohtml){echo"Repairingtable$table";}else{echo">>>>>>>>>>>>>RepairingTable$table\n";}$result2=mysql_query("REPAIRTABLE$table");if($result2[3]!='OK')$bgcolor='red';elseunset($bgcolor);if(!$nohtml){echo"$result2[0]$result2[1]$result2[2]$result2[3]";}else{echo"$result2[0]|$result[1]|$result2[2]|$result2[3]\n";}}if(($result2[3]=='OK'||!$error)&&!$nooptimize){if(!$nohtml){echo"Optimizingtable$table";}else{echo">>>>>>>>>>>>>OptimizingTable$table\n";}$result3=mysql_query("OPTIMIZETABLE$table");$error=0;while($r3=mysql_fetch_row($result3)){if($r3[2]=='error'){$error=1;$bgcolor='red';}else{unset($bgcolor);}if(!$nohtml){echo"$r3[0]$r3[1]$r3[2]$r3[3]";}else{echo"$r3[0]|$r3[1]|$r3[2]|$r3[3]\n";}}}if($error&&$loops){checktable($table,($loops-1));}}if($check){$tables=mysql_query("SHOWTABLES");if(!$nohtml){echo"";}if($iterations){$iterations--;}while($table=mysql_fetch_row($tables)){if(substr($table[0],-8)!='sessions'){$answer=checktable($table[0],$iterations);if(!$nohtml){echo"";}flush();}}if(!$nohtml){echo"";}}else{echo"DatabaseTableRepairUtilityforDiscuz!(RequireMySQL3.23)"."Thisscriptwillattempttorepaircorrupteddatabases.Whileitcanrepairmostcommonerrors,"."itcannotrepaireverything.Asasidebenefititwillalsooptimizeyourtables."."ThisscriptwascopyrightedbyJelsoftandmodifiedbyCrossdayStudiotomakeitapplyforDiscuz!."."Usage:"."iterations=x(xisthenumberoftimesyouwishforthescripttoattempttorepairabrokentable)"."nohtml=1(Outputtextonlynohtml.Usefulforcronjobsandyouwishtoreceivetextonly)"."check=1(withoutthisyouwillgetthisscreenandnochecking)"."ExampleUsage:"."repair.phphtml=1&check=1(mostcommonusage,willcheckaforumandreturnhtmlresults)"."repair.phpcheck=1&iterations=5(trytorepairdamagedtables5times)"."";}>

到此,相信大家对“有哪些方法可以修复mysql表”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

推荐阅读:
  1. 修复破坏的DUAL表
  2. mysql innodb引擎表非常规修复方法

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mysql

上一篇:ZooKeeper中怎样实现分布式锁

下一篇:React中使用collections时key的重要性是什么

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》