2010-10-01 5 views
2

Tous,SQL Server à la conversion MySql - schéma par rapport à la base de données question

Nous évaluons MySql comme un coût moindre alternative au serveur SQL pour nos petits clients dans un environnement d'hébergement partagé. Je suis encore brumeux sur la façon dont nous allons migrer certains des détails tels que les fonctions de valeur table/scalaire, les travaux sql, etc, mais je vais publier des détails dans un autre thread. J'ai, cependant, une question fondamentale sur les bases de données par rapport aux schémas dans MySQL.

Actuellement, notre instance de serveur SQL a plusieurs bases de données avec plusieurs schémas dans chacun. Par exemple:

Database (schémas ...)
====================
Client1Database (dbo, web)
Client2Database (dbo, web, schéma3)
Client3Database (dbo, schema2)

Dans mon exemple MySql exemple, il semble que les objets de haut niveau sont des schémas, et non pas des bases de données. Mais les "schémas" ont des icônes de base de données à côté d'eux et, dans notre cas, un "schéma" est répertorié comme faisant partie de la chaîne de connexion dans nos applications .NET.

Je suppose que je viens de poser quelques questions de clarification quant à la façon de percevoir les schémas/bases de données MySql ...

  1. les objets de haut niveau dans une instance MySql peut-il être considéré comme des schémas si une base de données se compose de plusieurs schémas, ou une seule "base de données" de schéma.
  2. Dans le scénario ci-dessus, je créerais une instance distincte pour chaque client, aplatir les bases de données de chaque client à un seul schéma et garder les trois clients dans la même instance ou une autre méthode qui me échappe? Y a-t-il un avantage, une sécurité, une clarté, ou une autre approche par rapport à une autre?

Merci d'avance pour vos réponses.

+0

Quelle est la taille de la base de données de votre « petit client »? –

+0

Environnement partagé serait 3-5 clients. Les bases de données vont d'environ 50-500 Mo chacune.Pour la plupart, les bases de données client peuvent être consolidées en un seul schéma, bien que quelques unes d'entre elles aient actuellement plus d'un schéma sur un serveur sql. – Dave

Répondre

0

D'abord et avant tout, je voudrais vous conseiller ou quelqu'un pour éviter d'utiliser MySQL, il y a beaucoup de SGBDR libre disponible, mon PostgreSQL être préféré à mon avis est beaucoup mieux. En outre, votre exigence étant assez petite, cela ne devrait pas poser de problème avec SQL Server Express, même si je comprends que l'hébergement partagé peut limiter vos options. Vous (je l'espère) avez déjà compris cela, mais je vais essayer de répondre à vos questions quand même ...

  1. Fondamentalement MySQL ne dispose pas des schémas, seules les bases de données (qui sont appelés catalogues dans la norme). Il y a quelques années, ils ont décidé d'ajouter le mot-clé SCHEMA en tant qu'alias pour DATABASE. Il y a des plans pour ajouter le concept de schémas, mais je ne compte pas sur lui pour bientôt.
  2. Cela dépend principalement de la façon dont vous utilisez les bases de données et les schémas dans votre configuration actuelle. Dans la plupart des cas, je pense qu'il est préférable de conserver ces bases de données dans une instance unique pour simplifier les tâches d'administration.

P.S .: Ce serait génial d'avoir une mise à jour sur la façon dont vous avez résolu ce problème à la fin.

Questions connexes