SQL Serever学习4

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
日志服务 SLS,月写入数据量 50GB 1个月
简介: SQL Server系统中数据库相关概念在SQLServer数据库系统中分为2大类,系统数据库和用户数据库。SQLServer安装后系统会自动生成4个系统数据库,他们是Master,Model,Msdb,Tempdb,系统数据库至少有2个文件组成,一个是扩展名为.mdf的数据库文件,一个是扩展名为.ldf的事务日志文件,他们存储在SQLServer默认安装路径下的MSSQL子目录下的Data文件夹中。

 

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文件组中,如果需要将新建的数据库文件保存到一个新的文件组,单击文件组项目,选择新建。

 修改数据库路径

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

 数据库建立完成

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

数据库文件保存地址

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

 

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
7月前
|
SQL 缓存 关系型数据库
MySQL技能完整学习列表6、查询优化——3、查询缓存——4、SQL优化技巧
MySQL技能完整学习列表6、查询优化——3、查询缓存——4、SQL优化技巧
123 0
|
27天前
|
SQL 安全 前端开发
Web学习_SQL注入_联合查询注入
联合查询注入是一种强大的SQL注入攻击方式,攻击者可以通过 `UNION`语句合并多个查询的结果,从而获取敏感信息。防御SQL注入需要多层次的措施,包括使用预处理语句和参数化查询、输入验证和过滤、最小权限原则、隐藏错误信息以及使用Web应用防火墙。通过这些措施,可以有效地提高Web应用程序的安全性,防止SQL注入攻击。
49 2
|
6月前
|
SQL 存储 程序员
SQL查询的一些基本知识和学习指导
【6月更文挑战第17天】SQL查询核心包括基础选择、连接(JOIN)、子查询、聚合函数与GROUP BY、模糊匹配(LIKE)、分页与排序。JOIN操作连接多表,GROUP BY配合聚合函数做统计,LIKE用于模糊搜索。理解存储过程、触发器及自动增长列等进阶概念,通过实践提升SQL技能。
90 2
|
2月前
|
SQL 存储 数据库
SQL学习一:ACID四个特性,CURD基本操作,常用关键字,常用聚合函数,五个约束,综合题
这篇文章是关于SQL基础知识的全面介绍,包括ACID特性、CURD操作、常用关键字、聚合函数、约束以及索引的创建和使用,并通过综合题目来巩固学习。
45 1
|
4月前
|
SQL 存储 关系型数据库
PostgreSQL核心之SQL基础学习
PostgreSQL核心之SQL基础学习
56 3
|
6月前
|
SQL 存储 Java
SQL数据库学习指南:从基础到高级
SQL数据库学习指南:从基础到高级
|
5月前
|
SQL 存储 关系型数据库
关系型数据库SQL Server学习
【7月更文挑战第4天】
84 2
|
6月前
|
SQL 数据库
零基础学习数据库SQL语句之操作表中数据的DML语句
零基础学习数据库SQL语句之操作表中数据的DML语句
63 0
零基础学习数据库SQL语句之操作表中数据的DML语句
|
6月前
|
SQL 存储 关系型数据库
【数据库】SQL零基础入门学习
【数据库】SQL零基础入门学习
64 3
|
6月前
|
SQL 存储 关系型数据库
sql学习数据库
SQL(Structured Query Language)是用于管理关系型数据库的标准编程语言。学习SQL数据库涉及理解数据库的基本概念、SQL语言的结构和语法,以及如何使用SQL来查询、插入、更新