SQL server系统数据库很重要,大部分时候都不应该修改他们。唯一例外的是model数据库和tempdb数据库。model数据库允许部署更改到任何新创建的数据库(如存储过程),而更改tempdb数据库则是为了帮助扩展数据库以承担更多的负载。

1、Resource数据库

Resource数据库从SQL server 2005引进。它包含了SQL server运行所需的所有的只读的关键系统表、元数据以及存储过程。它不包含任何用户实例或数据库的任何信息,它只在安装新服务补丁时被写入。Resource数据库包含其他数据库逻辑引用的所有物理表和存储过程。默认安装位置为C:\Procgram Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Binn,每个实例只有一个Resource。

注:其中C:是标准设置,MSSQL14是版本,.MSSQLSERVER是实例名。

自2012版本以来,升级到新服务补丁或者和快速修正时候,将使用Resource数据库的副本覆盖旧数据库,这样可使用户快速升级SQL server 目录,并且可以回滚到前一个版本。

通常,DBA在连接到任意一个数据库的同时都可以对Resource数据库进行简单的查询,而不必直接连接Resource数据库。

例如:

  注:不要将Resource数据库放在加密或者压缩的驱动器上,因为这样可能会导致升级问题或者性能问题。

二、master数据库

  master数据库包含有关数据的元数据(数据库配置文件和文件位置)、登陆以及有关实例的配置信息。

  运行如下代码,可以查看部分元数据:

  

  resource数据库和master数据库主要的区别在于:master数据库保存用户实例特定的数据,而resource数据库只保存用户实例所需的架构和存储过程,不包含任何实例特定的数据。

尽量不要在master数据库中创建对象,如果创建了,那么可能需要更频繁的进行备份。

三、tempdb数据库

  tempdb用于存储用户创建的临时对象、数据库引擎需要的临时对象和行版本信息,类似于操作系统的分页文件。tempdb数据库在每次重启sqlserver时创建,大小恢复为默认大小,我们无需考虑去备份他。

  对tempdb中的对象数据更改可以减少登陆;

  为tempdb数据库分配足够的空间非常重要;

  通常,应将tempdb数据库设置为在需要空间时自动扩展;

  考虑到15%~20%的扩展开销下留出足够的空间,如果没有足够的空间。

四、model数据库

  model数据库是sqlserver创建新数据库时充当模板的系统数据库。也就是说,创建每个数据库时,SQL server 将model数据库复制为新数据库;唯一的例外发生在还原和重新连接其他服务器上的数据库时。所以,如果在model数据库中添加你自己的对象,那么应该把model数据库包括在你的备份中,或者维护包含更改的脚本。

五、msdb数据库

  msdb包含SQL server代理、日志传送、SSIS以及关系数据库引擎的备份和还原系统使用的信息。该存储过程存储了有关作业、操作、警策略以及作业历史的全部信息。这些都是重要的系统级数据,所以应该定期对该数据库备份。

  

