Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / не работает "DELETE FROM mytable" через "MySql Connector . Net 6.1.2 " / 4 сообщений из 4, страница 1 из 1
02.06.2014, 22:25:27
    #38659365
student-uni
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не работает "DELETE FROM mytable" через "MySql Connector . Net 6.1.2 "
Добрый день,

имеется База MySql 5.1.73 которую запрашивает веб-приложение через ПХП

Параллельно к этой же базе коннектируюсь я: соединяюсь через "MySql Connector . Net 6.1.2 " (вот строка соединения "server=my_Server;user id=my_user;Password=myPass;persist security info=True;database=MyDB;Pooling=False")

Мой "SELECT " выполняется всегда

а вот мой "DELETE FROM mytable1" иногда возвращает "fatal error" (в .Net Try Catch)

Когда это случилось я проверил через "show processlist" - и вижу процесс (созданный веб приложением ПХП) запрашивающий "Select mytable1" (этот запрос должен длится менее секунды) я Повторяю "show processlist" - и вижу процесс висит дальше.

Вызываю kill processID - процесс исчезает.

Запускаю "DELETE FROM mytable1" через "MySql Connector . Net 6.1.2 " - и тут моя команда выполняется уже без проблем.

Изменить что либо в процессе запрашивающем "Select mytable1" (веб-приложении ПХП) я не могу.

Но могу менять что либо в своем запросе через "MySql Connector . Net 6.1.2 " при выполнении "DELETE FROM mytable1" .

Вопрос1: как удостовериться в чем причина того что мой delete не всегда выполняется ?
Вопрос2: если причина в том что процесс "Select mytable1" подвисает (или множет эксклюзивно открывает таблицу и не закрывает соединение),
то как обойти это зависание без kill processid, скажем средствами"MySql Connector . Net 6.1.2 " ?


Спасибо
...
Рейтинг: 0 / 0
02.06.2014, 23:44:58
    #38659406
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не работает "DELETE FROM mytable" через "MySql Connector . Net 6.1.2 "
student-uniMySql Connector . Net 6.1.2Безотносительно топика - а не пора ли обновиться? Почти 5 лет прошло...
...
Рейтинг: 0 / 0
03.06.2014, 13:28:20
    #38659986
alex564657498765453
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не работает "DELETE FROM mytable" через "MySql Connector . Net 6.1.2 "
student-uniДобрый день,

имеется База MySql 5.1.73 которую запрашивает веб-приложение через ПХП

Параллельно к этой же базе коннектируюсь я: соединяюсь через "MySql Connector . Net 6.1.2 " (вот строка соединения "server=my_Server;user id=my_user;Password=myPass;persist security info=True;database=MyDB;Pooling=False")

Мой "SELECT " выполняется всегда

а вот мой "DELETE FROM mytable1" иногда возвращает "fatal error" (в .Net Try Catch)

Когда это случилось я проверил через "show processlist" - и вижу процесс (созданный веб приложением ПХП) запрашивающий "Select mytable1" (этот запрос должен длится менее секунды) я Повторяю "show processlist" - и вижу процесс висит дальше.

Вызываю kill processID - процесс исчезает.

Запускаю "DELETE FROM mytable1" через "MySql Connector . Net 6.1.2 " - и тут моя команда выполняется уже без проблем.

Изменить что либо в процессе запрашивающем "Select mytable1" (веб-приложении ПХП) я не могу.

Но могу менять что либо в своем запросе через "MySql Connector . Net 6.1.2 " при выполнении "DELETE FROM mytable1" .

Вопрос1: как удостовериться в чем причина того что мой delete не всегда выполняется ?
Вопрос2: если причина в том что процесс "Select mytable1" подвисает (или множет эксклюзивно открывает таблицу и не закрывает соединение),
то как обойти это зависание без kill processid, скажем средствами"MySql Connector . Net 6.1.2 " ?


Спасибо

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

есть приоритет операций - что приоритетней, чтение или изменение...обычно чтение по умолчанию.

и того получаем, ваш делете ждёт освобождения таблицы , наступает таймаут, и валиться фатал еррор.

как обойти это в конекторе - :) полагаю вопрос снят.

ЗЫ
висящий селект...там же не просто висит, а виден весь код селекта
- точно он быстрый?
...
Рейтинг: 0 / 0
04.06.2014, 01:07:49
    #38660859
student-uni
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не работает "DELETE FROM mytable" через "MySql Connector . Net 6.1.2 "
таблица 70 строк 50 столбцов, смех.

Из пхп идет запрос который иннер джоинит ее с другой таблицей около 100 000 записей плюс аггрегатные функции конкатенации при создании значений 2-3х динамических столбцов. Но и это проходит за 2-3 секунды. Одновременно на сайте ну 5-10 человек максимум.

я прочитал, что фатал приходит от коннекотра когда сервер занят другими делами и наступает таймаут. Я увеличил в коннекторе таймаут (думаю клиентскй) до часу, непомогло. Пишут что можно изменить серверный но думаю не из коннектора.

Планирую уйти от delete и обновлять таблицу не полностью а только добавлять новые записи или апдейтить старые.

Тока это придется на уровне с-шарпа делать по записям, ибо как обновить MySql из MS-SQL имея MS-SQL Express ума не приложу. ODBC не рекомендуют.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / не работает "DELETE FROM mytable" через "MySql Connector . Net 6.1.2 " / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]