SQLSERVER排查阻塞

SQLSERVER排查阻塞
SQLSERVER排查阻塞

SQL Server允许并发操作,BLOCKING是指在某一操作没有完成之前,其他操作必须等待,以便于保证数据的完整性。BLOCKING的解决方法要查看BLOCKING的头是什么,为什么BLOCKING头上的语句执行的很慢。通常来讲只要我们能找到BLOCKING头上的语句,我们总能够想出各种各种的办法,来提升性能,缓解或解决BLOCKING的问题。

但是问题的关键是,我们不知道BLOCKING什么时候会发生。用户跟我们抱怨数据库性能很差,等我们连上数据库去查看的时候,那时候有可能BLOCKING 可能就已经过去了。性能又变好了。或者由于问题的紧急性,我们直接重新启动服务器以恢复运营。但是问题并没有最终解决,我们不知道下次问题会在什么时候发生。

BLOCKING问题的后果比较严重。因为终端用户能直接体验到。他们提交一个订单的时候,无论如何提交不上去,通常几秒之内能完成的一个订单提交,甚至要等待十几分钟,才能提交完成。更有甚者,极严重的BLOCKING能导致SQL Server停止工作。如下面的SQL ERRORLOG所表示, 在短短的几分钟之内,SPID数据从158增长到694, 并马上导致SQL Server打了一个dump, 停止工作。我们很容易推断出问题的原因是由于BLOCKING导致的,但是我们无法得知BLOCKING HEADER是什么,我们必须要等下次问题重现时,辅之以工具,才能得知BLOCKING HEADER在做什么事情。如果信息抓取时机不对,我们可

能要等问题发生好几次,才能抓到。这时候,客户和经理就会有抱怨了。因为我们的系统是生产系统,问题每发生一次,都会对客户带来损失。

2011-06-01 16:22:30.98 spid1931 Alert There are 158 Active database sessions which is too high.

2011-06-01 16:23:31.16 spid3248 Alert There are 342 Active database sessions which is too high.

2011-06-01 16:24:31.06 spid3884 Alert There are 517 Active database sessions which is too high.

2011-06-01 16:25:31.08 spid3688 Alert There are 694 Active database sessions which is too high.

2011-06-01 16:26:50.93 Server Using 'dbghelp.dll' version '4.0.5'

2011-06-01 16:26:50.97 Server **Dump thread - spid = 0, EC = 0x0000000000000000

2011-06-01 16:26:50.97 Server ***Stack Dump being sent to

D:\MSSQL10.INSTANCE\MSSQL\LOG\SQLDump0004.txt

2011-06-01 16:26:50.97 Server *

*******************************************************************************

2011-06-01 16:26:50.97 Server *

2011-06-01 16:26:50.97 Server * BEGIN STACK DUMP:

2011-06-01 16:26:50.97 Server * 06/01/11 16:26:50 spid 4124

2011-06-01 16:26:50.97 Server *

2011-06-01 16:26:50.97 Server * Deadlocked Schedulers

2011-06-01 16:26:50.97 Server *

2011-06-01 16:26:50.97 Server *

*******************************************************************************

2011-06-01 16:26:50.97 Server * -------------------------------------------------------------------------------2011-06-01 16:26:50.97 Server * Short Stack Dump

2011-06-01 16:26:51.01 Server Stack Signature for the dump is 0x0000000000000258

BLOCKING的信息抓取有很多种方法。这里罗列了几种。并且对每种分析它的优缺点。以便我们选择。在枚举方法之前,我们先简单演示一下BLOCKING.

我们首先创建一个测试表:

DROP TABLE [TESTTABLE]

GO

CREATE TABLE [dbo].[TESTTABLE](

[ID] [int] NULL,

[NAME] [nvarchar](50)NULL

)

GO

INSERT INTO TESTTABLE VALUES (1,'aaaa')

GO

然后打开一个查询窗口,执行下面的语句, 该语句修改一行数据,并等待3分钟,然后在结束transaction

BEGIN TRANSACTION

UPDATE TESTTABLE SET [NAME] ='bbbb'WHERE [ID] = 1

WAITFOR DELAY'00:03:00'

COMMIT TRANSACTION

这时候,如果打开另外一个查询窗口,执行下面的语句,下面的语句就会被BLOCK住。

UPDATE TESTTABLE SET [NAME] ='cccc'WHERE [ID] = 1

方法一, 抓取SQL Profiler

======================

SQL Profiler里面包含大量的信息。其中有一个事件在Errors and Warnings->Blocked Process Report专门用来获得blocking的情况。但是因为信息量比较大,而且我们并不能很好的估算在什么时候会产生blocking,另外在生产环境使用Profiler, 对性能可能会有影响,所以SQL Profiler并不是最合适的工具。我们在这里并不对它赘述。

方法二, 执行查询

================

如果我们检查问题的时候,blocking还存在,那么,我们可以直接可以运行几个查询,得知BLOCKING HEADER的信息

SELECT*FROM sys.sysprocesses where spid>50

上述查询只是告诉我们,BLOCKING HEADER的头是SPID=53, 但是并没有告诉我们SPID=53在做什么事情。我们可以用下面的查询,得到SPID=53的信息

DBCC INPUTBUFFER(53)

我们可以把上述的两个查询合并起来,用下面的查询:

SELECT SPID=p.spid,

