启动服务及创建和维护数据库,SQL Server 2005系列之二-阿里云开发者社区

开发者社区> 数据库> 正文

启动服务及创建和维护数据库,SQL Server 2005系列之二

简介:
一、启动SQL Server 2005服务
启动SQL Server 2005服务是操作SQL Server 2005的第一步,下面我们我来认识一下SQL Server 2005的服务类型和启动这些服务的方法。
  1.SQL Server 2005的服务类型
       SQL Server:这是操作SQL Server数据库引擎的服务,操作数据库必须启动该服务。
       SQL Server Agent:这是用于数据库代理业务的服务,如数据复制和作业调度等都将使用代理服务。
       SQL Server FullText Search:该服务用于全文搜索。
       SQL Server Brower:直接操作Http终端时的服务,这是SQL Server 2005新增的服务。
       SQL Server Analysis Service:该服务是用于数据分析,这是属于SQL Server商务智能的组件。
       SQL Server Integration Service:这是综合服务,用于数据集成和ETL的服务,是SQL Server商务智能的组件。
       SQL Server Reporting Service:该服务用于报表服务器,这是属于SQL Server商务智能的组件。
  2.启动SQL Server服务
       在使用SQL Server 2005前,必须确保SQL Server 2005服务已经启动。如果用户设定系统启动时自动启动SQL Server服务,那么在系统启动时,SQL Server就将自动启动;否则,用户必须在开机后手工启动SQL Server服务。下面将介绍手工启动SQL Server服务的三种方法。
   ①使用Windows系统服务管理器来启动SQL Server服务
      点击开始-管理工具-服务,如下图所示
01
     选中其中的SQL Server (MSSQLSERVER)服务,其中MSSQLSERVER是上篇博文中我们提到的数据库实例名称,单击左边的“启动”此服务,或者选中服务单击鼠标右键,在弹出的菜单中选择启动命令,将该服务启动。用同样的方法可以启动上述其他服务。
02 
   ②使用SQL Server配置管理器启动SQL Server服务
     执行开始-程序-Microsoft SQL Server 2005-配置管理器-SQL Server Configuration Manager,单击左边列表的“SQL Server 2005服务”,右边列表中将列出所安装的所有SQL Server 2005服务。选择要启动的服务,单击鼠标右键,在弹出的菜单中选择“启动”命令,启动服务。
03
   ③使用“net start 服务名”启动SQL Server服务
     执行开始-运行-CMD,在打开的命令提示符窗口中输入net start mssqlserver,启动SQL Server服务
04
验证服务是否启动我们可以使用如下两种方法:
netstat –an | find “1433”
telnet ip 端口号
对于服务的操作不仅仅只有启动这一种,我们还可以对服务执行暂停、停止和还原。具体操作方法参见上述启动方法①和②,对于命令提示符的操作命令为:
暂停:net pause  服务名
停止:net stop 服务名
还原:net continue 服务名
 
