SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 18.11.2011 15:33:53

simple
Активист
Зарегистрирован: 25.11.2010
Сообщений: 168

MyISAM и транзакции

Добрый день. Есть например две таблицы, tab_a только для чтения(следовательно MyISAM) и tab_b для вставок и обновления и чтения (InnoDB). Что произойдет с таблицей tab_a если в транзакции сделать запрос SELECT из двух этих таблиц методом JOIN например. Заблокируется  ли таблица tab_a для чтения другому процессу который например выполняется в то же время?
Спасибо.

Отредактированно simple (18.11.2011 15:35:21)

Неактивен

 

#2 18.11.2011 19:18:22

Neval
Гуру
Откуда: Киев
Зарегистрирован: 11.03.2008
Сообщений: 449

Re: MyISAM и транзакции

Для других SELECT таблица будет доступна, а для изменения данных - заблокирована. В Вашем случае, я так понимаю, это как раз нужный эффект smile


Человек без чувства юмора - не серьёзный человек wink

Неактивен

 

#3 18.11.2011 21:57:58

simple
Активист
Зарегистрирован: 25.11.2010
Сообщений: 168

Re: MyISAM и транзакции

Все понятно, спасибо. Для меня главное чтобы она читалась другими процессами, изменение этой таблицы не предусмотрено логикой моего приложения, так как она только для чтение.

PS. заметил что InnoDB на чтение тратит меньше времени чем MyISAM. Делал выборку из таблицы с 10к записей SELECT*FROM table;

Почему так?

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson