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

MS SQL Server Discussion :

Relever d'informations (version, taille, etc) sur toutes les instances du réseau


Sujet :

MS SQL Server

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 3
    Points
    3
    Par défaut Relever d'informations (version, taille, etc) sur toutes les instances du réseau
    Bonjour à tous,

    J'ai besoin de lister à l'aide d'une
    requête Sql ou autres les instances bdd de mon parc informatique avec
    des informations du type (nom, taille, version, etc...)

    J'ai rassemblé quelques scripts et commande mais je n'arrive pas à
    assembler tout ça

    Par exemple j'ai la commande qui me permet de lister toutes les
    instances de mon réseau c.a.d
    C:\>sqlcmd /L

    Afficher la taille d'une bdd:

    USE Nom_Database;
    GO
    EXEC sp_spaceused @updateusage = N'TRUE';
    GO

    Lister tous les fichiers et leurs taille:

    SELECT name, physical_name, CAST(SUM(size * 8) AS FLOAT) / 1024 AS
    [Taille en Mo]
    FROM sys.master_files
    GROUP BY name, physical_name

    Lister la version d'une instance:

    SELECT SERVERPROPERTY('productversion'), SERVERPROPERTY ('productlevel'), SERVERPROPERTY ('edition')

    etc....

    Mais je n'arrive pas à créer un script qui parcourrait toutes les
    instances et me renverrait les bonnes infos.

    C'est pour cela que je sollicite votre aide.

    En effet j'ai un peu de mal avec le transac sql et les scripts sous dos

    D'avance merci de votre retour

  2. #2
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Exécuter la commande :

    n'est pas la méthode la plus parfaite en réalité. Cette commande envoie en réalité un broadcast sur le réseau local et attend la réponse instances SQL Server par défaut et nommées si SQL Browser est activé. Si tu as d'autres sous réseaux ou si les instances sont configurées pour être cachés cette commande ne te permettra pas de répertorier l'ensemble des instances SQL de ton parc.

    Personnellement pour faire un inventaire complet d'un parc SQL Server je préfère utiliser un script powershell qui lister les objets d'ordinateurs dans l'AD et pour chacun d'entre eux voir si un service SQL existe sur le serveur concerné. Si tu as une OU spécifique aux serveurs de bases de données c'est encore mieux. Bien entendu il faut avoir certaines privilèges sur le système pour réaliser cette opération.

    Mais je n'arrive pas à créer un script qui parcourrait toutes les
    instances et me renverrait les bonnes infos.

    C'est pour cela que je sollicite votre aide.

    En effet j'ai un peu de mal avec le transac sql et les scripts sous dos
    Là encore tu as plusieurs solutions. Soit un script powershell qui prend en entrée une liste de serveurs SQL et qui exécute tes scripts SQL d'inventaire ou tu peux aussi utiliser la gestion centralisée des serveurs si tu as un serveur SQL en version 2008 et lancer ces mêmes scripts sur l'ensemble de tes serveurs en une seule fois ...

    ++

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Bonjour,

    Merci de ton retour

    J'ai pris compris ce qu'il faut que je fasse mais le problème c'est que je n'ai jamais écrit de script powershell

    En jetant un oeil sur le net j'ai pu trouver quelques exemples notamment pour récupérer la liste des serveurs dans un fichier avec la commande :

    listserveurs = get-content "ListeInfoServeurs.txt"

    Mais encore une fois c'est compliqué d'assembler tout ça

    Aurais tu un lien avec des cours dans lequel je pourrais avancer là dessus?

    Par ailleurs qu'entends tu par "la gestion centralisée des serveurs si tu as un serveur SQL en version 2008 et lancer ces mêmes scripts sur l'ensemble de tes serveurs en une seule fois" ?

    J'ai quelques 2008 dans mon parc mais je ne connais pas cette particularité d'SqlServer 2008.

    Peux tu stp m'en dire plus?

    D'avance merci.

Discussions similaires

  1. Réponses: 6
    Dernier message: 12/07/2013, 12h32
  2. [Toutes versions] Compatibilité sur toutes les versions ?
    Par gui80 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/03/2011, 17h52
  3. Réponses: 8
    Dernier message: 01/08/2007, 16h38
  4. Informations présentent sur toutes les pages
    Par nawal106 dans le forum ASP
    Réponses: 1
    Dernier message: 21/10/2006, 22h41
  5. Requete qui ne fonctionne pas sur toutes les versions de MySQL
    Par goldorax113 dans le forum Requêtes
    Réponses: 2
    Dernier message: 06/06/2006, 12h04

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