SQL Server系统中数据库相关概念

在SQLServer数据库系统中分为2大类,系统数据库和用户数据库。

SQLServer安装后系统会自动生成4个系统数据库,他们是Master,Model,Msdb,Tempdb,系统数据库至少有2个文件组成,一个是扩展名为.mdf的数据库文件,一个是扩展名为.ldf的事务日志文件,他们存储在SQLServer默认安装路径下的MSSQL子目录下的Data文件夹中。

系统数据库

Master数据库

DBMS中最重要的系统数据库,一旦遭到破坏可能引起整个系统崩溃。保存了所有的登录信息,系统设置信息,初始化信息,和其他数据库相关信息。

通常只有SA,System Administrator系统管理员才有权利访问和使用Master数据库。

Model数据库

用户创建数据库和系统创建Tempdb数据库使用的模板数据库,创建新数据库时,系统将Model数据库内容自动复制到新的数据库中,作为新数据库的基础,以此来简化数据库以及其他对象的创建和设置操作,如果对Model数据库进行修改(比如数据库大小,排序规则,恢复模式,其他数据库项目),则修改将会应用于以后创建的所有数据库。

Msdb数据库

代理服务数据库,用来安排警报和作业,以及记录操作员信息的数据库。

Tempdb数据库

一个临时数据库,他为系统在运行过程中所产生的所有临时表,临时存储过程以及其他临时操作对象提供存储空间,作为全局资源,Tempdb数据库没有专门的权限限制,如果用户与SQLServer断开,创建的临时表对象也会被删除,SQLServer2008实例每次启动都会重新创建Tempdb数据库。

用户数据库

就是具有数据库创建权限的SQLServer用户在系统中根据需要创建的个人数据库,下面详细介绍。

在SSMS中创建“销售管理”数据库

需求分析

根据公司需求情况,分析得到以下信息:

公司目前所销售的产品大约有10000种,以后每年希望增加1000种,每种产品信息基本需要1kb空间进行保存,所以目前大约需要10MB空间保存产品信息,每年会再增加1MB。

公司目前有固定客户500个,每个买家客户信息需要500B,每年增加和失去的客户数量基本持平,所以目前大约需要0.25MB空间保存客户信息,基本没有增长。

公司每年发生的交易次数大约10000笔,每笔交易信息需要500B,所以公司每年需要大约5MB来保存销售信息。

由此可见,目前需要创建的数据库初始化大小应该是(10+0.25+5)MB,每年增加(1+5)MB。

创建数据库

右键数据库,选项新建数据库》输入数据库名称“销售管理”

数据库逻辑文件名称,默认和数据库名一样,事务日志文件的逻辑文件名称会自动加一个_log的扩展名

数据库命名

逻辑名称,是DBMS内部使用的名称,普通用户不会使用到该名称。通常情况下,系统会自动生成逻辑名称,数据库文件的逻辑名称是“数据库名.mdf”,日志文件的逻辑名称是“数据库名_log.ldf”

设置数据库大小和增长策略

修改数据库初始大小为16MB,日志文件大小2MB,这里还可以限制数据库文件的大小,不过可以默认不限制(磁盘有多大就存储多少数据)

设置增长策略,点击自动增长按钮,选择按MB增长,设置为6MB。

添加次要数据库文件 (不是必须)

添加数据文件,如果创建数据库数据量很大,可以同时创建2个数据库文件,一个作为主文件,一个作为次要文件。

一个数据库可以拥有多个数据库文件,但是只有一个主要数据库文件(.mdf),可以有多个次要数据库文件(.ndf),使用次要数据库文件的主要好处是,当数据存储于多个物理文件时,可以拥有更快的访问速度和更高的处理效率。

如果数据库中数据大小已经超过操作系统对文件大小的上限要求,也需要被动使用次要数据库文件来分担数据库的存储任务。

设置文件组

新建以及设置文件组,数据库文件通常保存在primary文件组中,如果需要将新建的数据库文件保存到一个新的文件组,单击文件组项目,选择新建。

修改数据库路径

数据库路径,在默认情况,数据和事务日志被放在同一个驱动器上的同一个路径下,这是为了处理单磁系统采用的方法,但是在生产环境中,这可能不是最佳的方法,建议将数据和日志文件放在不同的磁盘上。

数据库建立完成

最后单击确定,数据库建立完成。

数据库文件保存地址

可以到设置的目录,查看刚才创建的数据库文件