DBName =convert(CHAR(20),https://www.360docs.net/doc/bb1280853.html,),

ProgramName =program_name,

LoginName =convert(CHAR(20),https://www.360docs.net/doc/bb1280853.html,),

HostName =convert(CHAR(20),hostname),

Status= p.status,

BlockedBy = p.blocked,

LoginTime = login_time,

QUERY =CAST(TEXT AS VARCHAR(MAX)) FROM MASTER.dbo.sysprocesses p

INNER JOIN MASTER.dbo.sysdatabases d

ON p.dbid= d.dbid

INNER JOIN MASTER.dbo.syslogins l

ON p.sid= l.sid

CROSS APPLY sys.dm_exec_sql_text(sql_handle) WHERE p.blocked = 0

AND EXISTS(SELECT 1

FROM MASTER..sysprocesses p1

WHERE p1.blocked = p.spid)

这样,一次执行,就能告诉我们BLOCKING header的SPID信息,以及该SPID 在做的语句。我们可以进一步研究该语句,以理解为什么该语句执行很慢。

用这个方法有一个缺点,就是使用的时候,要求BLOCKING是存在的。如果BLOCKING已经消失了,那么我们的方法就不管用了。

方法三,长期执行一个BLOCKING SCRIPT

==================================

因为我们通常无法知道BLOCKING什么时候会产生,所以通常的办法是我们长期运行一个BLOCKING SCRIPT, 这样,等下次发生的时候,我们就会有足够的信息。长期运行BLOCKING SCRIPT对性能基本上是没有影响的。因为我们每隔10秒钟抓取一次信息。缺点是,如果问题一个月才发生一次,那么,我们的BLOCKING日志信息会很大。所以这种方法适用于几天之内能重现问题。

运行方法如下:

如果要停止运行,我们按ctrl+c就可以了。

BLOCKING的信息存在log.out这个文件中

我们可以打开log.out这个文件, 会发现SPID 54被SPID 53给Block住了。

而随后,我们可以看到SPID=53在做什么事情:

下面是BLOCKING SCRIPT的脚本, 我们可以把它存为blocking.sql

use master

go

while 1 =1

begin

print'Start time: '+convert(varchar(26),getdate(), 121)

Print'Running processes'

select spid, blocked, waittype, waittime, lastwaittype, waitresource,dbid,uid, cpu, physical_io, memusage, login_time, last_batch,

open_tran,status, hostname,program_name, cmd, net_library, loginame

from sysprocesses

--where (kpid <> 0 ) or (spid < 51)

-- Change it if you only want to see the working processes

print'*********lockinfor***********'

select convert(smallint, req_spid)As spid,

rsc_dbid As dbid,

rsc_objid As ObjId,

rsc_indid As IndId,

substring(https://www.360docs.net/doc/bb1280853.html,, 1, 4)As Type,

substring(rsc_text, 1, 16)as Resource,

substring(https://www.360docs.net/doc/bb1280853.html,, 1, 8)As Mode,

substring(https://www.360docs.net/doc/bb1280853.html,, 1, 5)As Status

from master.dbo.syslockinfo,

master.dbo.spt_values v,

master.dbo.spt_values x,

master.dbo.spt_values u

where master.dbo.syslockinfo.rsc_type = v.number and v.type='LR'

and master.dbo.syslockinfo.req_status = x.number and x.type='LS'

and master.dbo.syslockinfo.req_mode + 1 = u.number

and u.type='L'

order by spid

print'inputbuffer for running processes'

declare @spid varchar(6)

declare ibuffer cursor fast_forward for

select cast(spid as varchar(6))as spid from sysprocesses where spid >50 open ibuffer

fetch next from ibuffer into @spid

while (@@fetch_status!=-1)

begin

print''

print'DBCC INPUTBUFFER FOR SPID '+ @spid

exec ('dbcc inputbuffer ('+ @spid +')')

fetch next from ibuffer into @spid

end

deallocate ibuffer

waitfor delay'0:0:10'

End

这种方法的缺陷就是,log.out会比较巨大,会占用很大的空间,如果blocking 一个月甚至更长时间才发生一次,那我们的这个方法就不太适宜。

方法四,我们用Agent Job来检查BLOCKING

=====================================

长期运行一个BLOCKING SCRIPT的缺点是我们每隔一段时间,去查询信息,但是大多数收集的信息是无用的。所以会导致日志文件巨大,对于一个生产系统来讲,磁盘空间满可不是个好事情,另外,有一些客户对于用命令行来长期运行TSQL脚本有所顾忌,所以我们做了一个改进。这次,我们只收集有用的信息。对于无用的信息我们不关注。这样能极大减少日志大小。

我们首先创建一个观察数据库,然后建立两张表格Blocking_sysprocesses和Blocking_SQLText, 建立一个存储过程和一个Job, 该Job每隔一段时间去调用存储过程。只有发现有blocking的,我们才记录到表格

Blocking_sysprocesses和Blocking_SQLText这两个表格中。如果跟blocking 无关,我们就不对它进行记录。下面是TSQL语句:

CREATE DATABASE [MonitorBlocking]

GO

USE [MonitorBlocking]

GO

CREATE TABLE Blocking_sysprocesses(

[spid] smallint,

[kpid] smallint,

[blocked] smallint,

[waitType] binary(2), [waitTime] bigInt, [lastWaitType] nchar(32), [waitResource] nchar(256), [dbID] smallint,

[uid] smallint,

[cpu] int,

[physical_IO] int, [memusage] int,

[login_Time] datetime, [last_Batch] datetime, [open_Tran] smallint, [status] nchar(30), [sid] binary(86), [hostName] nchar(128),

[program_Name] nchar(128),

[hostProcess] nchar(10),

[cmd] nchar(16),

[nt_Domain] nchar(128),

[nt_UserName] nchar(128),

[net_Library] nchar(12),

[loginName] nchar(128),

[context_Info] binary(128),

[sqlHandle] binary(20),

[CapturedTimeStamp] datetime

)

GO

CREATE TABLE [dbo].[Blocking_SqlText]( [spid] [smallint],

[sql_text] [nvarchar](2000),

[Capture_Timestamp] [datetime]

)

GO

CREATE PROCEDURE [dbo].[checkBlocking]

AS

BEGIN

SET NOCOUNT ON;

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

declare @Duration int-- in milliseconds, 1000 = 1 sec declare @now datetime

declare @Processes int

select@Duration = 100 -- in milliseconds, 1000 = 1 sec select@Processes = 0

select @now =getdate()

CREATE TABLE #Blocks_rg(

[spid] smallint,

[kpid] smallint,

[blocked] smallint,

[waitType] binary(2),

[waitTime] bigInt,

[lastWaitType] nchar(32),

[waitResource] nchar(256),

[dbID] smallint,

[uid] smallint,

[cpu] int,

[physical_IO] int, [memusage] int,

[login_Time] datetime, [last_Batch] datetime, [open_Tran] smallint, [status] nchar(30),

[sid] binary(86), [hostName] nchar(128), [program_Name] nchar(128), [hostProcess] nchar(10), [cmd] nchar(16),

[nt_Domain] nchar(128), [nt_UserName] nchar(128), [net_Library] nchar(12),

[loginName] nchar(128),

[context_Info] binary(128),

[sqlHandle] binary(20),

[CapturedTimeStamp] datetime )

INSERT INTO #Blocks_rg SELECT

[spid],

[kpid],

[blocked],

[waitType],

[waitTime],

[lastWaitType],

[waitResource],

SQLSERVER镜像环境搭建详细操作步骤

. SQLSERVER2008R2镜像操作步骤关于环境设置everyone;和1.MSSqllServer安装路径下的MSSQLMSSSQL下的DATA和BACKUP文件权限设置为C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\目录:】【添加】【右键】步骤:在文件夹上点→【属性】→【安全】→【编辑】→→【高级】→【立即查找】→【EVERYONE→【确定】,选中EVERYONE设置权限→【完全控制】→【确定】; 2.修改MachineKeys文件夹权限: c:\ProgramData\Microsoft\Crypto\RSA\MachineKeys\的权限为everyone;】步骤:在文件夹上点【右键】→【属性】→【EVERYONE【立即查找】→【高级】→→【安全】→【编辑】→【添加】EVERYONE 设置权限→【完全控制】→【确定】;→【确定】,选中); TRUE(设置数据库的”外围应用配置器”的RemoteDaceEnabled 为主机和备机都要修改,步骤一样3. 】→在连接到服务】→【SQL Server ManagementStudio步骤:打开【所有程序】→【Microsoft SQL Server 2008 R2Microsoft SQL Server 其他保持默认,然后点击连接;IP,输入设置的密码,器对话框→服务器名称下拉框输入本机的对象资源管理中选中根节点,点【右键】→【方面】→【常规】在方面下拉框中选择【外ManagementStudio围应用配置器】选中【RemoteDacEnabled; →【确定】】修改值为:TRUE 】→【属性】→【高TCP/IPv4修改NetBIOS设置:点击【网络和共享中心】→【本地连接】→【属性】→【4. 】→【确定】;上的NetBIOS(N)WINS】→【NetBIOS设置】修改为:【启动TCP/IP级】→【 5.更改主备计算机名称;步骤:选中【计算机】点【右键】→【属性】→【高级系统设置】→【计算机名】→【更改】,在计算机名的输入框中输入计算机名称,建议主机用:PRIMARY 备机用:MIRROR ;→【确定】; 与主机名称对应。修改文件:C:\WINDOWS\SYSTEM32\DRIVERS\etc\目录下的hosts6.设置指定IP例如:PRIMARY 172.168.2.101 主机IP是:计算机名称:计算机名称:MIRRORIP备机是:172.168.2.102 文件,修改文件最后两行内容为:用记事本打开hosts172.168.2.101 PRIMARY 可编辑范本 . 172.168.2.102 MIRROR C:\Program 建立一个共享文件夹,作为数据库备份的映射路径。建议在备机数据库存放数据的文件根目录下(7. )建共享文件夹. Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\新建文件夹:【右键】→【新建】→【文件夹】→【重命名】→命名为:backup;步骤:1.设置共享:【右键】→【属性】→【共享】→【高级共享】→选中【共享此文件夹】选项→【权限】2.EVERYONE】→【完全控制】→【确定】→选中【 镜像步骤打开SQL Server ManagementStudio】→在连接到服务器对1.打开【所有程序】→【SQL Server ManagementStudioMicrosoft SQL Server 2008 R2】→【话框→服务器名称下拉框输入本机IP,输入设置的密码,其他保持默认,然后点击连接;\backup\;:2.在数据盘根目录中新建一个文件夹用于存放证书。e 主机数据库备份→【任务】→【备份】直接上【右键】 1.先完整备份数据库:在数据库根节下的数据库HT_MANAGE_DB点【确定】→

超详细图解sql2005安装全过程

其实不晓得 其实不晓得 主页博客相册个人档案好友 查看文章 超详细图解sql2005安装全过程 2009年11月27日 星期五 22:35 之前安装S Q L2005老是安装不上,在选择数据库时为灰色,不能进行选择,经查找原因是:操作系统和数据库版本不兼容,我用的是W I Nxp 专业版s p 2,而数据库的版本是:En t e r p r is e Ed it io n 1 ,所以导致这个问题的出现,现在网上找了一份有关S QL2005的安装图解,供大家参考,也给自己做一个备份! 安装可能出现的问题参考: 1》安装VS 2008后再安装S Q L2005无组件和S Q L 服务的解决办法 2》s q l2005开发版:选择的功能中没有任何功能可以安装或升级问题的终级解决方法 安装准备: 1、S Q L S e r v e r 2005 的各版本之间选择 大多数企业都在三个 S Q L S e r v e r 版本之间选择:S Q L S e r v e r 2005 En t e r p r is e Ed it io n 、S Q L S e r v e r 2005 S t a n d a r d Ed it io n 和 S Q L S e r v e r 2005 W o r kg r o u p Ed it io n 。大多数企业选择这些版本是因为只有 En t e r p r is e Ed it io n 、S t a n d a r d Ed it io n 和 W o r kg r o u p Ed it io n 可以在生产服务器环境中安装和使用。 除 En t e r p r is e Ed it io n 、S t a n d a r d Ed it io n 和 W o r kg r o u p Ed it io n 外,S QL S e r v e r 2005 还包括 S QL S e r v e r 2005D e v e lo p e r Ed it io n 和 S QL S e r v e r 2005 Exp r e s s Ed it io n 。以下段落分别说明其中的每个版本,并建议应在何时使用哪个版本。 2、软、硬件要求 2、1 网络软件要求: 独立的命名实例和默认实例支持以下网络协议:S h a r e d M e mo r y 、N a me d P ip e s 、T CP /I P 、VI A 2、2 I n t e r n e t 要求 安装程序支持软件 S Q L S e r v e r 安装程序需要 M ic r o s o f t W in d o w s I n s t a lle r 3.1 或更高版本以及 M ic r o s o f t 数据访问组件 (M DA C) 2.8S P 1 或更高版本。您可以从此 M ic r o s o f t 网站下载 M D A C 2.8 S P 1。 S Q L S e r v e r 安装程序安装该产品所需的以下软件组件: M ic r o s o f t W in d o ws .NET F r a me w o r k 2.0 M ic r o s o f t S QL S e r v e r 本机客户端 M ic r o s o f t S QL S e r v e r 安装程序支持文件 硬件要求 S Q L S ERVER 2005对硬件的要求相对于2000来讲提高一个档次了,记得2000的企业版内存推荐才128M ,最低64M 就够了。 操作系统与2005 此表显示对于每种 32 位版本的 S Q L S e r v e r 2005,操作系统是否可以运行其服务器软件。 百度空间 | 百度首页 | 登录

sqlserver2005实验

实验二 使用向导创建和删除数据库 ●实验指导——使用向导创建和删除数据库 (1) 使用向导创建上诉描述的数据库。 使用SQL Server Management Studio(简称SSMS)创建数据库。 1.启动SSMS 在开始菜单中:所有程序-SQL Server 2005 -SQL Server Management Studio 单击“连接”按钮,便可以进入【SQL Server Management Studio】窗口。如果身份验证选择的是“混合模式”,则要输入sa的密码。

2.建立数据库 在“对象资源管理器”窗口,建立上述数据库EDUC。在数据库节点上右击选择新建。同时建立一个同样属性的数据库EDUC1。 (2)使用向导删除上面建立的数据库。 用SSMS删除添加建立的数据库EDUC1。

实验三 使用SQL语句创建和删除数据库 一. 实验目的: 1、了解SQL Server 2005数据库的逻辑结构和物理结构。 2、掌握使用SQL 语句创建和删除数据库。 二. 实验准备 1.明确能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。 2.了解用SQL语句创建和删除数据库的基本语法。 三. 实验要求 3、熟练使用查询分析器进行数据库的创建和删除操作 4、完成用sql语句建立和删除数据库的实验报告 四. 实验内容 1.以下是创建数据库userdb1的SQL语句, create database userdb1 on (name=userdb4_data,--数据文件的逻辑名称,注意不能与日志逻辑同名 filename='g:\xygl\userdb4.mdf' ,--物理名称,注意路径必须存在 size=5,--数据初始长度为5M maxsize=10,--最大长度为10M filegrowth=1)--数据文件每次增长1M log on ( name=userdb4_log, filename='g:\xygl\userdb4.ldf ' , size=2 , maxsize=5 , filegrowth=1) 运行上诉语句建立数据库userdb1 2.根据步骤1的sql语句,写出创建实验二中数据库EDUC的sql语句,并建立数据库EDUC. 3.用SQL语句删除步骤一建立的数据库userdb1。

sql server实验指导书(学生版)

数据库实验指导书 信息安全专业 王爽 2009

一.概述 1.SQL Server 2000 组成 SQL Server是可缩放的高性能基于SQL和客户/服务器体系结构的关系数据库管理系统服务器软件包,是由Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。从图1 SQL Server 的体系结构示意图中看出,SQL Server 2000由4部分组成,在实验中,我们要求掌握基于SQL Server 2000的服务器的使用,也就是数据库管理员DBA的主要操作。 (注:本文所有内容均在SQLServer 2000上实现,读者也可在SQL Server 2005 上得到类似结果。) 图1 SQL Server 的体系结构示意图 2. SQL Server 2000 的安装 SQL Server 2000 的常见版本有:企业版、标准版、个人版、开发人员版等。对软硬件的最低需求为:CPU Pentium 166MHz,内存64MB,硬盘180 MB。SQL Server 2000企业版和标准版只能在windows2000 Server 版和Professional 版操作系统下运行。下面介绍SQL Server 2000企业版在本地机上的安装过程。 1)插入SQL Server 2000 光盘,自动安装程序启动,屏幕上出现如图2所示画面,按图2 所示选择SQL Server 2000 组件; 2) 选择安装数据库服务器,如图3所示,进入SQL Server2000 企业版安装向导; 3)在安装向导对话框中点击下一步,进入计算机名对话框; 4)选择本地安装,点击下一步,进入安装选择对话框;

