SQLServer基础教程PPT课件_第1页
SQLServer基础教程PPT课件_第2页
SQLServer基础教程PPT课件_第3页
SQLServer基础教程PPT课件_第4页
SQLServer基础教程PPT课件_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2020 4 24 第1页 本章概述 业务数据存储在什么地方 数据库对象存储在哪里 对于业务数据而言 什么样的存储方式是合理的 如果数据量剧增之后 数据库能否适应这些变化 回答诸如此类的问题 首先需要明白到底什么是数据库 数据库是数据库管理系统的核心 是存放数据库对象的容器 是使用数据库系统时首先面对的对象 管理数据库就是设计数据库 定义数据库和维护数据库的过程 数据库的效率和性能在很大程度上取决于数据库的设计和优化 本章将对MicrosoftSQLServer系统的数据库管理进行全面的研究和分析 2020 4 24 第2页 本章要点 数据库的管理问题数据库文件和文件组的基本特征数据库的物理存储方式和大小估算方法使用CREATEDATABASE语句定义数据库数据库选项的作用和设置方式扩大数据库的原因和方法收缩数据库的原因和方法文件组的管理方式数据库快照的作用和特点优化数据库设计的方法 2020 4 24 第3页 本章内容 4 1概述4 2数据库文件和文件组的基本特征4 3定义数据库4 4修改数据库4 5管理数据库快照4 6其他相关操作4 7优化数据库4 8本章小结 2020 4 24 第4页 4 1概述 为了有效地实现数据库的管理工作 必须至少解决8个方面的问题 包括数据库文件的存储问题 数据库的大小问题 确定数据库运行时的行为特征 数据库的更改问题 数据库的扩大问题 数据库的收缩问题 如何兼顾数据库的事务处理效率和决策支持效率问题和数据库的性能优化问题等 2020 4 24 第5页 4 2数据库文件和文件组的基本特征 本节主要讲述数据库文件的类型 事务的概念 文件组的作用 估算数据库文件大小的方法等内容 2020 4 24 第6页 数据库文件 在MicrosoftSQLServer2008系统中 一个数据库至少有一个数据文件和一个事务日志文件 当然 一个数据库也可以有多个数据文件和多个日志文件 数据文件用于存放数据库的数据和各种对象 而事务日志文件用于存放事务日志 一个数据库最多可以拥有32767个数据文件和32767个日志文件 2020 4 24 第7页 文件组 文件组就是文件的逻辑集合 为了方便数据的管理和分配 文件组可以把一些指定的文件组合在一起 使用文件和文件组时 应该考虑下列因素 1 一个文件或者文件组只能用于一个数据库 不能用于多个数据库 2 一个文件只能是某一个文件组的成员 不能是多个文件组的成员 3 数据库的数据信息和日志信息不能放在同一个文件或文件组中 数据文件和日志文件总是分开的 4 日志文件永远也不能是任何文件组的一部分 2020 4 24 第8页 估算大小 通过理解数据库的空间管理 可以估算数据库的设计尺寸 数据库的大小等于数据库中的表大小 索引大小以及其他占据物理空间的数据库对象大小之和 假设某个数据库中只有一个表 该表的数据行字节是800B 这时 一个数据页上最多只能存放10行数据 如果该表大约有100万行的数据 那么该表将占用10万个数据页的空间 因此 该数据库的大小估计为 100000 8KB 800000KB 781 25MB 根据数据库大小的估计值 再考虑其他因素 就可以得到数据库的设计值 2020 4 24 第9页 4 3定义数据库 定义数据库就是创建数据库和设置数据库选项 本节从3个方面讲述定义数据库 创建数据库 设置数据库选项和查看数据库信息 2020 4 24 第10页 创建数据库 创建数据库就是确定数据库名称 文件名称 数据文件大小 数据库的字符集 是否自动增长以及如何自动增长等信息的过程 在一个MicrosoftSQLServer实例中 最多可以创建32767个数据库 数据库的名称必须满足系统的标识符规则 在命名数据库时 一定要保证数据库名称简短并有一定的含义 具有CREATEDATABASE CREATEANYDATABASE或ALTERANYDATABASE权限的用户才可以执行创建数据库的操作 2020 4 24 第11页 创建一个最简单的数据库 2020 4 24 第12页 使用CREATEDATABASE语句创建数据库 2020 4 24 第13页 创建有多个文件和文件组的数据库 2020 4 24 第14页 数据库的状态和选项 为了理解数据库的运行特征 需要了解数据库的状态和选项 下面分别介绍数据库的状态和选项 数据库总是处在某个特定的状态中 例如 ONLINE状态表示数据库处于正常的在线状态 可以对数据库执行正常的操作 数据库的状态清单和特征描述如表4 1所示 2020 4 24 第15页 数据库选项 设置数据库选项是定义数据库状态或特征的方式 例如可以设置数据库的状态为EMERGENCY 每一个数据库都有许多选项 可以使用ALTERDATABASE语句中的SET子句来设置这些数据库选项 需要注意的是 使用MicrosoftSQLServerManagementStudio工具只能设置其中大多数的选项 下面 首先介绍MicrosoftSQLServer2008系统提供的数据库选项 然后讲述如何设置这些选项 在MicrosoftSQLServer2008系统中 共有大约30多个数据库选项 这些数据库选项的清单和功能描述如表4 2所示 2020 4 24 第16页 设置数据库选项 2020 4 24 第17页 查看数据库信息 在MicrosoftSQLServer2008系统中 可以使用一些目录视图 函数 存储过程查看有关数据库的基本信息 sys databases数据库和文件目录视图可以查看有关数据库的基本信息 sys database files可以查看有关数据库文件的信息 sys filegroups可以查看有关数据库文件组的信息 sys master files可以查看数据库文件的基本信息和状态信息 DATABASEPROPERTYEX函数可以查看指定数据库的指定选项的信息 一次只能返回一个选项的设置 2020 4 24 第18页 查看数据库选项的设置 2020 4 24 第19页 查看数据库空间使用状况信息 2020 4 24 第20页 使用sp helpdb存储过程查看数据库 2020 4 24 第21页 数据库属性 AdventureWorks 对话框 2020 4 24 第22页 4 4修改数据库 数据库创建之后 可以根据需要使用ALTERDATABASE语句对数据库进行修改 除了前面讲过的设置数据库选项之外 修改操作还包括更改数据库名称 扩大数据库 收缩数据库 修改数据库文件 管理数据库文件组以及修改字符排列规则等 下面将详细讨论这些内容 2020 4 24 第23页 更改数据库名称 数据库创建之后 一般情况下不要更改数据库的名称 因为许多应用程序都可能使用了该数据库的名称 数据库名称更改之后 需要修改相应的应用程序 如果确实需要更改数据库名称 可以使用ALTERDATABASE语句做到 使用ALTERDATABASE语句更改数据库名称的语法形式如下 ALTERDATABASEdatabase nameMODIFYNAME new database name 2020 4 24 第24页 更改数据库名称 2020 4 24 第25页 扩大数据库 在MicrosoftSQLServer系统中 如果数据库的数据量不断膨胀 可以根据需要扩大数据库的尺寸 有3种扩大数据库的方式 第一种方式是设置数据库为自动增长方式 可以在创建数据库时设置 第二种方式是直接修改数据库的数据文件或日志文件的大小 第三种方式是在数据库中增加新的次要数据文件或日志文件 2020 4 24 第26页 通过增加新的数据文件来扩大数据库 2020 4 24 第27页 通过扩大数据文件的大小来扩大数据库 2020 4 24 第28页 收缩数据库 如果数据库的设计尺寸过大了 或者删除了数据库中的大量数据 这时数据库会白白耗费大量的磁盘资源 根据用户的实际需要 可以收缩数据库的大小 在MicrosoftSQLServer系统中 有3种收缩数据库的方式 第一种方式是设置数据库为自动收缩 可以通过设置AUTO SHRINK数据库选项实现 第二种方式是收缩整个数据库的大小 可以通过使用DBCCSHRINKDATABASE命令完成 第三种方式是收缩指定的数据文件 可以使用DBCCSHRIKNFILE命令实现 除了这些命令方式之外 也可以使用SQLServerManagementStudio工具来收缩数据库 2020 4 24 第29页 不能使用ALTERDATABASE语句直接收缩数据库文件 2020 4 24 第30页 使用AUTO SHRINK数据库选项设置 在MicrosoftSQLServer系统中 数据库引擎会定期检查每一个数据库的空间使用情况 如果某个数据库的AUTO SHRINK选项设置为ON 则数据库引擎将自动收缩数据库中文件的大小 如果该选项的设置为OFF 则不自动收缩数据库的大小 该选项的默认值是OFF 在ALTERDATABASE语句中 设置AUTO SHRINK选项的语法形式如下 ALTERDATABASEdatabase nameSETAUTO SHRINKON 2020 4 24 第31页 使用DBCCSHRINKDATABASE命令 DBCCSHRINKDATABASE命令是一种比自动收缩数据库更加灵活收缩数据库的方式 可以对整个数据库进行收缩 DBCCSHRINKDATABASE命令的基本语法形式如下 DBCCSHRINKDATABASE database name target percent 2020 4 24 第32页 使用DBCCSHRINKDFILE命令 DBCCSHRINKDFILE命令可以收缩指定的数据库文件 并且可以将文件收缩至小于其初始创建的大小 重新设置当前的大小为其初始创建的大小 这是该命令与自动收缩 DBCCSHRINKDATABASE命令不同的地方 在执行收缩数据库操作时 DBCCSHRINKDFILE命令的功能最强大 DBCCSHRINKDFILE命令的基本语法形式如下 DBCCSHRINKFILE file name target size 2020 4 24 第33页 使用SQLServerManagementStudio 2020 4 24 第34页 修改数据库文件 用户可以根据需要使用ALTERDATABASE语句修改数据库中指定的文件 这些修改操作包括增加数据文件 在指定的文件组中增加指定文件 增加日志文件 删除指定的文件以及修改指定的文件等 增加数据文件 修改指定的文件等操作已经讲过了 下面通过一些示例讲述有关数据库文件的其他操作 如果要在指定的文件组中增加文件 则可以使用TOFILEGROUP子句 例如 如果LGCom数据库包含了两个数据文件 即LGF1和LGF2 现在要新增加一个LGF3文件并且将其放在FG1文件组 该文件组必须已经存在 中 那么可以使用如图4 14所示的命令 2020 4 24 第35页 在指定的文件组中增加文件 2020 4 24 第36页 管理文件组 文件组是数据库数据文件的逻辑组合 它可以对数据文件进行管理和分配 以便提高数据库文件的并发使用效率 Transact SQL语言没有提供独立的管理文件组的命令 只能通过ALTERDATABASE语句提供管理文件组的命令 这些管理文件组的命令包括新建文件组 设置默认的文件组 设置文件组的属性 修改文件组以及删除文件组等 下面详细介绍管理文件组的操作 2020 4 24 第37页 新建文件组的同时不能设置为默认文件组 2020 4 24 第38页 将文件组设置为只读状态 2020 4 24 第39页 4 5管理数据库快照 相片是被照对象在照像时刻的静态图像表示 数据库快照与此类似 数据库快照提供了源数据库在创建快照时刻的只读 静态视图 可以有效地支持报表数据汇总和数据分析等只读操作 如果源数据库中包含了未提交事务 那么这些事务不包含在数据库快照中 需要说明的是 数据库快照必须与源数据库在同一个服务器实例上 数据库快照是在数据页级上进行的 2020 4 24 第40页 限制 必须与源数据库在相同的服务器实例上创建数据库快照 数据库快照捕捉开始创建快照的时刻点 不包括所有未提交的事务 数据库快照是只读的 不能在数据库快照中执行修改操作 不能修改数据库快照的文件 不能创建基于model master tempdb等系统数据库的快照 不能对数据库快照执行备份或还原操作 不能附加或分离数据库快照 数据库快照不支持全文索引 因此源数据库中的全文目录不能传输过来 数据库快照继承快照创建时源数据库的安全约束 但是由于快照是只读的 源数据库中对权限的修改不能反映到快照中 数据库快照始终反映创建该快照时的文件组状态 2020 4 24 第41页 创建数据库快照 2020 4 24 第42页 4 6其他相关操作 除了前面讲述的数据库操作之外 数据库管理操作还包括分离数据库 附加数据库和删除数据库等 下面介绍这些操作 2020 4 24 第43页 分离数据库 分离数据库是指将数据库从MicrosoftSQLServer实例中删除 但是该数据库的数据文件和事务日志文件依然保持不变 这样可以将该数据库附加到任何的MicrosoftSQLServer实例中 可以使用sp detach db存储过程来执行数据库分离操作 当然也可以使用SQLServerManagementStudio工具来执行分离操作 例如 如果要分离LGCom数据库 可以执行如图4 18所示的命令 2020 4 24 第44页 分离数据库 2020 4 24 第45页 附加分离的数据库 2020 4 24

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论