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 :

Multi instances ou instance unique


Sujet :

Administration SQL Server

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 13
    Points : 9
    Points
    9
    Par défaut Multi instances ou instance unique
    Bonjour à tous,

    Je viens vers vous car je me pose une question concernant l'organisation de mes bases de données...

    Malgré mon manque d'expérience (moins de 3 ans) je suis devenu responsable du service informatique de ma société, je suis donc en charge de la définition des architectures de nos futurs projets logiciels. Nous avons récemment développé un nouveau produit en C# en s'appuyant sur SQL Server pour la gestion des données.

    Dans les mois/années à venir, plusieurs projets de nouveaux logiciels doivent être mis en place et je compte bien continuer à m'appuyer sur le C# et SQL Server pour ces développements. Une question évidente s'est donc posée à moi lors de mes réflexions sur ces développements... Plusieurs de ces logiciels vont être emmenés à cohabiter sur un même PC et vont être utilisés en même temps. Je me demandais donc si, dans ce contexte, il est préférable de définir une Instance SQL par logiciel ou si tous les logiciels peuvent "attaquer" une même et unique instance...

    Pouvez vous m'informer sur la viabilité de ces deux solutions et sur les avantages/inconvénients de chacune d'elles?

    Je remercie par avance ceux qui prendront le temps de me répondre!

    Cordialement!

  2. #2
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Décembre 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Décembre 2007
    Messages : 327
    Points : 674
    Points
    674
    Par défaut
    Bonjour,

    Vous pouvez creer une instance avec une base par application ...

    L'instance permet d'isoler totalement les bases de données, la question est la suivante : Vos bases doivent elles communiquer ? Si oui pourquoi ne pas les mettre dans la même instance ?

    Dois je avoir plusieurs environnements ( un environnement de Developpement / un environnement de Recette / un environnement de Production ) ?
    Dois je administrer diffrements des utilisateurs et des données ( attribuer des droits différents suivants des environements ... ) si tel est le cas plusieurs instances seront nécessaire.

    Voila un peu les grosses idées que vous devez garder en tête.

    Pour donner une image une instance c'est c'est un garage vous pouvez stocker des voitures des bateaux des vélos ... mais aussi des slips maintenant est ce cohérent ?
    Et les slips doivent il etre rangé a cet endroit ? Ne doivent ils pas etre dans votre appartement, dans votre armoire ?
    Et votre voisin doit il y avoir accès ?
    Bref l'instance c'est l'environnement, et elle va permettre de stockées les bases de données.

    Vous pouvez avoir 3 bases identitques dans 3 environnements différents pour pouvoir tester vos developpements par exemple.
    MCSA SQL SERVER |MCT | MVP Data Platform

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 13
    Points : 9
    Points
    9
    Par défaut
    Tout d'abord merci pour votre réponse.

    Chacun de mes logiciels va devoir accéder à un ensemble de 10 à 20 bases différentes et pas forcément communes entre les logiciels. Dans l'absolu je ne vois pas forcement de soucis à mettre toutes mes bases dans la même instance, mes questions se portaient surtout sur d'éventuelles contre indications à procéder de la sorte. Aucun soucis ne peux être engendré par le fait que plusieurs applications cherchent à accéder simultanément à une même instance? Niveau maintenance, stabilité et sûreté de fonctionnement, ne vaut il pas mieux avoir des instances indépendantes?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Faire la maintenance de 20 instances versus la maintenance d'une instance, c'est pas le même niveau d'emmerde !
    Surtout si tu fais des changements réguliers de tes procédures de maintenances...
    Personnellement, si c'est pour tout mettre sur le même serveur, ça n'a pas vraiment d'avantages de multiplier les instances, surtout si tu n'as pas de problème de compatibilité ou de version de MS Sql Server.
    Sans parler que chaque instance se réserve de la RAM, donc si tu as 50 Go de RAM, tu devras splitter ça entre 20 instances (soit 2 Go / instance) versus 40 Go donné à une instance qui gérera la répartition de la RAM au mieux suivant la charge des bases de données.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 13
    Points : 9
    Points
    9
    Par défaut
    Merci pour ta réponse!

    En effet tout sera hébergé au même endroit puisque les bases seront en local sur les PC que nous fournissons à nos clients. Je m'oriente donc vers le choix d'une instance unique. Pouvez vous me confirmer (ou m'infirmer d'ailleurs) qu'il est possible qu'une même base de données soit partagée par plusieurs de mes logiciels? Risque t'il d'y avoir des problèmes d'accès si par hasard deux logiciels essayent de mettre à jour une base au même moment?

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Tout dépend si vous entendez de multiples instances sur une même machine (SQL Server permet d'installer jusqu'à 50 instances par machine) ou une seule instance par machine.

    De multiples instances sur une même machine est source de problèmes de partage et d’attribution de ressources, complexifie la maintenance et augmente le gâchis des ressources improductives (noyaux d'exécution démultipliés, métadonnées démultipliées...). Cette solution n'est jamais conseillée en production. Elle peut néanmoins être utilisé pour les bases de test, dev et recette.

    Plusieurs instances à raisons d'une machine par instance, c'est un luxe qui va s'avérer couteux en terme de licence et de maintenance.

    Avoir plusieurs dizaines, voire une centaine de bases sur une même instance, réduit les coûts à tous niveaux : matériel, licences, administration.
    J'ai plusieurs clients qui ont de nombreuses instances sur une même machine et s'en portent très bien.
    Je peut vous citer le cas de Geodis (ex Calberson) dont l"application de routage worldwide tient dans une seule instance à raison de plus de 100 bases dont une dépassant les 8 To...

    Pour votre culture, je vous invite à lire notre livre sur SQL Server. Nous y avons traité ce sujet (entre autres... 1238 pages !)

    Nom : Couverture livre SQL server Eyrolles.jpg
Affichages : 1363
Taille : 105,0 Ko

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  7. #7
    Membre confirmé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 348
    Points : 604
    Points
    604
    Par défaut
    Bonjour à tous,

    J'ai un serveur 2008r2 avec une dizaine d'instances, il y a des logiciels qui demande le droit sysadmin et pour que les uns n'aient pas accès aux bases des autres j'ai séparé.

    Il y a aussi le problème de redémarrage des instance: parfois il a une appli qui demande une relance et l'autre à côté qui dit surtout pas en journée ...

    @+
    SDR.
    "ceux qui vivent, ce sont ceux qui luttent."

  8. #8
    Expert éminent
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 152
    Points : 7 402
    Points
    7 402
    Billets dans le blog
    1
    Par défaut
    J'avantage d'avoir plusieurs instances séparées, c'est en termes de maintenance, si besoin de redémarrer SQL Server, on ne coupe pas toutes les bases en même temps par exemple.

    Ca peut avoir son utilité dans un environnement multi-client.
    On ne jouit bien que de ce qu’on partage.

  9. #9
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Décembre 2007
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Décembre 2007
    Messages : 327
    Points : 674
    Points
    674
    Par défaut
    Idem pour les perf, on peut allouer plus de mémoire, de CPU ... a une instance prioritaire de prod par exemple et moins a une instance dev par exemple.
    MCSA SQL SERVER |MCT | MVP Data Platform

  10. #10
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par julien94320 Voir le message
    Idem pour les perf, on peut allouer plus de mémoire, de CPU ... a une instance prioritaire de prod par exemple et moins a une instance dev par exemple.
    Tu peux attribuer plus de perf à une bd au niveau d'une instance aussi...

  11. #11
    Membre confirmé
    Homme Profil pro
    Expert SQL Server
    Inscrit en
    Août 2009
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Expert SQL Server

    Informations forums :
    Inscription : Août 2009
    Messages : 61
    Points : 454
    Points
    454
    Par défaut
    Tiens, pas grand monde ne semble se préoccuper d'une des raisons majeures du multi-instances : la collation ...

    Pour les perfs, la sécurité, on saurait trouver des solutions tout en restant en intra-instance. la collation, malheureusement, on partage la même TempDB ...
    Christophe LAPORTE | Independent Consultant & Trainer
    SQL Server Certified Master | Azure Solution Architect

  12. #12
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par agdid04 Voir le message
    Bonjour à tous,

    J'ai un serveur 2008r2 avec une dizaine d'instances, il y a des logiciels qui demande le droit sysadmin
    avez-vous remarqué que dans sysadmin il y a les mots système et administrateur ? Donc votre éditeur de logiciel s'impose comme admirateur système de votre machine ?
    Ceci fait partie des pires aberrations de sécurité et vous devriez leur dire d'aller se faire.... pour être poli ! Si un jour votre entreprise a un audit de sécurité, on va bien rigoler !!!!!

    et pour que les uns n'aient pas accès aux bases des autres j'ai séparé.
    Il suffit de savoir gérer les comptes de connexion, les utilisateurs et de leurs associer les privilèges qui vont bien et le tout est étanche. Mieux avec la version 2012 et les bases de données "contained", l'étanchéité est automatique !

    Il y a aussi le problème de redémarrage des instance: parfois il a une appli qui demande une relance et l'autre à côté qui dit surtout pas en journée ...

    @+
    Il n'y a aucune justification d'un redémarrage d'un serveur SQL, juste l’incompétence du côté du DBA et l'imbécilité du côté de l'éditeur !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  13. #13
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Christophe LAPORTE Voir le message
    Tiens, pas grand monde ne semble se préoccuper d'une des raisons majeures du multi-instances : la collation ...

    Pour les perfs, la sécurité, on saurait trouver des solutions tout en restant en intra-instance. la collation, malheureusement, on partage la même TempDB ...
    Ben t'a oublié la différence majeure qu'il y a depuis la version 2012 avec les contained database.

    Depuis v 2102 :
    base non "contained" => collation des objets temporaire = collation de tempdb et non de la base contextuelle
    base "contained" => collation des objets temporaire = collation de la base contextuelle et non de la base tempdb !

    Si tu venais à notre journées TTT ???

    Next one probablement cet été dans le var...

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  14. #14
    Membre confirmé
    Homme Profil pro
    Expert SQL Server
    Inscrit en
    Août 2009
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Expert SQL Server

    Informations forums :
    Inscription : Août 2009
    Messages : 61
    Points : 454
    Points
    454
    Par défaut
    Yep, mais reste encore des cas litigieux avec instance en CS.
    Ou des cas lié au licensing : achat d'une machine gavée de RAM, disques flash ou nvme, et en optant pour une édition Standard de SQL limitée à 128GB ... Economiquemet cela se tient.

    Mais bon, je reste quand même un fervant adepte du mono-instance. C'etait histoire de pimenter le débat.
    Christophe LAPORTE | Independent Consultant & Trainer
    SQL Server Certified Master | Azure Solution Architect

  15. #15
    Futur Membre du Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 13
    Points : 9
    Points
    9
    Par défaut
    Merci à tous pour vos réponses.

    Je pense donc que la réponse à ma question est donc de n'utiliser qu'une seule instance et d'accroître mes compétences (quasi inexistantes à l'heure actuelle) dans le domaine de l'administration de bases de données. Avez vous un tuto en ligne à me conseiller pour débuter?

  16. #16
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 763
    Points : 52 554
    Points
    52 554
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Nergal07 Voir le message
    Merci à tous pour vos réponses.

    Je pense donc que la réponse à ma question est donc de n'utiliser qu'une seule instance et d'accroître mes compétences (quasi inexistantes à l'heure actuelle) dans le domaine de l'administration de bases de données. Avez vous un tuto en ligne à me conseiller pour débuter?
    Non, mais un livre !!! La plupart des auteurs de ce livre étant en ligne sur developpez et vous ont déjà répondu... Une partie du livre étant justement sur Internet

    Nom : Couverture livre SQL server Eyrolles.jpg
Affichages : 1561
Taille : 105,0 Ko

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. Instance d'application unique (mais ..)
    Par fab9292 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 23/12/2013, 17h40
  2. Certificat ssl multi-domaines et ip unique
    Par hendrix67 dans le forum Apache
    Réponses: 1
    Dernier message: 08/04/2010, 14h48
  3. FireBird - Multi instances
    Par Thomad dans le forum Débuter
    Réponses: 9
    Dernier message: 07/05/2004, 11h39
  4. [VB6] [DLL] DLL à instance unique
    Par HPJ dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 19/09/2003, 08h07

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