Навіщо мені брати базу даних в автономному режимі?


15

З яких причин і в яких ситуаціях ви б використали функцію "Візьми офлайн" / ALTER DATABASE dbName SET OFFLINE.

Які завдання ви можете виконати з офлайн-базою даних? Які завдання ви можете виконувати лише з офлайн-базою даних?

Відповіді:


16

Ви можете перемістити файл MDF на інший сервер, щоб розмістити його в Інтернеті.


4
+1, або інший диск / папка / SAN ...
Chris S

Це єдине використання для "взяти офлайн"?
Грег Б

5
Ні, я можу придумати інші причини. Уявіть, що у вас є кілька баз даних для декількох додатків. Одне з цих додатків - це оновлення додаткового додатка (веб-додаток, клієнт, хто знає.) Ви хочете відключити доступ до бази даних під час оновлення, але не хочете знімати весь сервер через інші бази даних. Це може бути приводом зняти його в офлайні. Я впевнений, що ваша уява може придумати і інші причини.
mfinni

Моя уява не можу боятися, звідси і питання. Я не думав, що ви можете змінити базу даних в режимі офлайн, тому я не бачу, як її зняття в автономному режимі могло б допомогти в процесі оновлення
Грег Б

2
Грег Б - я спеціально сказав, що модернізувати фронтальну, а не саму БД. В описаному нами сценарії БД залишається незмінним. Це буде прийнято в режимі офлайн, щоб гарантувати, що ніхто не має доступу до нього під час переходу.
mfinni

18

У середовищах розробки / інсценування іноді корисно брати базу даних в автономному режимі, щоб переконатися, що ви підключаєтесь до потрібного примірника бази даних у програмі, і що у вас десь не є з’єднана рядок з'єднання.

Зважаючи на це, в цій ситуації набагато краще ідеї мати різні назви баз даних для різних середовищ і процес збирання, який автоматично налаштовує ваші рядки з'єднання ...

Так само мені подобається брати бази даних в автономному режимі протягом певного періоду часу, перш ніж вивести їх з експлуатації, не зважаючи на те, що з певних причин їм потрібно повернутися в Інтернет. Мене кілька разів вкусили чорти, які мають гачки, про які я не знаю, в одну з моїх баз даних, коли я хочу позбутися від неї. Робота в автономному режимі набагато менш драстична і забирає менше часу, ніж її видалення та відновлення за потреби.

Інша справа була б як надзвичайна гарантія. Мені довелося це робити раніше. Іноді у вашому додатку виявляється неприємна помилка, яка, хоча і не є шкідливою, все ж пошкодить дані у вашій базі даних. Перенесення бази даних в автономному режимі - це швидкий спосіб зупинити кровотечу, поки ви не встановите помилку. Потім ви можете повернути його в Інтернет, щоб оцінити шкоду в базі даних.


2
Мені подобається ідея зняти офлайн до видалення
Грег Б

8
Дітто. У нашому виробничому середовищі є чотири тисячі баз даних. Іноді важко дізнатися, хто чим володіє. Зйомка в режимі офлайн і чекання вигуків іноді є єдиним варіантом.
Майкл Грін

6

Хоча деякі відповіді тут можуть дати вам деякі ідеї щодо того, що ви можете робити з базою даних, яка обмежила доступ, але насправді не можна зробити з базою даних, яка перебуває в автономному режимі. Ви не можете оновлювати, оновлювати, додавати або видаляти дані тощо


2
Правильно. Якщо ви хочете зробити багато чого з базою даних, вам краще перевести її в єдиний користувальницький режим. Тоді ви все ще обмежите доступ, але можете зробити набагато більше.
Шон Хоат

Ви навіть не можете перейменувати його!
Діма Фомін

0

Моя головна причина, яку я маю продавати до DBA частіше, ніж я хотів би перерахувати ...

"SAN потребує ремонту ... і ні, я не можу просто замінити диск, винна планка / контролери."

Екземпляри БД ведуть себе дуже погано, коли їх диски відходять.

Таким чином, я вимикаю екземпляри SQL до відключення SAN в автономному режимі, а потім повертаю їх по черзі, щоб вони не оскаржували ресурси - перша інстанція займає всі ресурси кластера і стає вузлом Active DB, наступні екземпляри запускаються як пасивні вузли.


-3

Є багато причин, чому вам потрібно це зробити ..

Наприклад,

consider changing or upgrading the actual database program/binary...
consider changing or upgrading the schema or tables..
consider changing or upgrading index's..

Найважливіший момент ..

Is taking a backup.. to get a perfect snapshot in time.. 

(у деяких БД ви просто створюєте блокування для всіх таблиць)


+1, також старі СУБД для дефрагментації або скорочення БД.
Chris S

1
re: "зміна або оновлення схеми", з книг в режимі он-лайн "ВІДКЛЮЧЕННЯ База даних закрита, закрита чисто та позначена в автономному режимі. База даних не може бути змінена в режимі офлайн". Як можна оновити схему в цій ситуації?
Грег Б

Вибачте .. Я намагався вносити зміни в неактивну базу даних. Я є послідовником MySQL, я припускав, що оновлення відбуватиметься до бази даних, яка позначена в автономному режимі, тому у неї не було проблем з одночасністю з чим-небудь іншим, ніж необхідні зміни. Можливо, тоді ми можемо залишити це ..: D
Аренстар

2
Реальні бази даних підтримують реальні резервні копії. Вам не потрібно брати нічого, але іграшку з лінії, щоб зробити ідеальну за часом послідовну резервну копію. ДБ, що вимагає блокування або якогось іншого дурного механізму - це іграшка. Дійсно. Усі основні бази даних не мають жодних проблем із повним резервним копіюванням, які постійно працюють під час великого використання
TomTom
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.