Master and MSDB, why separate.

  • I have been asked why the Master DB and MSDB are separated.  I have searched and searched but was unable to find a reason as to why these databases couldn't be combined.  Anyone have any ideas?

    Thanks.

  • MSDB is used by automated process thats run on SQL. Its used by SQL Agent where as Mater is the master cataolg used by SQL to run the Server itelf.

    You have have SQL server without SQL agent running on it (hence MSDB is not required) but u cannot have SQL running without having Master DB..

    Is this what u were looking for?

    Thanks

    Sreejith

  • Yes, Thank you.

  • I don't have the answer, but what you were told is not completely accurate.  The backup/restore processes use tables in msdb to record information and in SQL 7.0/2000 when DTS packages are stored in SQL, they are stored in the msdb database.

     

  • The reason master and msdb are different databases is that they came into the SQL Server product at different times.  Once the decision had been made to have separate databases, the cost of bringing them back together is not worth the effort.

    Do you want the SQL Server authors to spend time bringing master and msdb into a single database, which would add absolutely zero features to the product, or do you want them to spend the same time adding new features (or at least getting one or two of the last remaining bugs out of the product)?

    Original author: https://github.com/SQL-FineBuild/Common/wiki/ 1-click install and best practice configuration of SQL Server 2019, 2017 2016, 2014, 2012, 2008 R2, 2008 and 2005.

    When I give food to the poor they call me a saint. When I ask why they are poor they call me a communist - Archbishop Hélder Câmara

  • The "master" database is for SQL Server operation, as described in this thread.  The “msdb” contains system-wide information such as log shipping, replication information, backup history, and marked transaction information. Because this is variable sized data depending on what you are doing, the msdb can grow.  Master should always contain what it contains, with very little or no growth.  A default db should always be pointed to for new objects since these things should not be created in master...  Not only would I not want MS spending time on changing it, I believe that the current configuration is correct and I would probably question why if they tried to change it now.

    Thank-you,
    David Russell
    Any Cloud, Any Database, Oracle since 1982

Viewing 6 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic. Login to reply