sqlserver 标准系统数据库的更多相关文章

  1. 07-SQLServer数据库中的系统数据库

    一.总结 首先要明确SQLServer的系统数据库一共有5个:Master.Model.Msdb.Tempdb.Resource. 1.Master数据库 (1)master数据库记录了所有系统级别的 ...

  2. 替换系统数据库解决SQLSERVER服务启动不了的问题

    替换系统数据库解决SQLSERVER服务启动不了的问题 当遇到SQLSERVER服务启动不起来的时候,我们试过把系统的四个数据库master ,model ,tempdb,msdb 替换掉,Windo ...

  3. Microsoft SQLServer有四种系统数据库

    Microsoft SQLServer有四种系统数据库: 1.master数据库 master数据库记录SQLServer系统的所有系统级别信息.它记录所有的登录帐户和系统配置设置.master数据库 ...

  4. SqlServer中的系统数据库

    SqlServer中的系统数据库有五个,平时写代码不太关注,今天一时兴起研究了一下. 1. master 记录SQL Server系统的所有系统级信息,例如:登陆账户信息.链接服务器和系统配置设置.记 ...

  5. Oracle、Db2、SqlServer、MySQL 数据库插入当前系统时间

    做易买网项目,由于对数据库插入系统时间不了解,常常遇到的问题: 1.java.sql.SQLException: ORA-01861: 文字与格式字符串不匹配.原因:由于获取系统时间类型不对,应为sy ...

  6. SQLSERVER的四个系统数据库

    (1)Master数据库是SQL Server系统最重要的数据库,它记录了SQL Server系统的所有系统信息.这些系统信息包括所有的登录信息.系统设置信息.SQL Server的初始化信息和其他系 ...

  7. 解剖SQLSERVER 第一篇 数据库恢复软件商的黑幕(有删减版)

    解剖SQLSERVER 第一篇  数据库恢复软件商的黑幕(有删减版) 这一系列,我们一起来解剖SQLSERVER 在系列的第一篇文章里本人可能会得罪某些人,但是作为一位SQLSERVER MVP,在我 ...

  8. SQL Server 系统数据库恢复

    标签:SQL SERVER/MSSQL SERVER/数据库/DBA/故障恢复/master 概述 SQL Server 维护一组系统级数据库(称为“系统数据库”),这些数据库对于服务器实例的运行至关 ...

  9. Sqlserver列出所有数据库名,表名,字段名

    Sqlserver列出所有数据库名,表名,字段名   1.获取所有数据库名:   ? 1 SELECT Name FROM Master..SysDatabases ORDER BY Name   注 ...

随机推荐

  1. 面试一个小公司,TPM相关概念

    准备面试一个小公司,在面试邀请邮件中提出了这样一个要求(not required): ".. one item we will likely discuss with you is soft ...

  2. 是时候考虑让你的Spark跑在K8S上了

    [摘要] Spark社区在2.3版本开始,已经可以很好的支持跑着Kubernetes上了.这样对于统一资源池,提高整体资源利用率,降低运维成本(特别是技术栈归一)有着非常大的帮助.这些趋势是一个大数据 ...

  3. WebSSH画龙点睛之lrzsz上传下载文件

    本篇文章没有太多的源码,主要讲一下实现思路和技术原理 当使用Xshell或者SecureCRT终端工具时,我的所有文件传输工作都是通过lrzsz来完成的,主要是因为其简单方便,不需要额外打开sftp之 ...

  4. 利用etcd实现服务注册和服务发现

    文章目录 服务注册 服务发现 协议编写 服务端实现 客户端实现 实验结果 参考文章 服务注册 主要逻辑在go func函数里面,先是去etcd获取一下服务,没有获取到的话就注册进去. package ...

  5. 压缩感知重构算法之OLS算法python实现

    压缩感知重构算法之OMP算法python实现 压缩感知重构算法之CoSaMP算法python实现 压缩感知重构算法之SP算法python实现 压缩感知重构算法之IHT算法python实现 压缩感知重构 ...

  6. HDU3870- intervals(差分约束)

    You are given n closed, integer intervals [ai, bi] and n integers c1, ..., cn. Write a program that: ...

  7. webpack(四) --css样式及图片打包

    一.CSS样式打包 1. loader简介 由于Webpack打包入口目前只配置了一个index.js文件,那么其他需要被打包的文件都必须通过模块化方式引入该文件才行,而默认情况下,引入的文件必须是j ...

  8. ARTS-S golang goroutines and channels(二)

    向tcp服务端发消息 package main import ( "io" "log" "net" "os" ) fun ...

  9. Selenium之显式、隐式等待

    selenium自动化页面元素存在异常发生的原因有以下几点: ① 页面加载时间过慢,需要查找的元素程序已经完成,但是页面还未加载成功.此时可以加载页面等待时间. ② 查找的元素没有在当前的iframe ...

  10. Python3 函数基础2

    目录 可变长参数 可变长形参: *args 可变长实参: *容器类 可变长形参: **kwargs 可变长实参: **字典 函数对象 引用 当做容器类型元素 当做参数传给一个函数 当做函数的返回值 函 ...