利用PHP脚本辅助MySQL数据库管理3-删除重复表索引
Posted coffee_cn
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用PHP脚本辅助MySQL数据库管理3-删除重复表索引相关的知识,希望对你有一定的参考价值。
<?php $dbi = new Dbmysql; $dbi->dbh = ‘mysql://root:[email protected]/coffeetest‘; $map = array(); $dbi->fetchMap("SHOW TABLES", $map); $tables = array_keys($map); for($i=0; $i<count($tables); $i++){ echo($tables[$i]."\n"); $sql = "SHOW INDEX FROM ".$tables[$i]; $list = $dbi->fetchAll($sql); $indexs = array(); foreach($list as $item){ $indexs[$item[‘Key_name‘]][] = $item[‘Column_name‘]; } $j = 0; $list = array(); foreach($indexs as $key=>$val){ $list[] = array(‘j‘=>$j, ‘key‘=>$key, ‘val‘=>implode(",",$val)); $j++; } $count = count($list) - 1; for($j=$count; $j>=0; $j=$j-1){ $me = $list[$j]; foreach($list as $item){ if($item[‘j‘]<$me[‘j‘] && $item[‘val‘]==$me[‘val‘]){ echo("\t".$j."\t".$me[‘key‘]."\t".$me[‘val‘]."\n"); $sql = "ALTER TABLE ".$tables[$i]." DROP INDEX `".$me[‘key‘]."`"; $dbi->execute($sql); } } } } ?>
以上是关于利用PHP脚本辅助MySQL数据库管理3-删除重复表索引的主要内容,如果未能解决你的问题,请参考以下文章