文章分类 -  SQLSERVER

摘要:笔记40-徐 页面还原步骤 1 --页面还原步骤 2 --文件还原、页面还原、段落还原都需要日志备份 3 --如果为了少数几个页面而恢复整个数据库,代价可谓高昂 4 --SQL2005引入了页面还原,可以只还原指定若干页面,从而大大节省数据库 5 --恢复时间,可以说是个能够救急的功能 6 7 --页面还原用于修复隔离的损坏页。还原和恢复少量页面的速度可能比还原一个文件 8 --更快,减少还原操作中处于离线状态的数据量。 9 --但是如果文件中要还原的不只是少量页面而是多数页面,则还原整个文件更有效!!!!!!!!!!!!!!!!!!!!!!!!!! 10 11 12 ... 阅读全文
posted @ 2013-07-27 16:12 桦仔 阅读(483) 评论(2) 推荐(0) 编辑
摘要:笔记39-徐 段落还原步骤 partial选项 1 --段落还原步骤 partial选项 2 --文件还原、页面还原、段落还原都需要日志备份 3 --文件还原和页面还原适用于数据库损坏的范围比较小的情况,因为恢复时间比完整备份 4 --恢复短,所以可以大大缩短数据库恢复所造成的不可访问时间。但是如果数据库的损坏 5 --范围很大,可能跨越了若干个数据文件甚至文件组,这时候不得不恢复整个数据库。 6 --如果数据库很大,这段不可访问的时间就很长了。有时候一个大数据库有若干数据文件组, 7 --有些文件组里存放的是应用程序现在经常访问的数据,有些文件组存放的是历史数据, 8 --... 阅读全文
posted @ 2013-07-27 16:10 桦仔 阅读(443) 评论(0) 推荐(0) 编辑
摘要:笔记38-徐 文件还原步骤 1 --文件还原步骤 2 --文件还原、页面还原、段落还原都需要日志备份 3 --一个大数据库会有若干文件和文件组。如果损坏只是集中在其中一个文件或文件组上,而 4 --其他大部分数据文件都没有损坏,使用传统的数据库还原方案将所有的文件重建,会很 5 --浪费时间。如果SQL只是把坏掉的那个数据文件或文件组重建,肯定能节省时间 6 7 --可是数据库的事务修改是会分布在各个数据文件上的。如果用备份只恢复其中一个文件, 8 --而其他文件不恢复,那他们的状态一定会不一致。一定会有许多修改在被恢复的文件里 9 --没有被包含进来。这样的数据库是无法使用的。为了使新恢复. 阅读全文
posted @ 2013-07-27 16:09 桦仔 阅读(459) 评论(0) 推荐(0) 编辑
摘要:笔记37-徐 根据页面错误,找到改页面所属的对象是表 索引 还是其他 1 --根据页面错误,找到改页面所属的对象是表 索引 还是其他 2 3 4 --消息 824,级别 24,状态 2,第 1 行 5 --SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 9:912,但实际为 0:0)。在文件 'I:\data\PIMRpt_DB12_f.ndf' 中、偏移量为 0x00000000720000 的位置对数据库 ID 5 中的页 (9:912) 执行 读取 期间,发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供 阅读全文
posted @ 2013-07-27 16:08 桦仔 阅读(972) 评论(0) 推荐(0) 编辑
摘要:笔记36-徐 一般数据库损坏的类型有以下几个 f --一般数据库损坏的类型有以下几个: --823错误:SQL向操作系统申请某个页面读写时候遇到Windows读取或写入请求失败,通常是物理文件损坏导致此错误,也可能是设备驱动程序导致,这个错误要不硬件出问题,要不数据文件发生严重损坏,错误意味着数据页 阅读全文
posted @ 2013-07-27 16:07 桦仔 阅读(473) 评论(0) 推荐(1) 编辑
摘要:笔记35-徐 收缩数据库或文件注意事项 1 --收缩数据库或文件注意事项 2 --另外数据文件里有空间,而不能压缩或者清空通常是因为数据文件里虽然有很多空的页面,但是这些页面分散在各个区里, 3 --使得整个文件没有很多空的区,由于 dbcc shrinkfile做的都是区一级的动作。 4 --他会 阅读全文
posted @ 2013-07-27 16:05 桦仔 阅读(584) 评论(2) 推荐(0) 编辑
摘要:笔记34-徐 任务调度和CPU问题 f 阅读全文
posted @ 2013-07-27 16:04 桦仔 阅读(1568) 评论(0) 推荐(0) 编辑
摘要:笔记33-徐 SQLSERVER I/O问题 1 --SQLSERVER I/O问题 2 3 --(1)在SQL的errorlog里出现833错误,出现这个错误SQL的响应速度会受到影响,甚至整个服务的响应都会变得很慢 4 --(2)在sys.sysprocesses里有很多连接的状态是pageio 阅读全文
posted @ 2013-07-27 16:00 桦仔 阅读(2889) 评论(0) 推荐(0) 编辑
摘要:笔记32-徐 内存压力分析 1 --内存压力分析 2 3 --表现特征 4 --SQL经常触发lazy writer 5 --SQL需要经常从硬盘里读数据,会有很多硬盘读 6 --执行计划经常被清除,所以buffer pool里的stolen内存部分应该不会很多 7 --由于数据页经常被清除,所以page life expectancy不会很高,而且会经常下降 8 9 --page life expectancy:缓存页面生存时间 10 11 --如果数据页面 buffer pool内存有压力,SQL会优先清除内存里的执行计划 12 13 --解决办法: 14 --来... 阅读全文
posted @ 2013-07-27 15:58 桦仔 阅读(1328) 评论(0) 推荐(0) 编辑
摘要:笔记31-徐 一些SQL内存使用的错误理解以及内存使用状况分析 1 --一些SQL内存使用的错误理解以及内存使用状况分析 2 3 --1、Windows上还有很多物理内存没有被使用,就意味着SQL不缺内存 4 --SQL很可能设置了max server memory,约束了SQL继续申请内存的能力 5 --32位机器上,由于虚拟地址空间的限制,SQL可能已经无法继续申请内存了 6 7 --例如,一台4GB的32位服务器上,SQL最多只能使用2GB物理内存。一般Windows 8 --会使用500MB左右,这台机器可能就有1GB多的空闲物理内存。这部分是SQL不开AWE 9... 阅读全文
posted @ 2013-07-27 15:57 桦仔 阅读(1640) 评论(0) 推荐(0) 编辑
摘要:笔记30-徐 SQLSERVER内存管理模式与接口 1 --SQLSERVER内存管理模式与接口 2 3 4 --SQLSERVER是个很喜欢内存资源的程序,他的理想状态就是把所有可能会用到的数据和结构 5 --都缓存在物理内存里,以达到最优的性能。 6 7 --SQLSERVER会约束自己的内存使用量,但是最好作出合理的分配 8 9 --SQL会缓存大量的数据页面,他还会缓存很多其他信息,包括存储过程的执行计划 10 --特定用户的安全上下文等 11 --如果这些信息没有在数据库中缓存,SQL都要重新计算一遍,花额外的时间 12 13 --SQLSERVER开发出... 阅读全文
posted @ 2013-07-27 15:56 桦仔 阅读(636) 评论(0) 推荐(0) 编辑
摘要:笔记29-徐 Windows与SQLSERVER系统使用内存情况和合理配置SQLSERVER内存 --P166 1 --Windows与SQLSERVER系统使用内存情况和合理配置SQLSERVER内存 --P166 2 --性能监视器 perfmon 3 --添加-》可用计数器-》Memory-》添加available MBytes和pages/sec 4 5 --数据收集器集-》用户定义-》新建-》数据收集器集-》名称:SQLSERVER内存使用-》手动创建-》性能计数器-》 6 --添加下面的性能计数器-》时间间隔15秒-》保存路径:C:\Users\Administr... 阅读全文
posted @ 2013-07-27 15:55 桦仔 阅读(1005) 评论(0) 推荐(0) 编辑
摘要:笔记28-徐 FQDN错误解决方法 1 --FQDN错误解决方法 2 3 --FQDN(fully qualified domain name) 4 --客户端首先通过服务器名字,反向解析出SQLSERVER服务使用的IP地址 5 --并且调用API GetHostByName来得到SQLSERVER的FQDN名字 6 --客户端在得到的FQDN前面加一个“MSSQLSvc/”,在后面加上端口号得到一个SPN(service principal name) 7 -- 8 9 --要引导客户端使用kerberos认证10 --1客户端计算机和服务器计算机必须属于同一Windows域或在可信域.. 阅读全文
posted @ 2013-07-27 15:54 桦仔 阅读(1073) 评论(0) 推荐(0) 编辑
摘要:笔记27-徐 SQLSERVER命名管道工作原理 1 --SQLSERVER命名管道工作原理 2 --SQL首先在服务器上创建一个命名管道并监听之,然后客户端即连接到这个命名 3 --管道上来进行对话。对每一个客户端命名管道连接请求SQL都会创建一个新的 4 --管道实例来与之通信 5 6 --命名管道的名称 7 --SQL和其他Windows程序一样都采用UNC格式标识命名管道 8 --例如:\\server\Pipe\path_name 9 10 11 --上述命名管道标识字符串可以分为三部分:12 --\\server部分:指定命名管道所在服务器的名字。命名管道便是在此机器上创建的。S. 阅读全文
posted @ 2013-07-27 15:52 桦仔 阅读(1531) 评论(0) 推荐(0) 编辑
摘要:笔记26-徐 SQLSERVER内存分配和常见内存问题 1 --SQLSERVER内存分配和常见内存问题 2 3 --SQLOS:SQL 把他对系统资源调度尤其是对内存和CPU的调度的功能组件,称为SQLOS 4 --SQL是一个非常喜欢用内存的应用,如果内存不够,SQL一定会运行得非常艰难 5 --而且在内存使用上,容易出的问题也比较多 6 7 8 --1、SQL所占用的内存数量从启动以后,就不停地增长 9 10 --2、在Windows2003以上版本运行SQL,内存使用量突然急剧下降 11 --errorlog: 12 --spid1 a singnifican... 阅读全文
posted @ 2013-07-27 15:51 桦仔 阅读(1880) 评论(0) 推荐(0) 编辑
摘要:笔记25-徐 TCP/IP协议连接失败检测 1 --TCP/IP协议连接失败检测 2 3 --如果新添加TCP/IP协议,需要重启SQL才能生效。 4 5 --如果SQL服务器的IP地址改变,重启SQL或者重启电脑就可以了 6 --但是我改了网卡的IP地址为192.168.1.108,用IP地址来进入SSMS,都可以进入不用重启SQL服务 7 --SQL配置管理器里的TCP/IP协议那里配置还是192.168.1.100,无论是否重启SQL服务 8 --SQL会自动监听机器的新IP地址,无须重装或配置SQL 9 10 11 12 13 --在配置管理器里默认的TCP/IP的端口号是1433.. 阅读全文
posted @ 2013-07-27 15:50 桦仔 阅读(1600) 评论(0) 推荐(1) 编辑
摘要:笔记24-徐 认证与代理问题 1 --认证与代理问题 2 3 --常见认证问题有两种: 4 --1、认证的结果表明用户是个非法用户 5 --SQL返回客户端18456错误 6 --每个18456错误会返回一个状态编号,每个编号都有它自己的意思 7 --根据编号的含义确定错误的原因 8 --状态 说明 9 --2 用户ID无效 10 --5 用户ID无效 11 --6 尝试同时使用SQL身份验证与Windows登录名 12 --7 登录已经禁用,密码不正确 13 --8 密码不正确 14 --9 密码... 阅读全文
posted @ 2013-07-27 15:48 桦仔 阅读(158) 评论(0) 推荐(0) 编辑
摘要:笔记23-徐 数据库状态切换以及恢复 1 Backup Log 2 With NO Recovery 3 Alter Online (设置在线) 4 Restore DB 5 Restore DB 6 Success 7 成功 8 Restore LOG 9 Resource Error10 Restore DB11 Alter Online (设置在线)12 Restore With Rcovery13 Restore DB14 (还原数据库)15 Alter Offline16 (设置离线)17 Restore DB18 (还原数据库)19 Alter Offline20 (设置离线)21 阅读全文
posted @ 2013-07-27 15:47 桦仔 阅读(528) 评论(0) 推荐(0) 编辑
摘要:笔记22-徐 SQL客户端网络配置 1 --SQL客户端网络配置 2 --客户端应用都是通过加载SQL的数据驱动程序做SQL连接的。目前客户端数据驱动库主要有3种 3 --1、MDAC(Microsoft数据访问组件) 4 --2、SQLSERVER Native Client 5 --3、Microsoft JDBC Provider 6 7 --1、MDAC:这个组件包括传统的ODBC和OLE DB接口,主要是为非.NET的应用服务。 8 --这个组件历史悠久,目前一些老的程序VB VC COM还在使用他。默认Windows 9 --自带MDAC,因此无须特别安装。如果... 阅读全文
posted @ 2013-07-27 15:45 桦仔 阅读(1357) 评论(0) 推荐(0) 编辑
摘要:笔记21-徐 SQL连接与认证以及常见错误 1 --SQL连接与认证以及常见错误 2 --连接建立后,客户端需要告诉SQL自己是谁,SQL需要认证是否为合法SQL用户,从而 3 --赋予它预先设置好的权力。这些工作由客户端数据驱动程序(ODBC\OLE DB \Native Client\JDBC等等) 4 --和SQL交互完成 5 6 7 8 --错误 9 --1、客户端驱动没能找到用户指定的SQL 10 --2、SQL已经找到,连接已经建立,但是因为某种未知原因,连接被异常中断 11 --3、用户认证失败,SQL认为连接使用了一个非法用户而拒绝 12 --4、认证过... 阅读全文
posted @ 2013-07-27 15:44 桦仔 阅读(568) 评论(0) 推荐(0) 编辑