Времена запроса MySQL для настройки отличаются каждый раз

versionFlag=`grep "^1.*" /tmp/test | wc -l`

versionFlag затем установлен на 0. Любые данные в международных матчах, versionFlag установлен на количество строк то соответствие, таким образом,

if [ $versionFlag == 0 ] ; then
  echo false
else
  echo true 
fi

править: это может быть сделано даже проще

versionFlag=$(grep "^1.*" /tmp/test -c)

который возвратит количество экземпляров в файле

2
задан 14 July 2011 в 21:07
2 ответа

Скорее всего, сервер делает другие разные вещи в фоновом режиме. Запросы MySQL очень затронуты IO, и беспорядки в форме других процессов, выполняющих работу IO над машиной, могут значительно изменить времена запроса.

Удостоверьтесь, что Вы выполняете это на изолированном сервере, если Вы хотите повторяемые сравнительные тесты.

0
ответ дан 3 December 2019 в 15:55

Другая альтернатива наличию нетронутой и неиспорченной среды должна неоднократно выполнять Ваш запрос (как в, сотни времен) и делать некоторый статистический анализ Ваших результатов. Ключ должен изолировать любые объединяющие переменные (запускающий тесты на той же машине с тем же кодом лесов, и без любой предвзятости в другом выполнении задач (трудный, я знаю). Можно затем сделать вероятностные заключения относительно того, лучше ли конкретный запрос, чем некоторый другой (хотя определение количества точного улучшения чревато опасностью).

Или можно просто использовать EXPLAIN <query>, который покажет Вам план запросов и даст Вам, очень хорошая идея которых из двух запросов "лучше".

0
ответ дан 3 December 2019 в 15:55

Теги

Похожие вопросы