SQLServer实验三分解

实验七 (1)创建并运行存储过程student_grade,要求实现如下功能:查询studb数据库中每个学生各门课的成绩,其中包括每个学生的sno、sname、cname和score。 create procedure student_grade as select student.sno,student.sname,https://www.360docs.net/doc/bb1280853.html,ame,student_course.score from student join student_course on student.sno=student_course.sno join course on https://www.360docs.net/doc/bb1280853.html,o=student_https://www.360docs.net/doc/bb1280853.html,o 运行结果代码: use Studb go execute student_grade go (2)创建并运行名为proc_exp的存储过程,要求实现如下功能:从student_course表中查询某一学生考试的平均成绩。 create procedure proc_exp @sname varchar(8) as begin select sname,AVG(score) from student join student_course on student.sno=student_course.sno where sname=@sname group by sname end 运行结果代码:

use Studb go execute proc_exp@sname='刘招香' go (3)修改存储过程proc_exp,要求实现如下功能:输入学生学号,根据该学生所选课程的平均成绩给出提示信息,即如果平均成绩在60分以上,显示“成绩合格,成绩为XX分”,否则显示“成绩不合格,成绩为XX分”;然后调用存储过程proc_exp,输入学号0705010131,显示成绩是否合格。 alter procedure proc_exp @student_sno varchar (20) as declare@avg varchar(20) set@avg=(select AVG(score) from student_course where sno=@student_sno) if@avg>=60 print'成绩合格,成绩为'+@avg+'分' else print'成绩不合格,成绩为'+@avg+'分' 运行结果代码: use Studb go declare@student_sno varchar (20) select@student_sno='0705010131' exec proc_exp@student_sno (4)创建名为proc_add的存储过程,要求实现以下功能:向student_course表中添加学生记录;然后调用存储过程proc_add,向student_course表中添加学生成绩记录。create procedure proc_add @sno char(10), @cno char(10), @score tinyint

