数据库——数据库对象

目标

了解数据库的组成及特点
掌握SQL Server 2008 安装与配置
掌握数据库的创建于维护方法
掌握框架的定义与维护方法
掌握分区表,索引及视图的创建于维护方法

创建及维护数据库

SQL Server 数据库的分类
系统数据库(自动创建)
master:所有系统信息,元数据,端点,连接服务器和系统配置
msdb:代理服务调度报警器和作业 ,记录操作员使用保存此类信息
tempb:所有数据库的模板,存放用户数据库的公共信息
resource:只读数据库,在对象资源管理器中看不到

用户数据库:保存于用户业务有关的数据

SQL Server 数据库的组成
SQL Server 将数据库映射为一组操作系统文件
数据文件:
mdf :主要数据文件,只有一个 不小于3M
ndf: 次要数据文件,有0个或多个,可在磁盘或多个磁盘存放
日志文件:
ldf:事务日志问价。至少有一个日志问价

数据库存储空间的分配:
创建用户数据库时,model数据库被自动复制到新建库
数据存储的最小单位:数据页(页)
1页是一块8KB 的连续磁盘空间
页的大小决定了数据库表中一行数据的最大大小。行不能跨页存储。
1kb ≈1000字节

数据库文件组
两种类型的文件组:
主文件(PRIMARY):系统定义,包含主要数据文件和任何没有明确分配其他文件组的其他数据文件,系统表所有页均分配在主文件组中
用户定义文件组:
在定义或修改数据库时用 FILEGRUOP 关键字指定

注意:
1 日志文件不再文件组中,日志空间与数据空间分开管理
2 一个文件不可以是多个文件组成员
3 若文件组包含多个文件,则在所有文件被填满后才会自动循环增长
4 文件加入数据库后,不能移动到其他文件组
5 只能指定一个文件组委默认文件组

数据库问价属性
定义数据库的数据问价和日志文件所需的信息:
文件名及其位置:逻辑文件名,物理文件名
初始大小:不能小于model数据库主要数据文件的大小

增长方式:
可指定文件是否增长(默认)
最大大小:文件增长的最大限制,默认无限制

用T-SQL 创建数据库
创建数据一般有两种方式:
通过SQL Server Management Studio 创建数据库。
通过T-SQL语句创建数据库
在这里插入图片描述
PRIMARY:指定主要数据库文件,没有指定默认第一个主要文件是主要数据文件
LOG ON :自动创建日志文件,大小为数据文件总和25%或512KB
NAME:逻辑文件名,唯一
FILENAME:物理文件名
SIZE:初始大小 .mdf 大小不小于 model .ndf 默认为1 M
MAXSIZE :最大大小,未指定文件则自动增长到磁盘满
UNLIMITED:增长无限制,一般指定日志文件为2TB ,数据文件16TB
FILEGROWTH:指定文件自动增量,不超过MAXSIZE,默认数据文件1MB,日志文件为当前文件的10%
FILEGROUP:文件组逻辑名,唯一,不能是系统名
DEFAULE:指定该文件组为逻辑文件组
在这里插入图片描述
修改数据库
扩大数据库空间:
扩大数据中已有文件的大小
为数据库中添加新的文件

收缩数据库空间:
释放数据库中未使用的空间,文件的收缩从末尾开始。
自动收缩:AYTO_SHRINK 默认false
手工收缩:收缩数据库中某个文件大小;
按比例收缩整个数据库的大小。

添加和删除数据库文件
在这里插入图片描述
在这里插入图片描述
收缩整个数据库的大小:
DBCC SHRINMDATABASE
指定收缩文件的大小
DBCC SHRINKFILE

删除数据库文件:
ALTER DATABASE STU_DB
REMOVE FILE student_log1
注意:
添加文件是,每个文件组中的数据文件按比例填充,日志文件依次增加的
文件为空才能删除

7 分离和附加数据库
作用:实现将数据从一台数据库服务器移动到另一台,不需要重建。
从实例中删除,不能删除数据文件和日志文件,保持了数据文件和日志文件完整一致
使用 sp_detach_db

附加数据库
将分离的数据库重新附加到数据库管理系统中
必须指定主要数据文件的物理存储位置和文件名
CREATE DATABASE …
FOR ATTACH | ATTACH_REBUILD_LOG

架构

架构 是数据库下的一个逻辑命名空间,是数据库对象的容器,一个数据库包含一个或多个架构,同一个数据库架构名唯一。

定义架构
CREATE SHCEMA 【<架构名>】
AUTHORIZATION

删除架构
DROP SCHEMA【<架构名>】

分区表

基本概念:分区表是将表中的数据按水平分割成不同的子集,并将数据子集存储在数据库一个或多个文件组中。物理上将大表分成几个小表,逻辑上还是一个大表

合理使用分区能提高数据库性能

是否创建分区取决于表当前数据量大小,以及将来数据量,还取决于表中数据的操作特点
表中含以多种不同的方式使用大量的数据
数据是分段比如一年份分割

创建分区表
(1)创建分区函数:告诉DBMS 以什么方式进行分区
CREATE PARTITION FUNCTION
(2) 创建分区方案:作用是将分区函数生成的分区映射到文件组中
CREATE PARTITION SCHEME
(3)使用分区创建表
在这里插入图片描述
在这里插入图片描述

索引

在这里插入图片描述
在这里插入图片描述

索引视图

基本概念:
标准视图也称虚拟表,返回结果集与基本表一致,标准视图的结果集永不久存放;
建立唯一聚集索引的视图,也称为索引视图,也称物化视图,建立索引后,视图的结果集存放在数据库中。
对基本表的修改会反映到索引视图存储的数据中

适合建立索引视图的场合
很少更新基础数据,索引视图效果更好
若基础数据以批量处理形式定期更新,且主要是作为只读数据进行处理,可考虑在更新前删除所有索引视图,然后重建,提高更新性能

索引视图可以提高一下查询数据性能
处理大量行的数据和聚合
许多查询经常执行的连接和聚合操作

索引视图通常不会提高这些查询新能
具有大量写操作的OLTO
具有大量更新操作的数据库
不涉及聚合的连接查询
GROUP BY 具有季度的数据聚合

定义索引视图
创建索引视图前视图必须符合的条件
定义索引视图时,视图只能引用基本表,不能是其他视图。
引用 的所以基本表和视图同一数据库,所有者相同
必须用SCHEMABINDING 选项建视图
视图中表达式引用的所有函数必须确定
对视图建立的第一个索引是唯一聚集索引,之后再创建其他
CREATE VIEW ;WITH SHCEMABINDING ;CREATE
UNIQUE CLUSTERED INDEX…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值