SQL Serever学习4的更多相关文章

  1. SQL Serever学习17——数据库的分析和设计

    数据库的分析和设计 设计数据库确定一个合适的数据模型,满足3个要求: 符合用户需求,包含用户所需的所有数据 能被数据库管理系统实现,如sqlserver,oracle,db2 具有比较高质量,容易理解 ...

  2. SQL Serever学习16——索引,触发器,数据库维护

    sqlserver2014数据库应用技术 <清华大学出版社> 索引 这是一个很重要的概念,我们知道数据在计算机中其实是分页存储的,就像是单词存在字典中一样 数据库索引可以帮助我们快速定位数 ...

  3. SQL Serever学习15——进阶

    特别说明:在sqlserver2014中,不区分大小写,也就是说,SQL是大小写不敏感的 数据库模型3类: 层次模型 网状模型 关系模型 关系型数据库语言3种: DDL数据定义语言 CREATE(创建 ...

  4. SQL Serever学习14——存储过程和触发器

    存储过程 在数据库中很多查询都是大同小异,编写他们费时费力,将他们保存起来,以后执行就很方便了,把SQL语句“封装”起来. 存储过程的概念 存储过程是一组SQL语句集,经过编译存储,可以”一次编译,多 ...

  5. SQL Serever学习13——数据库编程语言

    编程基础 注释 注释命名来对一些语句进行说明,便于日后维护或者其他用户理解,注释不会执行. 单行注释 SELECT GETDATE() --查询当前日期 多行注释 /* 注释有助于 理解操作的内容 查 ...

  6. SQL Serever学习12——数据库的备份和还原

    公司的服务器奔溃了,事先没相应的保护措施,使得公司遭到了较大损失,为了以后不再出现类似事件,在系统中引入备份机制,使得数据库被破坏后损失降到最低. 数据的导出和导入 数据转换服务 数据转换服务DTS( ...

  7. SQL Serever学习9——基础查询语句

    SQL语言概述 SQL是结构化查询语言(Structure Query Language),1974年提出,1979年被IBM实现,SQL语言已经成为关系型数据库的标准语言. 包括: DDL数据定义语 ...

  8. SQL Serever学习11——数据库的安全管理

    公司管理软件设计完成,但是日常工作繁忙,向领导提出增加几个管理员,帮助管理和维护系统,领导同意了,但是要求一定要管理好这几个管理员用户,保证数据库的安全. 修改身份验证模式 数据库验证机制 sqlse ...

  9. SQL Serever学习10——T-SQL语句

    在sqlserver2018中使用的是Transact-SQL语言,简称T-SQL. 数据库的创建和管理 数据定义语言DDL DDL功能包括数据库,表,索引,视图,存储过程 数据库:CREATE DA ...

随机推荐

  1. ES6学习之let声明变量的学习

    1.let和var类似, (1)let与var不同的点:let没有预编译,变量提升这个过程,let声明的变量只能在当前作用域内访问到(一个{}可以看做是一个作用域),在全局var声明的变量属于wind ...

  2. TestNG学习笔记目录

    学习TestNG主要用于GUI自动化测试使用,学习目录随进度不断更新.文档内容主要是翻译官方doc,同时加入自己的理解和案例.如有理解偏差欢迎指正 一.TestNG Eclipse plug-in 安 ...

  3. Oracle数据库01

    常用函数 COUNT(*):统计所有的数据量,没有过滤功能 COUNT(字段):统计出指定字段不为null的数据量,有过滤功能 COUNT(DISTINCT 字段):统计指定字段不为空并且去掉重复数据 ...

  4. Exp3 免杀原理与实践 20164323段钊阳

    网络对抗技术 20164323 Exp3 免杀原理与实践 免杀 一般是对恶意软件做处理,让它不被杀毒软件所检测.也是渗透测试中需要使用到的技术. 要做好免杀,就时清楚杀毒软件(恶意软件检测工具)是如何 ...

  5. JavaScript多个h5播放器video,点击一个播放其他暂停

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. CentOS7系统安装 Maria Db(MYSQL)教程

    一.背景Maria Db是流行的跨平台MySQL数据库管理系统的分支,被认为是MySQL 的完全替代品.Maria Db是由Sun在Sun Micro systems合并期间被Oracle收购后,于2 ...

  7. docker微服务部署之:二、搭建文章微服务项目

    docker微服务部署之:一,搭建Eureka微服务项目 一.新增demo_article模块,并编写代码 右键demo_parent->new->Module->Maven,选择M ...

  8. leetcode-200-岛屿的个数(dfs找所有的连通分量)

    题目描述: 给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量.一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的.你可以假设网格的四个边均被水包围. 示例 ...

  9. [BZOJ 5155][Tjoi2014]电源插排

    传送门 网上大部分题解都写得是动态开点线段树,然而像\(MiEcoku\)这么懒惰的显然不会去写线段树... \(\color{green}{solution}\) 我们考虑来点骚操作. 线段树维护的 ...

  10. windows server 2012 valid key

    好吧,网页三剑客. 1, load disc iso 2,check ip settings, 3,net-inst-server-start 4,power Node, F2 4.1 F7 usbc ...