Ecology 安装部署手册 Windows SQLServer V

Ecology8安装部署手册_Windows_SQLServer SUBMITTED BY WEAVER SOFTWARE

目录 1.服务器配置要求 (2) 2.系统安装和卸载 (2) 2.1. 安装前准备 (2) 2.2. 系统安装 (11) 2.3. 系统卸载 (18) 3.系统备份 (19) 3.1. 备份程序文件 (19) 3.2. 备份文档、图片文件 (19) 3.3. 备份数据库文件 (19) 4.系统升级 (27) 4.1. 停止RESIN服务 (27) 4.2. 备份程序文件夹 (27) 4.3. 备份数据库文件夹 (27) 4.4. 使用系统升级文件包 (27) 4.5. 启动resin服务 (27) 4.6. 升级失败后,系统恢复的方法 (28) 5.系统重装 (28) 5.1. 拷贝备份的程序、文档图片文件夹 (28) 5.2. 安装resin服务 (28) 5.3. 修改配置文件 (29) 6.安装后相关调整 (29) 6.1. JDK的更换 (29) 6.2. 调整内存 (30) 6.3. 调整端口 (30) 6.4. 安装文件出现乱码的处理 (31)

1.系统配置要求 --------------------------------------服务器-------------------------------------------------- (64位操作系统):Windows Server 2003/2008/2012、Linux、SUN Solaris、IBM AIX 数据库:SQL Server 2005/2008/2012、Oracle 9i/10g/11g 最低配置:Xeon双核CPU 2.2GHz以上8G内存500G硬盘 建议配置:Xeon四核CPU*2 3.1GHz以上16G内存1T硬盘 ---------------------------------------客户端------------------------------------------------- 操作系统:Windows XP/Vista/7/8/10 浏览器:IE8/9/10/11、Chrome、Firefox、Safari 注意:操作系统要保证为简体中文操作系统,在特殊情况下如果为非简体中文操作系统,也要安装上简体中文语言包。 2.系统安装和卸载 2.1.安装前准备 在安装ecology前,需要先安装好数据库。 2.1.1.安装SQLServer(必须使用SQLServer2005及以上版本) (1)SQL Server 2005的安装光盘共有2张,先打开第一张,点“服务器组件、工具、联机丛书和示例)”

