SQLServer常见系统错误Word文档下载推荐.docx

上传人:b****5 文档编号:16634884 上传时间:2022-11-25 格式:DOCX 页数:56 大小:323.57KB
下载 相关 举报
SQLServer常见系统错误Word文档下载推荐.docx_第1页
第1页 / 共56页
SQLServer常见系统错误Word文档下载推荐.docx_第2页
第2页 / 共56页
SQLServer常见系统错误Word文档下载推荐.docx_第3页
第3页 / 共56页
SQLServer常见系统错误Word文档下载推荐.docx_第4页
第4页 / 共56页
SQLServer常见系统错误Word文档下载推荐.docx_第5页
第5页 / 共56页
点击查看更多>>
下载资源
资源描述

SQLServer常见系统错误Word文档下载推荐.docx

《SQLServer常见系统错误Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《SQLServer常见系统错误Word文档下载推荐.docx(56页珍藏版)》请在冰豆网上搜索。

SQLServer常见系统错误Word文档下载推荐.docx

为SQLServer2000分配的锁信息。

7

17834:

正在使用“SSNETLIB.DLL”版本“8.0.2039”。

启用默认的由SSNETLIB.DLL文件封装的网络库超级套接字,封闭了TCP/IP协议和NwlinkIPX/SPX两种通信协议。

8

19013:

SQLServer正在监听192.168.1.8:

1433。

SQLServer正在监听219.140.27.21:

SQLServer正在监听127.0.0.1:

可以使用本地TCP/IP连接

9

SuperSocket信息:

(SpnRegister):

Error1355。

提示无法注册超级套接字网络库的提示信息,这和使用的协议有关。

10

SQLServer正在监听TCP,SharedMemory,NamedPipes。

SQLServer实例配置了TCP/IP、共享内存和命名管道3种协议。

11

17126:

SQLServer已准备好进行客户端连接

可以接受客户机的请求

12

恢复完成。

正常完成启动过程。

2、SQLServer服务器——错误日志

错误日志是SQLServer2000服务器中记录服务器级信息的文件。

当SQLServer启动、关闭和发生系统级错误时,SQLServer会自动记录有关信息。

查看错误日志:

C:

\ProgramFiles\MicrosoftSQLServer\MSSQL\LOG

总结SQLServer启动的过程

SQLServer数据库系统数据故障

数据库

信息

结论

Master

ServicePack2);

服务器进程ID是284;

此SQLServer实例最近于2007-9-116:

43:

19(本地)2007-9-18:

19(UTC)报告使用的进程ID是3752;

17113:

initconfig:

打开“C:

\ProgramFiles\MicrosoftSQLServer\MSSQL\data\master.mdf”以获取配置信息时出错2(系统找不到指定的文件。

);

SQLServer实例的启动过程将停留在仅仅由操作系统分配进程ID阶段。

Model

……17126:

如果master数据库正常,而model数据库不存在或有故障,SQLServer实例的启动过程将完成CPU、内存和网络库的初始化,但model数据库的故障仍将导致客户机无法正常连接。

tempdb

成功启动SQLServer实例。

如果master正常,model正常,不论有没有tempdb,SQLServer实例都将重建tempdb。

msdb

\ProgramFiles\MicrosoftSQLServer\MSSQL\LOG\SQLAGENT.1

文本内容:

2007-09-0116:

59:

30-?

[393]正在等待SQLServer恢复数据库...

38-?

[131]由于来自用户、进程或操作系统的停止请求,SQLSERVERAGENT服务停止...

39-?

[098]SQLServerAgent已终止(正常)

Msdb数据库存在与否仅影响SQLServerAgent服务,和SQLServer服务没有什么关系。

Master系统数据库对于SQLServer实例至关重要,是管理实例和所有数据库的数据库;

Model系统数据库是系统创建所有数据库的模板。

当发出createdatabase语句时,新数据库的第一部分通过复制model数据库中的内容创建,剩余部分由空页填充。

由于SQLServer每次启动时都要创建tempdb数据库,model数据库必须一直存在于SQLServer系统中。

Tempdb数据库存在与否不影响实例的正常启动。

Msdb数据库。

影响SQLServerAgent服务正常启动。

