Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
Оптимизация всех таблиц БД MySQL
Чтобы объединить фрагментированные записи и избавиться от потерь пространства, происходящих из-за удаления и обновления записей, необходимо воспользоваться командой MySQL OPTIMIZE TABLE. Здесь представлена универсальная процедура оптимизации всех таблиц базы данных.
$db_host = '127.0.0.1';
$db_user = 'mysql';
$db_pass = 'mysql_password';
$db_name = 'myBase'
set_time_limit(0);
mysql_connect($db_host, $db_user, $db_pass) or die(mysql_error() . "\n\n");
mysql_select_db($db_name) or die(mysql_error() . "\n\n");
$r = mysql_query("SHOW TABLES");
$q = "LOCK TABLES";
while($row = mysql_fetch_row($r))
{
$table[] = $row[0];
$q .= " " . $row[0]." WRITE,";
}
$q = substr($q,0,strlen($q)-1);
mysql_query($q);
print "База данных заблокирована для чтения/записи.<br>\n";
foreach($table as $value)
{
$q = "OPTIMIZE TABLE ".$value;
print $q; flush();
mysql_query($q) or die("QUERY: \"$q\" " . mysql_error() . "\n\n");
}
mysql_query("UNLOCK TABLES");
print "База данных оптимизированна и разблокированна.<br>\n";
.
Прокомментировать/Отблагодарить