Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: HELP
Форумы портала PHP.SU » » Вопросы новичков » HELP

Страниц (1): [1]
 

1. event - 09 Февраля, 2015 - 23:28:40 - перейти к сообщению
Привет.
Есть таблица на 1 млн. записей.

Есть SELECT:
PHP:
скопировать код в буфер обмена
  1. $result = $mysqli->query("SELECT id, name FROM lists WHERE categoryid = " . $categoryid . " ORDER BY id DESC LIMIT 100");


Таблица:

На поля categoryid, textid установлены идексы.

Но SELECT долго делается, хотя железо хорошее. Почему так? Помогите ускорить выборку.

Таблица весит вообще фигню, 111 мегабайт.
2. KingStar - 09 Февраля, 2015 - 23:31:32 - перейти к сообщению
а тип таблицы какой?
3. event - 09 Февраля, 2015 - 23:35:08 - перейти к сообщению
KingStar, MyISAM
4. KingStar - 09 Февраля, 2015 - 23:35:51 - перейти к сообщению
видимо понял, у тебя MyISAM
переведи в InnoDB
(Добавление)
а если позволяет - то в Memory )))
(Добавление)
но Memory при падении субд, или ребуте сервера - пропадут все данные
5. event - 09 Февраля, 2015 - 23:39:38 - перейти к сообщению
KingStar, Memory точно нет.

А InnoDB что быстрее? Я читал что MyISAM быстрее чем InnoDB, но в InnoDB лучшее хранение данных, более безопасное.
6. KingStar - 09 Февраля, 2015 - 23:40:23 - перейти к сообщению
MyISAM бысрее работает на запись, а InnoDB - на чтение
(Добавление)
для безопасности хранения делают бекап )))
7. event - 09 Февраля, 2015 - 23:43:35 - перейти к сообщению
KingStar, понял. Теперь бы еще знать как быстро переганать?

А то у меня идея сделать это PHP-циклом, с одной таблицы (myisam) переписывать уже в другую (innodb) или есть варианты попроще?
8. KingStar - 09 Февраля, 2015 - 23:45:34 - перейти к сообщению
сделай бекап таблицы
удали её
создай новую с новым типом и теми же полями
и загрузи назад бекап
(Добавление)
вот пища для размышления http://www[dot]opennet[dot]ru/tips/1958_[dot][dot][dot]sam_innodb[dot]shtml
9. event - 10 Февраля, 2015 - 00:00:08 - перейти к сообщению
KingStar, все спасибо. Теперь все летает, как самолет прям. Подмигивание

 

Powered by ExBB FM 1.0 RC1