sqlserver实验报告—数据库和表的创建

评分 签名 日期 数据库实验报告 课程名称信息系统数据库技术 实验名称数据表的管理 专业班级 姓名 学号 实验日期 实验地点 2012—2013学年度第一学期

一、实验目的 1、掌握Microsoft SQL Server 2005 Express Edition的安装过程 2、熟悉SQL Server 2005 Express Edition的基本菜单功能,界面。 3、掌握SQL Server 2005的启动、服务器注册等功能。 二、实验内容 1、数据库的创建 2、数据库的修改 3、数据的导入 4、数据的导出 5、数据库的分离 三、实验环境 Windows XP操作系统,Microsoft SQL Server 2005 Express Edition。 四、相关知识 1、数据库命令规则取决于数据库兼容的级别,而数据库级别可以用存储过程sp_helpdb 来查询。注意:其一由于在T-SQL中,“@”表示局部变量,“@@”表示全局变量,“##”表示全局临时对象,所以不建议用这些符号作为数据库名称的开头;其二虽然在SQL Server 2005中,保留字区分大小写,但也不建议用改过大小写的保留字作为数据库名。 2、数据库文件:每个SQL Server 2005的数据库至少包含二个文件:一个数据文件(.mdf)和一个日志文件(.ldf)。 3、数据库的创建命令:CREATE DATABASE 4、数据库的修改命令:ALTER DATABASE 只有数据库管到员或具有CREATE DATABASE权限的数据库所有者才有权执行ATER DATABASE语句。在实际操作中,ALTER DATABASE一次只能修改一种参数 5、数据库的删除命令:DROP DATABASE 6、数据库的分离命令:SP_DETACH_DB 'filename' 7、数据库的附加命令:CREATE DATABASE…FOR ATTACH 8、数据的导入是指从其他数据源中把数据复制到SQL Server数据库中。 9、数据的导出是指从SQL Server数据库中把数据复制到其他数据源中。 2

MSSQL2005安装教程

去年暑假刚毕业的时候我去了电信实业工作,做了几个月的.NET开发,数据库用的就是SQL Server,不过是SQL Server 2000。说真的我讨厌做开发,那段经历也是我不愿去回想的,没有任何乐趣。SQL Server 2000我安装过好几次,SQL Server 2005我就安装过两次,两个版本的安装过程有很大不同。当然我在安装之前首先是参考了专家的教程。小站已经有网友跟我提过出一个SQL Server 2005安装教程。今天就分享一下安装的方法和过程,以图文的形式,一步一步详细讲解。 一、下载SQL Server 2005 首先当然是下载SQL Server 2005。不过这里要强调一点,安装前要搞清楚你安装SQL Server 2005的用途。如果是企业级的应用,当然要下载SQL Server 2005企业版。不用找来找去找了,本站有SQL Server 2005企业版下载。如果你是出于学习的目的在自己的电脑上安装,那就安装个SQL Server 2005开发版吧!XP系统不能安装企业版。 二、安装SQL Server 2005 先跟大家说明一下,我是在我的虚拟机Windows Server 2003上安装的。打开文件目录下的setup.exe,开始安装!

由于安装的步骤比较多,我就不一一上图了。因为有些就下一步下一步好了,关键的安装步骤我会一一指出和详解。安装的过程中它会自动安装一些必要的组件,如.NET framework 2.0,反正点下一步好了。到下图,这一步是系统配置检查: 检查完成之后,我们发现有一项“最低硬件要求”出现警告!其它都符合。很多人会说,你在虚拟机里安装,内存太小了吧?不好意思不是这样的,我笔记本加了2G内存共3G(笔记本加内存其实很简单),我分了虚拟机1G,内存符合最低要求的。关于这个问题,我听专家的解释是:32位的系统安装的时候就会这么一个警告。你可以不管它,直接点下一步好了,经测试没有影响。 我们看到SQL Server 2005的CD-KEY已经自动填入了,如下图:

SQLServer2005安装详解