windows操作系统将为SQLServer服务器上的每个服务分配一个进程ID。

SQLServer服务的启动信息记录在ERRORLOG文件中。

SQLServerAgent服务的启动信息记录在SQLAGENT文件中。

重建master数据库

1、在重建master数据库之前,需要准备好SQLServer2000的安装光盘。

2、重建主控实用工具:

\ProgramFiles\MicrosoftSQLServer\80\Tools\Binn\rebuildm.exe

单用户模式启动

1、单用户模式就是同一时刻仅允许一个DBA用户对SQLServer实例进行操作,如果要恢复已经损坏的master数据库,则必须要启动SQLServer实例的单用户模式。

2、什么情况下切换到单用户模式

常见的情况包括:

更改服务器的配置参数;

重建已经损坏的master数据库;

修复其他系统数据库;

3、如何启动

\ProgramFiles\MicrosoftSQLServer\80\Tools\Binn目录下有管理SQLServer实例服务的命令文件sqlservr,带参数-c–m就表示以单用户模式启动默认实例。

配置SQLServer网络

SQLServer2000基于网络提供服务。

1、IPC

IPC:

即进程间通信机制。

SQLServer2000采用了客户机-服务器的体系结构,即使在物理上的同一台计算机上安装的SQLServer2000,也好像是逻辑上的两台计算机。

客户机上启用的客户机进程,服务器上启用的是服务器进程。

2、IPC的组成

一个IPC包括以下的两个组成部分。

通信协议:

通信协议定义了利用IPC通信的两个进程之间传递的数据分组格式。

API:

应用编程接口,是一组定义好的函数,应用程序通过这些函数来使用IPC机制,发出命令并反馈结果。

3、Net-Library

Net-Library,网络库。

网络库是以动态链接库DLL形式实现的IPC机制。

网络库不是简单的通信协议,而是通信协议和IPC机制组合的结果。

DLL

DLL的另外一个突出特点是动态加载,即虽然在一个主程序中调用了DLL文件中的函数,但主程序的代码中并不复制DLL文件中的函数,而是在运行时才动态加载这些函数。

避免了将大量重复的函数代码复制到主程序中,在运行时同样需要大量占用内存空间的问题。

相对于静态加载技术而言,DLL的动态加载就更能有效节省内存空间。

DLL技术的突出特点是代码重用和节省空间。

网络库DLL

网络库以DLL形式出现,也就是指一些特殊的DLL文件是包含了实现网络通信的、可以重用的函数和代码。

查看网络库DLL

服务器网络实用工具、客户端网络实用工具

网络库和通信协议的关系

一个网络库DLL文件并不一定仅封装一种网络协议的函数,也可能封装多种网络协议。

比如:

SSNETLIB.DLL网络库文件实际上就封装了TCP/IP和IPX/SPX两种网络协议。

1、配置共享内存网络

(1)启用SQL服务器网络实用工具,常规选项卡。

在启用的协议列表框中清除所有协议即可。

(2)重新启动SQLServer2000服务器,服务器上的共享内存协议才能够启动。

(3)启用SQLServer客户端网络实用工具,常规选项卡中,在按顺序启用协议列表框中清除所有的协议。

选择启用共享内存协议复选框。

2、配置TCP/IP网络

(1)配置服务器:

SQLServer网络实用工具,常规选项中,将TCP/IP添加启用的协议列表框。

点击属性可修改默认端口号;

(2)配置客户机:

SQLServer客户端网络实用工具,常规选项中,将TCP/IP添加到按顺序启用协议列表框中;

在别名选项卡,单击添加,在[服务器别名]文本框中输入mysqlserver,选[网络库]中的[TCP/IP]单选按钮,[服务器名称]文本框输入SQLServer2000服务器的IP地址192.168.1.8,取消对[动态决定端口]复选框的选择,在[端口号]文本框核实SQLServer2000服务器的端口。

TDS协议

TDS译为表格格式数据流协议,就是SQLServer2000的客户机和服务器之间的应用层协议。

TDS的作用

应用程序的数据必须通过TDS协议的封装,然后交由传输层的协议,经过层层封装之后才能在网络上传输。

TDS的作用主要包括:

