|
Есть ли в Каше аналог --safe-updates (запрет update и delete без условий)
|
|||
---|---|---|---|
#18+
Если нет, то никто не делал что-то подобное? Например в триггеры как-то зашить. Но как в триггере узнать строку запроса? А то новый сотрудник выходит - что-то мне вдруг боязно стало. Хоть в предчувствия и не верю, но все же) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2014, 06:51 |
|
Есть ли в Каше аналог --safe-updates (запрет update и delete без условий)
|
|||
---|---|---|---|
#18+
kolesovЕсть ли в Каше аналог --safe-updates (запрет update и delete без условий)Что это даст, если вместо DELETE FROM tablename можно написать DELETE FROM tablename where %ID is not null и много других вариаций условия для ALL?kolesovНапример в триггеры как-то зашить. Но как в триггере узнать строку запроса?Триггеры легко обходятся %NOTRIGGER - не вариант. Можно вообще запретить delete/update и дать этот функционал через ХП, но тогда и по капельке никто новому сотруднику не помешает удалить все данные, правда, не так быстро. Проще обезопасить данные созданием backup. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2014, 09:11 |
|
Есть ли в Каше аналог --safe-updates (запрет update и delete без условий)
|
|||
---|---|---|---|
#18+
servit, Обходятся, да. Но тут идет речь не о злом умысле, а о тупняке. Это причем с опытностью не связано, я несколько раз на рабочей базе делал update без параметров. К счастью, в портала все отвалилось по таймауту и сработал откат транзакции. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2014, 09:42 |
|
Есть ли в Каше аналог --safe-updates (запрет update и delete без условий)
|
|||
---|---|---|---|
#18+
Восстановление после такого "тупняка" действительно может стать проблемой. Спасти могут ежечасные инкрементные бэкапы, но даже потеря часа работы бывает болезненна. Случалось писать ZFILTER, чтобы остановить восстановление из журнала именно на нехорошей команде, но это каждый раз ручная работа, требующая высокой устойчивости к стрессам )) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2014, 10:53 |
|
Есть ли в Каше аналог --safe-updates (запрет update и delete без условий)
|
|||
---|---|---|---|
#18+
Я однажды на продакшене просто сделал килл глобала от нужной таблицы, потом бекап, потом zfilter, чтобы накатить по журналам за день, до килла. один плюс, дополнительный опыт ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2014, 11:03 |
|
Есть ли в Каше аналог --safe-updates (запрет update и delete без условий)
|
|||
---|---|---|---|
#18+
servitЧто это даст Прибегает сотрудник: "Ой, Александр Владимирович, нужно было для одной записи поменять дату, а я нечаянно весь класс..." Было. Хорошо история есть - можно восстановить. Но легче запретить "забывчивым". К коим и сам отношусь, честно говоря. Так как насчет узнать запрос в триггере? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2014, 13:41 |
|
Есть ли в Каше аналог --safe-updates (запрет update и delete без условий)
|
|||
---|---|---|---|
#18+
kolesov ,
PS: для динамических запросов можно попробовать сделать в Портале "безопасную" страницу с разбором текста введённого запроса или, что крайне нежелательно, "вклиниться" в системные классы. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.04.2014, 15:20 |
|
Есть ли в Каше аналог --safe-updates (запрет update и delete без условий)
|
|||
---|---|---|---|
#18+
kolesovservitЧто это даст Прибегает сотрудник: "Ой, Александр Владимирович, нужно было для одной записи поменять дату, а я нечаянно весь класс..." Было. Хорошо история есть - можно восстановить. Но легче запретить "забывчивым". К коим и сам отношусь, честно говоря. Так как насчет узнать запрос в триггере? Для такого есть транзакция (причем не изолированная) - открываешь транзакцию, модифицируешь данные, проверяешь корректность результата, фиксируешь(или откатываешь). P.S. Кстати, как поживаете? ИС-ВКТ еще существует или все теперь на ИСТУ крутится? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2014, 09:37 |
|
|
start [/forum/topic.php?fid=39&msg=38610744&tid=1556909]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
26ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 122ms |
0 / 0 |