SQL Server 2005安装详解收藏 SQL Server 2005安装详解 一、安装SQL Sever 2005数据库 如果你使用Windows Server 2003 Enterprise Edition,注意同时安装SP1或更高版本补丁。安装条件: 组件要求 磁盘空间所有版本的完全安装都需要350MB硬盘空间,而要安装示例数据库还需要390MB。 内存512 MB建议使用1 GB或更多的内存(这里指的是SQL Server 2005 Enterprise Edition) Internet软件所有版本的SQL Server 2005的安装都需要Microsoft Internet Explorer 6.0 ,(同时安装SP1)或更高版本,因为Microsoft管理控制台(Microsoft Management Console,MMC)和HTML帮助需要它。只需Internet Explorer的最低安装即可满足要求,并且不需要将Internet Explorer配置为默认浏览器。然而,如果只安装客户端组件且不需要连接到要求加密的服务器,则Internet Explorer 4.01(同时安装SP 2)即可满足要求 Internet信息服务(IIS)如果要编写XML应用程序,则必须配置IIS。安装Reporting Services需要IIS 5.0或更高版本 网络操作系统具有SQL Server安装所需的内置网络软件。在安装SQL Server 2005之前,必须启用TCP/IP 部署过程: 1.通过“添加或删除程序/添加删除组件”安装IIS服务,勾选“https://www.360docs.net/doc/bb1280853.html,、Internet 信息服务(IIS)”点击【确定】来完成安装。 2.将“SQL Server 2005”安装光盘插入光驱,单击【服务器组件、工具、联机丛书和示例】之后在“最终用户许可协议”中勾选“我接受许可条款和条件”单击【下一步】

SQLServer数据库入门学习总结

SQL Server数据库入门学习总结 经过一段时间的学习,也对数据库有了一些认识。 数据库基本是由表,关系,操作组成;对于初学者首先要学的: 1.数据库是如何存储数据的 表,约束,触发器 2.数据库是如何操作数据的 insert,update,delete T-sql 函数存储过程触发器 3.数据库是如何显示数据的 select SQLServer数据库学习总结 1.SQL基础 SQL Server2000安装、配置,服务器启动、停止,企业管理器、查询分析器 第一代数据库--网状数据库和层次数据库;第二代数据库--关系数据库 数据库(DB);数据库管理系统(DBMS);数据库系统(DBS) SQL Server 2000 提供了不同版本:企业版、标准版、个人版、开发版 SQL Server中的数据类型:整数:int,smallint,tinyint,bigint;浮点数:real,float,decimal;二进制:binary,varbinary;逻辑:bit;字符:char,nchar,varchar,nvarchar;文本和图形:text,ntext,image;日期和时间:datetime,smalldatetime;货币:money,smallmoney 数据库的创建和删除;数据库表的创建、修改和删除 数据完整性:实体完整性:Primary Key,Unique Key,Unique Index,Identity Column;域完整性:Default,Check,Foreign Key,Data type,Rule;参照完整性:Foreign Key,Check,Triggers,Procedure;用户定义完整性:Rule,Triggers,Procedure;Create Table中得全部列级和表级约束 SQL Server中有5种约束:主键约束(Primary Key Constraint)、默认约束(Default Constraint)、检查约束(Check Constraint)、唯一性约束(Unique Constraint)、外键约束(Foreign Key Constraint). 关系图 数据库设计的步骤:需求分析、概念结构设计、逻辑结构设计、数据库物理设计、数据库实施、数据库运行和维护 两个实体之间的联系:一对一(1:1)、一对多(1:n)、多对多(m:n) 实体关系模型-- E-R图

实验SqlServer的基本操作

§3.1实验一Sql Server2005的基本操作(2学时) 3.1.1 实验目的 1.熟悉SQL Server2005企业版的安装过程。 2.了解企业管理器的功能,掌握企业管理器的操作方法。 3.掌握数据库服务器的注册、配置、连接等操作。 3.1.2 实验内容和步骤 上机前先阅读本实验的详细内容,简要了解SQL SERVER2005,并完成以下操作: 1. SQL Server2005的安装 参考详细内容进行安装,在安装过程中记录安装的选择,并且对所作的选择进行思考,为何要进行这样的配置,对今后运行数据库系统会有什么影响。 2.启动和停止服务 3.启动SQL Server Management Studio 4.查看数据库属性,了解数据文件、事务日志、权限 注意事项: 1.安装时选择混合方式登录; 2.赋予sa密码。

实验一Sql Server2005的基本操作(详解) 一、安装 下面以Windows xp平台为例,介绍如何安装SQL Server 2005个人开发版。 1.根据安装机器软硬件的要求,选择一个合适的版本,以下以开发版为例 2.将SQL Server 2005 DVD 插入DVD驱动器。如果DVD驱动器的自动运行功能无法启动安装程序无法启动安装程序,请导航到DVD的根目录然后启动splash.hta。 3.在自动运行的对话框中,单击“运行SQL Server 安装向导”。 4.在“最终用户许可协议”页上,阅读许可协议,再选中相应的复选框以接受许可条款和条件。接受许可协议后即可激活“下一步”按钮。若要继续,请单击“下一步”若要结束安装程序,请单击“取消”。如下图: 5.在“SQL Server 组件更新”页上,安装程序将安装SQL Server 2005 的必需软件。有关组件要求的详细信息,请单击该页底部的“帮助”按钮。若要开始执行组件更新,请单击“安装”。更新完成之后若要继续,请单击“完成”。

sqlserver实验报告

SQL Server实验报告 学院: 班级: 姓名: 学号:

实验1 SQL Server 2005 环境 1、目的与要求 (1)掌握SQL Server Management Studio 对象资源管理器的使用方法; (2)掌握SQL Server Management Studio查询分析器的使用方法; (3)对数据库及其对象有一个基本了解。 2、实验准备 (4)了解SQL Server 2005各种版本安装的软、硬件要求;(5)了解SQL Server 2005支持的身份验证模式; (6)对数据库、表及其他数据库对象有一个基本的了解。 3、实验内容 (1)SQL Server 2005 的安装。 检查软、硬件配置是否达到SQL Server 2005的安装要求,熟悉SQL Server 2005的安装方法。 (2)对象资源管理器的使用。 ①进入SQL Server Management Studio。 从“开始”中选择“程序”,再选择“Microsoft SQL Server 2005”单击进入,打开“连接到服务器”窗口,如图所示。 在此窗口中使用系统默认设置连接服务器,单击“连接”,系统显示

