MicrosoftSQLServer7.0数据库的创建与管理

网络整理 - 09-16
SQL Server 6.X使用设备(device)存储数据库,每个设备为操作系统上的一个磁盘文件, SQL Server 7.0是否也是这样?

不是。SQL Server 7.0的数据库不再使用设备存储, SQL Server 7.0每个数据库至少需要两个文件(数据和日志),数据和日志无法共享一个文件,并且每个文件只能给一个数据库使用,无法共享。

存放SQL Server 7.0数据库的磁盘文件有哪几种?

mdf:存放系统表格和数据,每个数据库至少要有一个mdf,并且只能有一个。

ndf:存放数据,无法存放系统表格,一个数据库可以有若干个ndf文件。

ldf:存放日志,可以有若干个。

SQL Server 7.0创建数据库的方法有哪几种?

使用数据库创建向导(Database Creation Wizard)。
SQL Server企业管理程序(Enterprise Manger)提供的图形用户接口。
使用CREATE DATABASE语句。
请给出一个使用创建数据库向导(Create Database Wizard)创建数据库的例子?

启动SQL Server企业管理程序(Enterprise Manager),选择您要创建数据库的SQL Server。
由「Tools」菜单点选择「Wizards...」,在「Select Wizard」对话框展开database工程,选择Create Databse Wizard,然后按「OK」按钮。
在Create Database Wizard的欢迎画面中按「下一步」按钮。
输入数据库名称、存放数据的文件及存放日志的文件路径,按「下一步」按钮。
系统预设数据文件名称为_data,输入文件名,按「下一步」按钮。
设定数据文件是否自动增加(auto grow)和最大值,按「下一步」按钮。
系统预设日志文件名称为_log,输入文件名,按「下一步」按钮。
设定日志文件是否自动增加和最大值,按「下一步」按钮。
系统显示数据库设置完成,按「完成」按钮,出现是否创建数据库维护计划(datbase maintenance plan),按「No」按钮。
展开database文件夹,新的数据库已创建。
请给出一个使用SQL Server Enterprise Manger创建数据库的例子?

激活「SQL Server Enterprise Manager」,选择要创建数据库的SQL Server。
选择database文件夹,按鼠标右键,选择菜单中的「New Database...」。
分别选择General和Transaction log卷标,输入相关信息。
如何使用CREATE DATABASE语句建立数据库?

请参考SQL Server 7.0联机书籍,"CREATE DATABASE(T-SQL)"文件。

如何增加数据库的大小?

设置文件自动增加(automatic file growth)。
增加数据库文件大小。
另外增加数据库文件存放文件(再增加一个ndf文件)。
如何缩小数据库的大小?

缩小整个数据库:如DBCC SHRINKDATABASE缩小某一数据库文件大小:如DBCC SHRINKFILE设置自动缩小数据库。

如何删除数据库?

使用SQL Server Enterprise Manger提供的图形用户接口。使用DROP DATABASE语句。

删除数据库的注意事项有哪些?

使用SQL Server Enterprise Manger提供的图形用户接口一次只能删除一个数据库。使用DROP DATABASE语句可同时删除多个数据库,如
DROP DATABASE db1,db2,db3
删除数据库后,如果有登录ID预设的数据库因此而被删除数据库, 那么该登录ID应将其预设数据库改为主数据库(master database)。删除数据库后,请立即备份主数据库。

无法删除数据库可能的原因?

此数据库正在恢复。
有用户正在使用此数据库。
此数据库部分表格为副本。
有哪些方法可以使数据库有较好的性能?

使用RAID。
将数据和日志放在不同的磁盘驱动器中。
使用Filegroups将对象放置在不同的磁盘驱动器中。
管理数据库的一些注意事项有哪些?

将数据和日志放在不同磁盘驱动器:除了可以得到较好的性能外,如果数据所在的磁盘驱动器坏了,还可以备份日志恢复数据。
禁用磁盘控制器(disk controller)的写缓存(write-cahcing)功能:除非写缓存的设计支持数据库服务器。
定期备份主数据库:此外添加、删除或修改数据库后也应该立即备份主数据库。
日志要有足够的空间:可以选择自动增加(automatic growth),自动增加文件大小或设定报警通知。
SQL Sever 7.0预设的数据日志大小比例为多少?

3:1,即数据占数据库3/4,日志占数据库1/4。

是否可以同时对数个数据库进行设置?

不行,如果想修改默认值,请更改模型数据库(model database),但是只有更改了模型数据库的设置后新添加的数据库才有效。

SQL Server 7.0是否可将tempdb放置在RAM中?

不可以。

SQL Server 7.0有哪些新增的数据库选项?

Autoclose(自动关闭):当所有用户都退出数据库时,自动关闭该数据库,并释放该数据库使用的资源。

Autoshrink(自动伸缩):设置可自动缩小数据库,SQL Server启动5分钟后会自动检查是否需要缩小数据库,此后每30分钟检查一次 。

ANSI nulls(ANSI空值): 将默认值设为null(空)或not null(非空)。

ANSI warning(ANSI警告):当设定成true时,遇到"divide by zero(被0除)"时会发出警告 。

quoted identifier(引用标志符):设置引用标志(quotation mark)的使用方式是否复合ANSI 。