二、创建和维护数据库
在我们学习创建数据库之前,必须先要知道SQL究竟是什么?
SQL:全称是“结构化查询语言(Structured Query Language)”。最早是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言得到了广泛的应用。如今无论是像Oracle、Sybase、Informix、SQL Server这些大型的数据库管理系统,还是像Visual Foxporo、PowerBuilder这些PC上常用的数据库开发系统,都支持SQL语言作为查询语言。
明白了什么是SQL之后,我们来学习创建一个属于我们自己的数据库。
打开Microsoft SQL Server 2005-SQL Server Management Studio,不明白如何打开的朋友请翻看本人的前一篇博文:SQL Server 2005的安装,SQL Server 2005系列之一。
如下图所示,我们会在左侧的对象资源管理器中看到SQL Server 2005在安装的时就已经自动创建了如下四个数据库:
①Master:此数据库记录系统等级信息、SQL Server初始化信息和配置设置。该数据库还记录所有登陆的账户,所有现有的其他数据库以及用户数据库主要文件的位置。应始终保存Master数据库的最新备份。
②Model:此数据库用于在系统中创建的所有数据库模版包括TempDB数据库。当创建数据库时,该数据库的第一部分是作为model数据库的内容副本来创建的,数据库的其余部分则用空白页填充。Model数据库必须出现在系统中,这是因为每次启动SQL Server时,都将用它来重新创建TempDB。用户可以改变Model数据库使之包含用户定义的数据类型、表等,如果用户修改了Model数据库,则每个创建的数据库都有将具有修改后的属性,这里不建议初学者擅自修改。
③Msdb:此数据库提供SQL Server代理程序调度警报和作业以及记录操作员时使用。
④TempDB:此数据库保存临时数据表和临时存储过程,此外还用于SQL Server需要的其他临时存储。
05
在SQL Server中,不论是系统数据库还是用户数据库,都是由主数据文件和事务日志文件两部分组成的。我们都知道数据库最基本的对象是表,而数据库文件存放的则是表中的具体数据。事务日志文件则存放的是我们对表的一系列的操作。
说到这里有些朋友可能会想,事务到底是什么呢?
事务,在关系数据库中是这样定义的,一个事务可以是一条SQL语句,一组SQL语句或整个程序。它是恢复和并发控制的基本单位。事务具有4个属性:原子性、一致性、隔离性、持续性。这四个属性通常称为ACID特性
①原子性(atomicity):一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
②一致性(consistency):事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
③隔离性(isolation):一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
④持久性(durability):持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。
每创建一个数据库,都将创建一组数据文件,它们包括主数据文件和事务日志文件,主数据文件缺省的扩展名为.mdf,事务日志文件缺省的扩展名为.ldf。
创建数据库是数据库管理和维护的第一步,我们将学习使用图形界面和命令两种方法来创建数据库。
图形界面:
打开SQL Server Management Studio并连接到要创建数据库的服务器上,在“对象资源管理器”中选择“数据库”,单击鼠标右键,在弹出的菜单中执行“新建数据库”命令。
06
新建数据库界面如下,我们填写好各项,即可点击“确定”按钮完成创建。如果您看不到“确定”按钮,请点击右上角的最大化,这是由于屏幕分辨率造成的。
07
命令:
create database cyr520 ==创建数据库,其中cyr520为要创建的数据库名称。
on
(         
name=’cyr520’,     ==主数据文件的逻辑文件名
filename=’C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\cyr520.mdf’,  ==主数据文件的物理文件名及存放路径,这里的存放路径是默认路径,你可以自定义存放到其他地方。例如:c:\data下
size=10mb,    ==主数据文件的初始大小
maxsize=100mb,   ==主数据文件的最大值,如不写此项则默认为不限制其最大值,可以无限制增大
filegrowth=5mb   ==主数据文件的递增值,知道达到最大值将停止递增。 
)
log on
(
name=’cyr520_log’,   ==事务日志文件的各参数含义参考上面的主数据文件
filename=’C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\cyr520_log.ldf’,
size=10mb,
maxsize=100mb,
filegrowth=5mb
)
如果您有海量数据,只存放于一个数据文件里是很不适合您日后的管理和维护的,这里我们就需要引入多数据文件和文件组,它们的作用是简化数据和方便对数据位置的管理,并提高数据库读写磁盘的能力。
一个数据库,除了主数据文件之外,还可以有多个次要数据文件和事务日志文件,次要数据文件的缺省扩展名为.ndf。
主数据文件默认属于primary组并且不可更改,如果新添加的次要数据文件不为其指定所属文件组的话,它将默认属于primary组。事务日志文件不属于任何文件组。
创建文件组:
图形界面:
如果是在新建数据库时就添加文件组的话,只需在新建数据库界面里左侧的的“选择页”中点选“文件组”,点击右侧的“添加”按钮,输入文件组名,确定即可
08
如果是要为已经存在的数据库添加文件组,只需要选择你的数据库,点击右键属性,在数据库属性界面里左侧的的“选择页”中点选“文件组”,点击右侧的“添加”按钮,输入文件组名,确定即可。
命令:
新建数据库时添加文件组:
create database cyr520
on
(         
name=’cyr520’,  
filename=’C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\cyr520.mdf’, 
size=10mb, 
maxsize=100mb, 
filegrowth=5mb   
),
filegroup group2  ==自定义添加的文件组,group2为组名
(
name=’cyr520_file2’,
filename=’C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\cyr520_file2.ldf’, 
size=10mb,
maxsize=100mb,
filegrowth=5mb
)
log on
(
name=’cyr520_log’,   
filename=’C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\cyr520_log.ldf’, 
size=10mb,
maxsize=100mb,
filegrowth=5mb
)
为已经存在的数据库添加文件组
alter database cyr520 add filegroup group2
添加次要数据文件
alter database cyr520 add file
(
name=’cyr520_file2’, 
filename=’C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\cyr520_file2.ldf’, 
)
添加数据文件到指定的文件组
alter database cyr520 add file
(
name=’cyr520_file2’,  
filename=’C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\cyr520_file2.ldf’
) to filegroup group2
 
查看和修改数据库
sp_helpfile    ——查看数据库文件
sp_helpfilegroup    ——查看文件组
sp_helpdb    ——查看数据库信息
sp_renamedb  ——修改数据库名
 
使用alter database命令修改数据库、增加文件
改数据库名
alter database cyr520 modify name=test
修改已有数据文件的逻辑名
alter database cyr520 modify file (name=原逻辑名,newname=新逻辑名)
修改数据文件属性
alter database cyr520 modify file (name=cyr520,size=10mb,maxsize=100mb)
增加一个日志文件
alter database cyr520 add log file  (name=’test01_log’,filename=’c:\data\test01_log.ldf’)
删除数据文件
alter database cyr520 remove file cyr520_file2
删除日志文件
alter database cyr520 remove file test01_log
删除文件组
alter database cyr520 remove filegroup group2   ==要删除文件组,必须先删除其中的数据文件,否则无法成功删除
 
好了,启动服务及创建和维护数据库到此告一段落,下篇博文我们来学习如何创建表。。

本文转自 cyr520 51CTO博客,原文链接:http://blog.51cto.com/cyr520/190616

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章