“SQL Server Management Studio”窗口。 ②了解系统数据库和数据库的对象。 在SQL Server 2005安装后,系统生成4个数据库:master、model、msdb和tempdb。 在对象资源管理器中右边显示的是4个系统数据库,如图所示。选择系统数据库master,观察SQL Server 2005对象资源管理器中数据库对象的组织方式。其中,表、视图在“数据库”节点下,储存过程、触发器、函数、类型、默认值、规则等在“可编辑性”中,用户、角色、架构等在“安全性”中。 ③试试不同数据库对象的操作方法。 展开系统数据库“master”,选择“”,单击右键。

sqlserver安装与卸载

1.系统安装与初始化。 1.1.安装数据库 操作引导: SQL Server 2000的安装程序是非常智能化的,基本上用户只需要跟着提示,选择默认项。下面依照画面进行讲解。 详细的安装过程 将安装文件解压到Sqlserver2000目录下,打开目录双击“AUTORUN.EXE”,出现以下提示框,请选择安装 SQL Server 2000简体中文企业版,如图0。 图0 在安装Sqlserver2000组件页面,选择安装 SQL Server 2000 组件,如图1。

图1 在安装Sqlserver2000安装服务器页面页面,选择安装数据库服务器,如图2。 图2 选择下一步,然后选择本地计算机进行安装,如图3,如图4。

图3 图4 在安装选择窗口,选择创建新的SQL Server实例,或安装客户端工具。对于初次安装的用户,应选用这一安装模式,不需要使用高级选项进行安装。高级选项中的内容均可在安装完成后进行调整,如图5。

图5 在用户信息窗口,输入用户信息,并接受软件许可证协议,如图6,如图7。 图6

图7 在安装定义窗口,选择服务器和客户端工具选项进行安装。我们需要将服务器和客户端同时安装,这样在同一台机器上,我们可以完成相关的所有操作,对于我们学习SQL Server很有用处。如果你已经在其它机器上安装了SQL Server,则可以只安装客户端工具,用于对其它机器上SQL Server的存取,如图8。 图8

在实例名窗口,选择默认的实例名称。这时本SQL Server的名称将和Windows 2000服务器的名称相同。例如用户的Windows服务器名称是Darkroad,则SQL Server的名字也是Darkroad。SQL Server 2000可以在同一台服务器上安装多个实例,也就是你可以重复安装几次。这时您就需要选择不同的实例名称了。建议将实例名限制在10 个字符之内。实例名会出现在各种SQL Server 和系统工具的用户界面中,因此,名称越短越容易读取。另外,实例名称不能是Default 或MSSQLServer 以及SQL Server的保留关键字等,如图9。 图9 在安装类型窗口,选择典型安装选项,并指定目的文件夹。程序和数据文件的默认安装位置都是C:\Program Files\Microsoft SQL Server\。用户因为C盘是系统区、D盘是应用区,因此选择了D盘。注意,如果您的数据库数据有10万条以上的话,

基于VB及SQLSERVER的管理系统实训指导书

基于VB及SQLSERVER的管理系统 实训指导书 计算机软件技术专业适用 大连职业技术学院 信息技术系 计算机软件技术教研室

实验(训)一连接数据库及调用存储过程(15学时) 一、创建数据库及其表 1.新建个人信息管理系统数据库“Pinformation”。 2.建表Contacts、ContactPhones、Reminders表。 (1) Contacts(联系人表) 字段名字段数据类型主键标识列说明 ContactID Int Yes Yes 联系人编号Name Varchar(50) 联系人姓名 Address Varchar(100) 联系人所在城市 ZipCode Varchar(20) 邮编EmailAddress Varchar(50) 电子邮箱 ContactNote Varchar(50) 备注 (2) ContactPhones(联系人电话表) 字段名字段数据类型主键标识列说明ContactPhoneID Int Yes Yes 联系人电话编号ContactID Int 联系人编号 PhoneType Varchar(50) 电话类型 PhoneNumber Varchar(50) 电话号码 (3) Reminders(提示信息表) 字段名字段数据类型主键标识列说明ReminderID Int Yes Yes 联系人电话编号 AlarmOn Bit 报警标识 AlarmTime datetime 报警时间 ReminderNote Varchar(1000) 提示内容 二、在VB中查看数据库对象 新建工程,在VB界面中,执行“视图” 菜单的“数据视图窗口”菜单项,或者在ADO 控件属性中操作,创建数据库的连接。 1.在图一的属性页中选择“通用”选项 卡,选择“使用连接字符串”,点击“生成” 按钮,弹出图二。 2.在图二中选择“提供者”选项卡,选 择为SQL Server提供的数据驱动,点击“下 一步”按钮,弹出图三。(图一)

SQLServer数据库基本介绍

SQLServer数据库基本介绍 数据库用于存储结构化数据。数据的组织有多种数据模型,目前主要的数据模型是关系数据模型,以关系模型为基础的数据库就是关系数据库。一,数据库的概述1)关系数据库术语 表:用于存储数据,它以行列式方式组织,可以使用SQL从中获取、修改和删除数据库。表是关系数据库的基本元素记录:记录是指表中的一行,在一般情况下,记录和行的意思是相同的。字段:字段是表中的一列,在一般情况下,字段和列所致的内容是相同的。关系:关系是一个从数学中来的概念,在关系代数中,关系是指二维表,表既可以用来表示数据,也可以用来表示数据之间的联系索引:索引是建立在表上的单独的物理结构,基于索引的查询使数据获取更为快捷。索引是表中的一个或多个字段,索引可以是唯一的,也可以是不唯一的,主要是看这些字段是否允许重复。主索引是表中的一列和多列的组合,作为表中记录的唯一标识。外部索引是相关联的表的一列或多列的组合,通过这种方式来建立多个表之间的联系。视图:视图是一个真实表的窗口,视图不能脱离表。视图和表的区别是,表是实际存在的(需要存储在计算机中,占用存储空间),而视图是虚拟表(仅存储真实表的视图表现形式),它用于限制用户可以看到和修改的数据量,以简化数据的表达。存储过程:存储过程是一个编译过的SQL程序。在该过程中,可以嵌入条件逻辑、传递参数、定义变量和执行其他编程任务。 2)数据库管理系统提供的功能数据库管理系统简称为DBMS,是一种操作和管理数据库的大型软件,用于建立、使用维护数据库。基本功能如下