创建到SQLServer服务器的连接;

请求数据和服务器的状态;

接收数据、状态、错误信息和其他服务器结果;

完成存储过程的执行;

顺序关闭连接;

TDS的结构:

SQLServer2000使用TDS8.0协议,其数据报(网络上传输的一个数据单元,也称为数据包)包括两个部分:

TDS报头和TDS数据。

第二章未公开的DBCC命令

DBCC(DataBaseConsoleCommand):

数据库控制台命令;

(1)dbccpage命令参数

查询dbid和dbname

selectname,dbidfromsysdatabases

查询filenum和pagenum

selectfileid,size,filenamefromsysfiles

fileid:

即FILENUM

size:

某个数据文件或日志文件已经分配的数据页面总数,编号从0开始

filename:

数据文件和日志文件的物理存储路径;

dbccpage作用可以直接查看某个数据页面的内容。

可查看到数据库的物理存储情况。

dbccpage({dbid|dbname},filenum,pagenum)

dbccpage({dbid|dbname},filenum,pagenum,printoption)

filenum:

数据文件的编号

pagenum:

数据页面文件的编号

printoption:

如何输出结果,0,1,2,3

(2)dbcclog

Dbcclog作用是查看某个数据库使用的事务日志信息。

Dbcclog({dbid|dbname},[,type={-1|0|1|2|3|4}])

参数取值

参数说明

输出最小的信息(操作、上下文、事务ID)

操作、上下文、事务ID、标记、标签、行长度、描述

操作、上下文、事务ID、标记、标签、行长度、描述、对象名称、索引名称、数据页面ID

每个操作的完整信息

每个操作的完整信息,十六进制的日志行数据

-1

每个操作的完整信息,十六进制的日志行数据、检查点开始、数据库版本等。

(3)dbccerrorlog

作用是初始化SQLServer的错误日志文件的内容。

等同于:

sp_cycle_errorlog

关闭当前的错误日志文件,并循环错误日志扩展编号(就像重新启动服务器)。

新错误日志包含版本和版权信息,以及表明新日志已创建的一行。

语法

返回代码值

0(成功)或1(失败)

结果集

注释

每次启动SQLServer时,当前错误日志重新命名为errorlog.1;

errorlog.1成为errorlog.2,errorlog.2成为errorlog.3,依次类推。

sp_cycle_errorlog使您得以循环错误日志文件,而不必停止而后再启动服务器。

权限

sp_cycle_errorlog的执行许可权限仅限于sysadmin固定服务器角色的成员

(4)dbccflushprocindb(DBID)

Dbccflushprocindb命令用于清除SQLServer2000服务器上某个数据库在缓存中的存储过程,实际上就是清除缓存中的存储过程的执行计划。

该命令常在需要对存储过程的性能进行测试时使用,一般不要在生产数据库上执行该命令,否则将影响正在运行的应用程序的性能。

dbcctraceon(3604)

go

declare@intDBIDinteger

