Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: В базе таблица 6 мб, а на сервере 10гб
 
 автор: verg   (26.03.2011 в 10:48)   письмо автору
 
 

Как может таблица весить 55 гигов...
На сервере балица занимает 55 гигов... за день +10гб
Файл battle.MYD (таблица называет battle) весит 55 гигов. (этот файл находится в папке var/lib/mysql/dbname)
Как можно чистить такую бд, учитывая что записи можно удалить только за предыдущий день.
А за день этот файл увеличитвается на 10 гигов примерно.
ЕСли сейчас нажать обзор и посмотреть содержимое той таблицы то там всего видно 100 листов по 30 записей на каждом. Она весит в phpmyadmin всего 6 метров, эта таблица. А на сервере файл с именем этой таблицы battle.MYD весит 10 гб.... Как такое может быть?

  Ответить  
 
 автор: cheops   (26.03.2011 в 10:58)   письмо автору
 
   для: verg   (26.03.2011 в 10:48)
 

Перво-наперво проведите оптимизацию таблицы. Таблица может весить бесконечно много, так как место из под удаленных записей может не удаляться и таблица остается фрагментированной. Устранить эти дыры можно оптимизацией таблицы.

>А за день этот файл увеличитвается на 10 гигов примерно.
Что это за таблица? Какие данные в неё складируются.

>ЕСли сейчас нажать обзор и посмотреть содержимое той таблицы то там всего видно 100 листов
>по 30 записей на каждом.
phpMyAdmin пропускает часть страниц, посмотрите номер последней - какой он 30 или больше?

>Она весит в phpmyadmin всего 6 метров, эта таблица.
Посмотрите сколько занимают накладные данные?

  Ответить  
 
 автор: verg   (26.03.2011 в 11:11)   письмо автору
 
   для: cheops   (26.03.2011 в 10:58)
 

>Перво-наперво проведите оптимизацию таблицы. Таблица может весить бесконечно много, так как место из под удаленных записей может не удаляться и таблица остается фрагментированной. Устранить эти дыры можно оптимизацией таблицы.
>
А можно ли написать скрипт, для того чтоб место от удаленных записей удалялось... или что нужно сделать? Нужно фрагментировать таблицу? А как провести оптимизацию таблицы?
Вот так вот shell> myisamchk -r tbl_name или через OPTIMIZE TABLE?


>>А за день этот файл увеличитвается на 10 гигов примерно.
>Что это за таблица? Какие данные в неё складируются.
>
Таблица игры... там просто данные простые, текстовые.

>>ЕСли сейчас нажать обзор и посмотреть содержимое той таблицы то там всего видно 100 листов
>>по 30 записей на каждом.
>phpMyAdmin пропускает часть страниц, посмотрите номер последней - какой он 30 или больше?
>
126

>>Она весит в phpmyadmin всего 6 метров, эта таблица.
>Посмотрите сколько занимают накладные данные?
А как посмотреть это?

  Ответить  
 
 автор: cheops   (26.03.2011 в 11:26)   письмо автору
 
   для: verg   (26.03.2011 в 11:11)
 

>А можно ли написать скрипт, для того чтоб место от удаленных записей удалялось... или что
>нужно сделать? Нужно фрагментировать таблицу?
Можно, но сначало нужно разобраться в этом ли дело.

>А как провести оптимизацию таблицы?
>Вот так вот shell> myisamchk -r tbl_name или через OPTIMIZE TABLE?
Да, или через phpMyAdmin в операциях или в списке таблиц (выбрать таблицу и соответствующее значение в выпадающем списке).

  Ответить  
 
 автор: verg   (26.03.2011 в 11:52)   письмо автору
 
   для: cheops   (26.03.2011 в 11:26)
 

Выполнил оптимизацию таблицы... размер её в phpmyadmin стал меньше на 4мб.
На диске размер так и остался.. в данный момент таблица, точнее тот файл весит 11гб... каждые 10 мин... на 100мб больще становится.

Как хотяб раз в день приводить размер данного файла к настоящим размерам таблица. Чтоб он весил хотя 10 мб... если таблица в phpmyaqmin весит всего 3 мб? А то 11 гб - это слишком.

  Ответить  
 
 автор: cheops   (26.03.2011 в 12:02)   письмо автору
 
   для: verg   (26.03.2011 в 11:52)
 

А как данные в таблицу добавляются (INSERT, UPDATE)? Помоему что не нормальное происходит.

PS Какая версия MySQL используется?
PPS Если не сложно, выполните оператор SHOW STATUS TABLE по отношению к таблице - какой результат возвращается?

  Ответить  
 
 автор: cheops   (26.03.2011 в 11:30)   письмо автору
 
   для: verg   (26.03.2011 в 11:11)
 

>126
Хм... т.е. у вас 3780 записей? Вообще-то не должно быть много данных, 6 Мб самое оно.

>>>Она весит в phpmyadmin всего 6 метров, эта таблица.
>>Посмотрите сколько занимают накладные данные?
>А как посмотреть это?
Откройте список таблиц базы данных и посмотрите столбец "Накладные расходы" - какие они у этой таблицы?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования