IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

SQL 2005 - Déconnexion utilisateurs


Sujet :

Administration SQL Server

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 18
    Points : 21
    Points
    21
    Par défaut SQL 2005 - Déconnexion utilisateurs
    Bonjour,

    Je souhaiterai déconnecter des utilisateurs sur une base SQL 2005 via une requête, quelqu'un en aurait-il une à me proposer ?

    Bien entendu, les déconnexions devront s'exécuter "proprement"

    Merci pour votre aide.

  2. #2
    Membre chevronné

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Points : 1 758
    Points
    1 758
    Par défaut
    Bonjour,

    Tu peux utiliser ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Alter database DBNAME set single_user with rollback immediate
    GO
    Alter database DBNAME  set Multi_user with rollback immediate
    GO

  3. #3
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Attention :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ALTER DATABASE DBNAME SET SINGLE_USER
    WITH ROLLBACK IMMEDIATE
    GO
    Passe la base de données en SINGLE_USER puis en MULTI_USER immédiatement après (WITH ROLLBACK IMMEDIATE)
    Donc seule cette commande suffit pour déconnecter tous les utilisateurs (et applications ! ) de votre base de données ...

  4. #4
    Membre chevronné

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Points : 1 758
    Points
    1 758
    Par défaut
    Elsuket,

    Je viens de retester pour être sur, la commande

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ALTER DATABASE DBNAME SET SINGLE_USER
    WITH ROLLBACK IMMEDIATE
    GO
    suffit effectivement pour deconnecter tous les utilisateurs par contre elle laisse la DB en mode single user.
    Voila pourquoi j'enchaine avec la commande pour la remettre en multi_user directement apres

    Tchuss,
    Dje

  5. #5
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Dans ce cas, vous obtenez probablement une erreur ou au moins un avertissement lors du passage en SINGLE_USER.
    Si vous revenez de suite après en MULTI_USER, alors la clause WITH ROLLBACK IMMEDIATE, à mon sens, ne sert à rien.

  6. #6
    Membre chevronné

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Points : 1 758
    Points
    1 758
    Par défaut
    Salut Elsuket,

    Pour ton info (et la mienne par la meme occasion ) j'ai rechercher plus d'info concernant cette commande dans BOL :

    Specifies when to roll back incomplete transactions when the database is transitioned from one state to another. If the termination clause is omitted, the ALTER DATABASE statement waits indefinitely if there is any lock on the database. Only one termination clause can be specified, and it follows the SET clauses.

    ROLLBACK AFTER integer [SECONDS] | ROLLBACK IMMEDIATE
    Specifies whether to roll back after the specified number of seconds or immediately.


    Donc en gros, le with rollback immediate spécifie de faire un rollback de toutes les transactions en cours directement pour après switcher la DB en mode single user.

    Je dirais donc que la clause est indispensable (pour l'usage que l'on veut en faire, cad killer les connections) pour le switch vers le single user mode et facultative pour le basculement vers le multi_user.

    Bonne journée,
    Dje

Discussions similaires

  1. Audit activité utilisateur sur SQL 2005
    Par Selendis dans le forum Développement
    Réponses: 2
    Dernier message: 02/03/2010, 14h07
  2. Réponses: 1
    Dernier message: 17/10/2008, 09h07
  3. SQL 2005 type utilisateur
    Par Pol63 dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 12/11/2007, 14h27
  4. [sql 2005]Sauvegarde utilisateurs bdd
    Par cbleas dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 21/11/2006, 11h17
  5. [ADO.Net][C#/SQL 2005] Comment faire INSERT avec variable ?
    Par hduchemin dans le forum Accès aux données
    Réponses: 1
    Dernier message: 25/01/2006, 17h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo