web-dev-qa-db-fra.com

Pourquoi devrais-je prendre une base de données hors ligne?

Pour quelles raisons et dans quelles situations utiliseriez-vous le "Take Offline"/ALTER DATABASE dbName SET OFFLINE caractéristique.

Quelles tâches pouvez-vous effectuer avec une base de données hors ligne? Quelles tâches pouvez-vous effectuer uniquement avec une base de données hors ligne?

15
Greg B

Vous pouvez déplacer le MDF fichier vers un autre serveur pour la mettre en ligne.

16
mfinni

Dans les environnements de développement/de stadification, il est parfois utile de prendre une base de données hors ligne afin de vous assurer que vous vous connectez à la bonne instance de la base de données dans l'application et que vous n'avez pas de chaîne de connexion à la suite.

Cela dit, dans cette situation, c'est une bien meilleure idée d'avoir des noms de base de données différents pour les différents environnements et un processus de construction qui configurera automatiquement vos chaînes de connexion ...

De même, j'aime bien prendre des bases de données hors ligne pendant une période de temps avant de les déclasser dans le (pas) hors probabilité que, pour une raison quelconque, ils ont besoin de revenir en ligne. J'ai été mordu à plusieurs reprises par Devs qui ont des crochets que je ne connaissais pas dans l'une de mes bases de données lorsque je veux vous en débarrasser. Le prenant hors ligne beaucoup moins drastique et moins de temps que de la supprimer et de le rétablir si nécessaire.

Une autre chose serait comme une sauvegarde d'urgence. Je devais faire ça avant. Parfois, un bogue méchant se trouve dans votre application que, même si ce n'est pas malveillant, corrompre toujours les données de votre base de données. Prendre la base de données hors ligne est un moyen rapide d'arrêter le saignement jusqu'à ce que vous obteniez le bogue identifié. Vous pouvez ensuite le ramener en ligne pour évaluer les dommages au sein de la base de données.

18
squillman

Alors que certaines des réponses ici peuvent vous donner quelques idées sur ce que vous pouvez faire avec une base de données qui a un accès restreint, peu de choses peuvent en réalité être effectuées avec une base de données hors ligne. Vous ne pouvez pas mettre à jour, mettre à niveau, ajouter ou supprimer des données, etc.

6
joeqwerty

Ma raison dominante, celle que je dois vendre au DBA est plus souvent que je voudrais énumérer ...

"The SAN a besoin de réparation ... et non, je ne peux pas simplement échanger un lecteur, le fond de panier/contrôleurs sont en défaut."

Les instances de DB se comportent très mal quand leurs disques disparaissent.

Ainsi, j'ai fermé les instances SQL vers le bas avant de prendre le SAN Offline, puis ramenez-les une à la fois afin de ne pas contester les ressources - première instance augmente toutes les ressources de cluster et devient le nœud DB actif, les instances suivantes fonctionnent comme des nœuds passifs.

0
George Erhard