|
|
автор: rusty_angel (04.04.2008 в 14:46) |
|
|
для: webwizard
(04.04.2008 в 11:09)
| | С тонкостями - только опыт наверно. Во всяком случае - точно не тема на форуме, а очень серьёзная книга, а лучше две. Одна о базах данных вцелом, и одна о mysql. А так - да, натравливать на подозрительные запросы EXPLAIN. | |
|
|
|
|
|
|
|
для: cheops
(04.04.2008 в 11:24)
| | Спасибо всем за ответы. Очень помогли. | |
|
|
|
|
|
|
|
для: webwizard
(04.04.2008 в 11:09)
| | Она как раз и позволяет проверить используются индексы или нет. | |
|
|
|
|
|
|
|
для: KirillKiev
(04.04.2008 в 10:42)
| | Спасибо за ответ.
Мне знакома данная команда, но я хотел разобраться с тонкостью использования индексов. | |
|
|
|
|
|
|
|
для: webwizard
(04.04.2008 в 10:28)
| | есть такая команда в мускуле explain - используется перед селектом и показывает как мускул будет обрабатывать вашь запрос
http://www.mysql.ru/docs/man/EXPLAIN.html
очччень полезная команда именно в смысле оптимизации запросов | |
|
|
|
|
|
|
|
для: rusty_angel
(04.04.2008 в 10:22)
| | А что значит "плохие запросы"? "Плохие таблицы"?
И на что следует обращать внимание при низкой производительности?
Вроде в моём случае запросы вполне нормальные. Да и таблица содержит всего 7 полей, причём 6-ть из них хранят числовые типы данных, а как мне извество, они выполняются быстрее, чем, строковые типы данных.
Мне кажется как раз в первую очередь на правильное использование индексов. | |
|
|
|
|
автор: rusty_angel (04.04.2008 в 10:22) |
|
|
для: webwizard
(03.04.2008 в 14:54)
| | 1. Для WHERE ... AND ... особой разницы не заметил на тестах (не очень правда, адекватных, надо будет как-нибудь настоящее тестирование провести, по всем правилам). В любом случае, это точно не первое, на что следует обращать внимание, если есть проблемы с производтельностью.
2. Естественно, индексы используются для ORDER и GROUP BY. Какие именно - EXPLAIN расскажет.
3. Не стоит. Если что медленно, то не потому, что запросы "многотабличные", а потому что они плохие и таблицы плохие. | |
|
|
|
|
автор: rusty_angel (04.04.2008 в 10:12) |
|
|
для: Loki
(02.04.2008 в 19:13)
| | Каким образом можно проиграть в скорость PHP, создав правильные индексы? | |
|
|
|
|
|
|
|
для: webwizard
(03.04.2008 в 13:52)
| | А скажите, пожалуйста, имеет ли значение порядок следования индексов?
т.е.
KEY multi (wait, status)
KEY multi (status, wait)
|
В коде страничек встречается и так и так:
SELECT * FROM payment WHERE wait = 1 and status != 3
SELECT * FROM payment WHERE status != 3 and wait != 1
1.Стоит ли приводить всё к одному порядку?
2. Влияет ли как-нибудь на индексы использование конструкций OR, ORDER BY (DESC), GROUP BY и т.п.
3. Как я понимаю, использование многотабличных запросов стоит избегать, если база данных большая? | |
|
|
|
|
|
|
|
для: cheops
(03.04.2008 в 11:39)
| | Спасибо, большое, Cheops.
Я жду от Вас новых книг и желательно объёмных, вообще очень нужно что-то про оптимизацию кода как на php так и при использовании php+mysql
У Вас здоровские книги я советую всем!
Я надеюсь стать таким же профи как и Вы | |
|
|
|
|