Время обновления mysql между innodb и myisam - PullRequest
0 голосов
/ 02 марта 2011

Я провел тест для таблицы (с innodb и myisam), в которой для имитации 2 набора обновлений используется PHP, как следует

set 1. // выполнить 1000 раз для ($ i = 0; $ i <1000; $ i ++) {обновить с помощью pdo} </p>

set 2. // выполнить 1 раз {обновить с помощью pdo}

обычно каждое обновление занимает ~ 0,001x сек с myisam и ~ 0,03х сек с innodb, поэтому неудивительно, что набор 1 использует 1000 раз больше, чем набор 2, однако во время тестирования набора 1 я открываю набор 2 в другом браузере Windows, я ожидаю, что результат будет возвращен в течение общего времени набора 1, но кажется, что он ожидает завершения набора 1, а не вставляет в очередь во время выполнения набора 1.

Я сделал что-то не так или моя концепция не так? И время обновления медленное? (Моя конфигурация компьютера: AMD Athlon 64 4200+, 2G RAM, Windows 7, MySQL 5.5.9, nginx 0.8.5, PHP 5.3.5)

Большое спасибо ~!

1 Ответ

1 голос
/ 02 марта 2011

Для таблиц MyISAM одновременные вставки являются проблемой. См

http://dev.mysql.com/doc/refman/5.1/en/concurrent-inserts.html

Если вы вставляете в таблицу InnoDB столбец auto_increment, здесь обсуждается проблема блокировки:

http://dev.mysql.com/doc/refman/5.1/en/innodb-auto-increment-handling.html

...