Какая ваша самая большая ошибка SQL Server или неприятный инцидент? - PullRequest
13 голосов
/ 09 февраля 2009

Вы знаете тот, о котором я говорю.

Мы все были там в какой-то момент. Вы получаете это ужасное чувство страха и осознание того, о мой бог, что это на самом деле произошло.

Конечно, теперь вы можете смеяться над этим, верно, так что продолжайте и поделитесь своими неудачами с SQL Server с нами.

Еще лучше, если вы сможете подробно рассказать, как вы решили свою проблему, чтобы мы могли учиться на наших ошибках вместе.

Итак, чтобы начать движение, я пойду первым …… ..

Это было в мои первые годы в качестве младшего гуру SQL Server. Я мчался вокруг Enterprise Manager, выполняя несколько обязанностей администратора. Вы знаете, как это, проверив несколько журналов, убедившись, что резервные копии работают нормально, немного ведя базу данных, в значительной степени занимаясь бизнесом на автопилоте и нажимая клавишу ввода в обычных всплывающих подсказках.

Ой, подождите, было ли сообщение «Вы уверены, что хотите удалить эту таблицу»? Слишком поздно!

Просто для подтверждения любых начинающих администраторов баз данных удаление производственной таблицы - очень и очень плохая вещь!

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

Ответы [ 25 ]

2 голосов
/ 09 февраля 2009

У нас было старое приложение, которое не очень эффективно обрабатывало синхронизацию с нашей базой данных HR для обновления имен, в основном из-за того, как они вводили изменения в названия. Так или иначе, одна женщина вышла замуж, и мне пришлось написать запрос на изменение базы данных, чтобы обновить ее фамилию, я забыл о предложении where, и все в названии приложения были теперь Эллисон Смит.

2 голосов
/ 09 февраля 2009

Как сказал zabzonk, забыл пункт WHERE об обновлении или два в мой день.

1 голос
/ 10 февраля 2009

За пределами типичной ошибки условия where. Запустил сброс на неправильной БД и, следовательно, пришлось запустить восстановление. Теперь я трижды проверяю имя моего сервера. К счастью, у меня была хорошая резервная копия.

1 голос
/ 09 февраля 2009

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

Потребовалось и 5-6 минут, чтобы поработать, я скулил о том, насколько медленным был сервер разработки, пока не увеличилось количество удаленных строк. :)

К счастью, я только что запустил полное резервное копирование, так как собирался выполнить установку ..

1 голос
/ 09 февраля 2009

Это было до тех дней, когда Google мог помочь. Я не сталкивался с этой проблемой с SQL Server, но с его уродливым старшим двоюродным братом Sybase.

Я обновил схему таблицы в производственной среде. Не понимая в то время, что хранимые процедуры, использующие SELECT *, должны быть перекомпилированы для получения новых полей, я продолжал тратить следующие восемь часов, пытаясь выяснить, почему хранимая процедура, которая выполняла ключевую часть работы, продолжала давать сбои. Только после перезагрузки сервера я понял.

Потеря тысяч долларов и сотен (конечных пользователей) человеко-часов на сайте вашего ведущего клиента - это довольно познавательный опыт. Настоятельно рекомендуется!!

1 голос
/ 09 февраля 2009

Я один раз и только один раз набрал что-то похожее на следующее:

psql> UPDATE big_table SET foo=0; WHERE bar=123

Мне удалось довольно быстро исправить ошибку. После этой и другой ошибки мои обновления всегда начинаются как:

psql> UPDATE table SET WHERE foo='bar';

Гораздо проще избежать ошибок таким образом.

1 голос
/ 09 февраля 2009

Не совсем «ошибка», но когда я впервые изучал PHP и MYSQL, я ежедневно проводил часы, пытаясь выяснить, почему мой код не работал, не зная, что у меня неправильный пароль / имя пользователя / хост / учетные данные базы данных в моей базе данных SQL. Вы не можете поверить, сколько времени я потратил на это, и, что еще хуже, это был не единственный случай. Но LOL, все хорошо, он строит характер.

1 голос
/ 09 февраля 2009

Наши ИТ-специалисты решили перейти на SQL 2005 с SQL 2000.

В следующий понедельник пользователи спрашивали, почему их приложение не работает. Ошибки типа:

DTS Не найдено и т. Д.

Это привело к хорошему набору из 3 суббот в офисе, который перекомпилировал пакеты в SSIS с хорошим пакетом сверхурочных:)

1 голос
/ 09 февраля 2009

В начале срока моей совместной работы я закончил тем, что прекратил доступ ко всем, кто использовал эту конкретную систему (которая использовалась многими приложениями в моей провинции). В свою защиту я был новичком в SQL Server Management Studio и не знал, что можно «открывать» таблицы и редактировать определенные записи с помощью оператора sql.

У меня закончился весь доступ пользователей с помощью простого оператора UPDATE (доступ к этому приложению был предоставлен учетной записью пользователя в окне SQL, а также конкретной записью в таблице доступа), но когда я подошел, чтобы выделить это самое заявление и запустите его, я не включил предложение WHERE.

Распространенная ошибка, которую мне сказали. Быстрое решение проблемы - учетные записи всех пользователей (включая учетные записи, срок действия которых должен был истечь) до тех пор, пока не удалось создать резервную копию базы данных. Теперь я либо открываю таблицы и выбираю конкретные записи с помощью SQL, либо оборачиваю абсолютно все внутри транзакции с последующим немедленным откатом.

1 голос
/ 09 февраля 2009

Столбцы обнуляются, а значения параметров не могут получить правильную информацию ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...