set@intDBID=(selectdbidfromsysdatabaseswherename='

northwind'

dbccflushprocindb(@intdbid)

(5)dbccbuffer

Dbccbuffer命令显示缓冲区的头部信息和页面信息。

Dbccbuffer([DBID|dbname][,objid|objname],[,nbufs],[printopt])

参数

DBID

数据库的唯一ID。

DBName

数据库的名称。

OBJID

数据库对象的ID

OBJNAME

数据对象的名称

NBUFS

检查的缓冲区数量。

>

0按照MRU(最近最常使用算法)

=0所有的缓冲区按照MRU至LRU顺序显示

<

0按照LRU到MRU顺序显示

PRINTOPT

输出信息选择。

0:

默认设置,输出缓冲区头部和页面头部

1:

输出页面每行的数据和行偏移数组;

2:

将每行作为一个整体输出,输出行偏移数组;

将显示所有数据库在内存中的缓冲情况。

Dbcctraceon(3604)

Go

Dbccbuffer

(6)dbccdbinfo

Dbccdbinfo命令用于显示特定的数据库结构

Dbccdbinfo(dbname)

dbccdbinfo(master)

(7)dbccdbtable用于显示管理数据库的表(数据字典)的信息。

Dbccdbtable(dbid|dbname)

dbccdbtable(master)

(8)dbccind

Dbccind命令用于显示特定表的所有索引页面信息。

Dbccind(DBID,objid,printopt)

数据库的唯一ID

数据对象的ID

输出信息选项。

默认设置,输出缓冲区中的页头部和数据页头部信息;

输出页头、以行格式输出页数据,偏移表;

输出页头、非格式化的页数据、偏移表;

dbccind(master,sysobjects,0)

(9)dbccprocbuf

Dbccprocbuf命令用于显示过程缓冲区中缓冲区头部和存储过程头。

Dbccprocbuf([dbid|dbname],[,objid|objname][,nbufs][,printopt])

DBNAME

数据库名称

输出的缓冲区的数目

默认设置,输出过程缓冲区和过程头;

输出过程缓冲区、过程头和缓冲区内容;

dbccprocbuf(master,'

sp_help'

1,0)

(10)dbccprtipage

Dbccprtipage命令用输出某个索引页面的每行指向的页面号。

Dbccprtipage(DBID,OBJID,INDEXID,INDEXPAGE)

INDEXID

索引对象的ID

INDEXPAGE

索引页面的逻辑页面号码

declare@dbidint,@objectidint

select@dbid=db_id('

master'

select@objectid=object_id('

sysobjects'

dbccprtipage(@dbid,@objectid,1,0)

(11)dbccpss

Dbccpss用于显示当前连接到SQLServer2000服务器的进程信息。

dbccpss([suid][,spid][,printopt])

SUID

服务器用户ID

SPID

服务器进程ID

输出信息选项

标准输出

输出所有打开的DES(标识符)和当前序列树

将进程拥有的锁信息输出到错误日志中;

获取administrator用户系统进程ID为53的SQLServer进程信息。

dbccpss(administrator,53,0)

(12)dbccresource

Dbccresource用于显示服务器当前使用的资源情况。

dbccresource

(13)dbcctab

Dbcctab用于显示设定的表的所有数据页面的内容。

Dbcctab(DBID,OBJID,PRINTOPT)

数据库的ID

显示页头部;

按照行偏移表显示每行;

按照整体显示页面和偏移表;

sysindexes'

dbcctab(@dbid,@objectid)

(14)dbccbufcount

dbccbufcount命令用于显示最长的内存Hash桶的链表长度及平均链表长度,最多显示10个。

Dbccbufcount(n_chains)

n_chains参数,表示hash桶的数目,最多只能显示10个。

Bucketnumber:

内存中Hash桶号;

Chainsize:

桶中数据链表的长度;

AverageChainSize:

内存中所有链表的平均长度;

dbccbufcount(10)

(15)dbccdbrecover

Dbccdbrecover命令用于在不重启服务器的情况下恢复处于“质疑”(Suspect)状态的数据库。

Dbccdbrecover(northwind)

(16)dbccdes

Dbccdes输出特定的标志符信息。

Dbccdes[([dbid][,objid])]

Dbccdes(master,sysindexes)

(17)dbccmemusage

Dbccmemusage命令用于显示服务器内存使用的细节信息。

dbccmemusage

INDEXID:

索引ID;

BUFFERS:

所分配的缓冲区数量。

DIRTY:

是否为脏数据,即已经被修改过,需要写到硬盘上的数据。

(18)dbccpglinkage

Dbccpglinkage命令用于查看某个数据库数据页面的链接,还可以完成完整性检查。

Dbccpglinkage(dbid,fileid,start,number,printopt={0|1|2})

Dbid

数据库ID

FILEID

数据文件ID

START

开始查看的数据页面逻辑编号

NUMBER

检查的页面数量

仅显示扫描的页面数;

显示最后扫描的16个页面的信息;

显示扫描的所有页数;

实例将扫描从dbid为1(master数据库)的第1个数据文件的页号为100的页面开始,共3个页面的数据对象的链接情况,显示扫描的所有页数。

dbccpglinkage(1,1,100,3,1)

(19)dbcccachestats

Dbcccachestats用于查看SQLServer实例的内存统计信息。

dbcccachestats

HitRatio:

在SQLServer2000的内存中对象的命中率。

该值越高,一般情况下

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1