数据定义功能:定义数据库结构数据存取功能:提供数据操纵语言,实现对数据库数据的 基本存储操作数据库运行管理功能:提供数据控制功能,即数据的安全性,完整性和并发控制等对数据库运行进行有效的控制和管理数据库的建立和维护功能:包括数据库初始数据的嵌入,数据库的转储、恢复、重组织、系统性能监视、分析等功能数据库的传输:实现用户程序与DBMS之间的通信 3)数据库的存储结构 数据库文件主数据文件(Primary):是数据库的关键文件,用来存放数据,包含数据库启 动信息,每个数据库都必须包含也只能包含一个主数据文件,默认扩展名是.mdf次数据文件(Secondary):又称辅助文件,包含除主数据文件外的所有数据文件。次数据文件是可选的,有些数据库没有次数据文件,有些数据库则包含多个次数据文件.默认扩展名是.ndf事务日志 文件(Transaction Log):用来存放事务日志信息。事务日志记录了SQL Sever所有的事务 和由这些事务引起的数据库的变化。SQL Sever遵循先写日志再进行数据库修改的规则,所以 数据库中数据的任何变化在写到磁盘之前,这些改变先在事务日志中做了记录,每个数据库至 少有一个事务日志文件Lof File,也可以不止一个。默认扩展名是.ldf数据库文件组主文件组:包含主数据文件和所有没有被包含在其他文件组里的文件用户定义文件组:默认文件组:

实验1SQLServer数据库基本操作

实验1 SQL Server数据库基本操作 一、实验目的 本实验主要了解Microsoft SQL Server 2012中各组件的主要功能和基本使用方法;了解SQL Server数据库的逻辑结构和物理结构;了解数据表的结构特点以及索引的基本概念。通过本实验,读者将学会在“企业管理器”中创建和修改数据库和数据表结构、对数据表进行数据的添加、删除和更新操作以及在数据表上创建字段索引的操作。 二、实验环境 Microsoft SQL Server 2012 SSMS 三、实验内容 1. 创建一个名称为Book的数据库,支持教材订购信息管理,要求: (1)将主数据库文件Book_放置在的D:\DBF文件夹中,文件大小为5MB,最大值为50MB,文件增量为2MB。 (2)将事务日志文件Book_放置在的D:\DBF文件夹中,文件大小为5MB,最大值为100MB,文件增量为1MB。 【实验步骤】 1)在D:\下创建DBF文件夹。 2)在SSMS中的对象资源管理器窗口右单击“数据库”,从快捷菜单中选择“新建数据库”命令,出现“数据库属性”对话框。 3)在“数据库属性”对话框中选择“常规”选项卡,在名称文本框中输入:Book; 4)在“数据库属性”对话框中选择“数据文件”选项卡,设置数据文件的位置、大小、

最大值和文件增量等属性; 5)在“数据库属性”对话框中选择“事务日志”选项卡,设置事务日志文件的位置、大小、最大值和文件增量等属性。 6)点击“确定”按钮,建立“Book”数据库,如下图所示: 2. 在上题所建数据库Book中建立5张数据表结构。 字段名称字段说明类型定义属性限定索引外键AcadCode 学院代码Char(2) Primary Key √ AcadName 学院名称Varchar (50) Not Null

windows7装sql2005的方法-新建SQL server方式的用户名和密码

windows7装sql2005的方法-新建SQL server方式的用户名和密码 一、配置IIS 到控制面板,打开IIS Features,点左边的加号,打开详细信息,我们勾上以下组件: 1: Web Managerment Tools\IIS 6 Management Compatibility\IIS6 WMI Compatibility 2: Web Managerment Tools\IIS 6 Management Compatibility\IIS6 Metabase and IIS 6 Configuration Compatibility 3: World Wide Web Services\Application Development Features\https://www.360docs.net/doc/bb1280853.html, 4: World Wide Web Services\Common Http Features\Http Redirection 5: World Wide Web Services\Security\Windows Authentication 二、安装标准版SQL Server 2005 按照提示安装即可 三、安装SQL Server 2005 SP3 最后一步设置系统帐号权限,需要先到任务管理器中关闭sqlserver 进程,然后到打开dos窗口之前的一步,又需要手动启动sqlserver服务。 四、启用SQL Server Browser 服务 单击“开始”,依次指向“程序”、“Microsoft SQL Server 2005”和“配置工具”,然后单击“SQL Server 外围应用配置器”。 在“SQL Server 2005 外围应用配置器”页上,单击“服务和连接的外围应用配置器”。 在“服务和连接的外围应用配置器”页上,单击“SQL Server Browser”,在“启动类型”中单击“自动”选项,然后单击“应用”。 打开Windows 防火墙,请单击“开始”,再单击“运行”,键入firewall.cpl,然后单击“确定”。 五、在Windows 防火墙中为SQL Server 2005 创建例外 若要在Windows 防火墙中为SQL Server 2005 创建例外,请执行以下步骤: 六、在Windows 防火墙中为SQL Server Browser 服务创建例外 若要在Windows 防火墙中为SQL Server Browser 服务创建例外,请执行以下步骤: 1.在Windows 防火墙中,单击“例外”选项卡,然后单击“添加程序”。 2.在“添加程序”窗口中,单击“浏览”。 3.单击C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe 可执行程序,单击“打开”,然后单击“确定”。 七、配置SQLServer2005 远程连接 第一步:SQL Server Configuration Manager -> SQL Server 2005 Services 将SQL Server Browser 设置为running, 如果没有Enable的话,右键Properties -> Service -> StartMode = Auotomatic 注意,同时必须打开SQL Server Browser 服务

相关文档
最新文档