SQLinfo.ru - Все о MySQL

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

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

Вы не зашли.

#1 17.12.2008 13:56:38

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

Блокировка таблиц

Бодрое время суток!
Сегодня наблюдал следующую картину.
Висело несколько процессов, у каждого из них состояние "Locked", кроме одного, но он в слипе висел уже долго.
Все используемые таблицы имеют тип MyISAM, и после того, как убил все имеющиеся процессы, запуск новых приводил их к тому же статусу "Locked". Проблему решил только перезапуск сервера БД.

Есть ли какие-то рациональные объяснения всему этому? smile И можно ли было решить прблему не перезапуская сервер?


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

Неактивен

 

#2 17.12.2008 14:28:41

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Блокировка таблиц

Если Вы действительно убили все процессы, то это бага MySQL. Если хотя бы какой-то процесс оставался,
то он мог блокировать таблички.

Учтите, что непривилегированная учетная запись не видит процессы других учетных записей.

Неактивен

 

#3 17.12.2008 14:35:34

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

Re: Блокировка таблиц

О, про другие учётные записи я даже не подумал, видимо проблема в этом, попробую уточнить.
Только проблема в том, что рутовский пароль базы давно посеян... Можно ли сменить рутовский пароль базы, имея доступ к руту системы?


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

Неактивен

 

#4 17.12.2008 14:47:27

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Блокировка таблиц

Можно его поменять. Подробнее написано вот тут:
http://sqlinfo.ru/forum/viewtopic.php?id=72

Неактивен

 

#5 17.12.2008 14:49:36

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

Re: Блокировка таблиц

Спасибо!
А проблема была действительно в запросе другого пользователя smile


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

Неактивен

 

#6 09.12.2010 10:25:26

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

Re: Блокировка таблиц

Недавно снова подымался вопрос о блокировках в MyISAM...

А почему при селекте из одной таблицы блокируются инсерты/апдейты в другие таблицы? Разве селект не должен блокировать только используемую таблицу?


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

Неактивен

 

#7 09.12.2010 19:22:42

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Блокировка таблиц

Должен, он блокирует только те таблицы, с которыми работает.

Неактивен

 

#8 10.12.2010 09:41:21

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

Re: Блокировка таблиц

Значит что получается, если после селекта есть два коннекта, в первом апдейт той же таблицы, а во втором - другой, то второй апдейт будет ждать пока не отработает первый? Или второй должен всё равно проскочить независимо от того, что первый ждёт окончания селекта?


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

Неактивен

 

#9 10.12.2010 12:14:57

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Блокировка таблиц

Второй проскочит.

Неактивен

 

Board footer

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