|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Dmitry Simakov 2:5020/400 16 Sep 2001 00:50:16 To : Vladimir Bormotov Subject : Re: MySQL -------------------------------------------------------------------------------- Привет. Vladimir Bormotov wrote: >>>>>>"FL" == Fedor Lizunkov <Fedor.Lizunkov@p1.f960.n5020.z2.fidonet.org> >>>>>>writes: > > FL> Есть табличка. Допустим, что к одной записи лезут два разных процеса и > FL> пытаются изменить два разных поля, т.е. один пытается именить одно > FL> поле, а другой - другое, но делают они это одновременно. > > зависит от того, как именно адресуется конкретная запись в операции > update. > > Вообще-то, для того, чтоб два процесса не лезли куда-то "одновременно", > люди придумали транзакции. В MySQL это все уже есть, в каком-то виде... Вообще-то, транзакции люди придумали совсем не для этого. Читайте "теорию RDBMS" ;) Да и тормозные они в mysql, транзакции эти.. нагрузка на процессор даже на простых запросах возрастает почти вдвое, если mysql собран с поддержкой транзакций. Так что крайне не рекомендую ее включать для web задач (а для них в основном и используют mysql). А чтобы клиенты не лезли куда-то одновременно, авторы mysql придумали операцию "lock tables" Hо она не требуется в данном случае, потому как при любой операции обновления таблицы, она блокируется по записи.. так что с одной таблицей можно не париться с блокировками.. вот если надо одновременно делать запросы к нескольким таблицам и при этом блокировать доступ для других - надо использовать "lock tables"/"unlock tables" впрочем, оверхид от этой операции не большой - можно пихать куда угодно, даже для профилактики.. ;) > FL> Что-нибудь в базе испортиться может? И если может, то как этого > FL> избежать? > > Избежать - читать теорию RDBMS, смотреть что из теории реализовано в > MySQL, пробовать это пользовать. Если не получится - попробовать другой > sql-сервер. У mysql нет аналогов по скорости выполнения запросов. -- Best Regards, Dima <mailto:ds@alawar.com> --- ifmail v.2.15dev5 * Origin: Alawar Entertainment (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/44559bcd88f1.html, оценка из 5, голосов 10
|