
sql server
文章平均质量分 77
isoleo
这个作者很懒,什么都没留下…
展开
-
sql server 审核
很多时候我们都需要对数据库或者数据库服务器实例进行审核/审计例如对失败的登录次数进行审计,某个数据库上的DDL语句进行审计,某个数据库表里面的delete语句进行审计 上面的这些审计需求无非就是看一下有哪些人试图入侵数据库服务器,入侵了之后是否有drop表,是否有delete数据在SQLSERVER2008及以前版本可以选择的方案有1、服务器级别原创 2016-02-02 11:12:44 · 2250 阅读 · 0 评论 -
SQL SERVER Transactional Replication中添加新表如何不初始化整个快照
在SQL SERVER的复制(Replication)中,有可能出现由于业务需求变更,需要新增一张表或一些表到已有的复制(发布订阅)当中,这种需求应该是很正常,也很常见的。但是在已有的复制(发布订阅)当中增加新表/文章,往往需要将整个快照重新初始化,这样做虽然简单,但是往往在实际应用中会出现一些问题,例如,发布订阅的表比较多,数据量比较大,那么重新初始化快照往往需要很长一段时间,影响系统正常运行。转载 2015-03-03 11:23:02 · 1193 阅读 · 0 评论 -
SQL Server中查询CPU占用高的SQL语句
SQL Server中查询CPU占用高的情况,会用到sys.sysprocesses ,dm_exec_sessions ,dm_exec_requests 一、查看当前的数据库用户连接有多少 USE masterGOSELECT * FROM sys.[sysprocesses] WHERE [spid]>50 --AND DB_NAME([dbi原创 2015-03-02 18:09:16 · 14512 阅读 · 1 评论 -
sql 连接接查询优化
1)外连接消除①外连接简介1)LEFT JOIN / LEFT OUTER JOIN:左外连接 左向外连接的结果集包括:LEFT OUTER子句中指定的左表的所有行,而不仅仅是连接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值。 2)RIGHT JOIN / RIGHT原创 2015-02-14 13:53:25 · 1275 阅读 · 0 评论 -
SQL SERVER 2005/08 数据库置疑或挂起恢复
适用于日志丢失或损坏,用来重建日志alter database 置疑数据库 set emergency go alter database 置疑数据库 set single_user with rollback immediate go use master go alter database 置疑数据库 Rebuild Log on (name=Suspe原创 2014-12-24 14:17:02 · 1342 阅读 · 1 评论 -
SQL SERVER 查看用户权限
--用户与角色关系select a.uid as uid,a.status as uStatus,a.name as uName, b.uid as rId,b.status as rStatus,b.name as rNamefrom sysusers a left join sysmembers m on m.memberuid = a.uid left join s原创 2014-12-04 19:37:05 · 6654 阅读 · 0 评论 -
SQL Server:查看数据库用户权限(SQL 2008)
1. 查看 SQL 2008 用户所属数据库角色use yourdbgoselect DbRole = g.name, MemberName = u.name, MemberSID = u.sid from sys.database_principals u, sys.database_principals g, sys.database_role_members m where g.原创 2014-12-04 19:36:29 · 14758 阅读 · 3 评论 -
sql server 体系结构
1. SQL Server 引擎概述SQL Server有四大组件:协议(Protocol)、关系引擎(Relational Engine)(又称查询处理器(Query Processor))、存储引擎(Storage Engine)和SQLOS。任何客户端应用程序提交给SQL Server执行的每一个批处理(Batch)都必须与这四个组件进行交互。1.1 协议组件:负责接收请求并把它转载 2015-01-08 10:32:29 · 3454 阅读 · 0 评论 -
SQLSERVER排查CPU占用高的情况
内存占用也很高,占用了30个G-----------------------------------------------华丽的分割线-------------------------------------------------------一般排查都是用下面的脚本,一般会用到三个视图sys.sysprocesses ,dm_exec_sessions ,dm_原创 2015-01-26 18:49:51 · 1049 阅读 · 0 评论 -
数据库体系结构
关于SQLServer2005 的学习笔记(二)——体系结构一 SQLServer2005 引擎组件首先让我们先来看看 SQL Server2005 的引擎组件, SQLServer2005 有四大组件:协议、关系引擎、存储引擎和 SQLOS 。协议层接收来自于用户的请求(查询、更改、删除、创建表等等操作)并把它们转换成关系引擎能够识别的形式。它还能够获取任意查询、状态信息、错转载 2015-03-06 11:01:31 · 862 阅读 · 0 评论 -
PD16 Generate Datebase For Sql2008R2时报脚本错误“对象名sysproperties无效”
PowerDesinger16创建数据库表到SQL2008R2时,执行报“对象名sysproperties无效”错误。主要是在建模时我们对表、列增加了些说明注释,而Sql2005之后系统表sysproperties已废弃删除而改用sys.extended_properties所致。 1、修改Table TableComment模板路径是 Database原创 2015-04-02 09:45:07 · 942 阅读 · 0 评论 -
SqlServer并发事务:死锁跟踪(三)3种跟踪死锁的方法
方法一:SQL codeDBCC TRACEON (3605,1204,1222,-1) 说明:3605 将DBCC的结果输出到错误日志。1204 返回参与死锁的锁的资源和类型,以及受影响的当前命令。1222 返回参与死锁的锁的资源和类型,以及使用了不符合任何 XSD 架构的 XML 格式的受影响的当前命令(比1204更进一步,SQL 2005及以上可用)。-1 以全局方式原创 2015-04-22 14:02:48 · 1106 阅读 · 0 评论 -
SQL Server的查询优化器详解
SQL Server的查询优化器在select查询执行的时候产生一个高效的查询执行计划。如果优化器不能选择最优的计划,那么就需要检查查询计划、统计信息、支持的索引等,而通过使用提示可以改变优化器选择查询计划的工程,使优化器生成一个更好的执行计划。1、联接提示 ::= { LOOP | HASH | MERGE | REMOTE }LOOP | HASH | MER原创 2015-11-18 17:47:10 · 4006 阅读 · 0 评论 -
sql server 查询原理
一.SQL SERVER是通过哪个组件以及如何来和客户端进行“接受要求”及“提供结果”的交互的。二.关系引擎(查询处理器)处理SQL查询的详细步骤。 第一部分:SQL SERVER 服务器于客户端的交互主要依靠Open Data Services(简称ODS)组件,中文名 “开放数据服务”。在《SQL SERVER 2000技术内幕》中,译者将Open转载 2015-11-17 17:49:10 · 1730 阅读 · 0 评论 -
sql server 独占数据库方法
大家应该经常用到对数据库还原,改名,等需独占数据库的情况网上有很多方法为,写一个过程,强制结束掉所有进程,然后独占,这样的方式,适用于非高并发情况 。只要有大量的连接库操作,无论怎么结束都无法结束完成。更佳的操作方式如下:USE [master]GOALTER DATABASE [lxm] SET SINGLE_USER WITH rollback immedia原创 2015-05-27 12:44:30 · 2838 阅读 · 0 评论 -
sql server 结束指定数据库所有进程
USE [master]GO/****** Object: StoredProcedure [dbo].[StopLogin] Script Date: 2015/5/7 9:15:48 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO -- =========================原创 2015-05-07 09:18:21 · 3757 阅读 · 0 评论 -
sql server线程等待信息
返回执行的线程所遇到的所有等待的相关信息。 可以使用此聚合视图来诊断 SQL Server 以及特定查询和批处理的性能问题。 来自微软官方 https://msdn.microsoft.com/zh-cn/library/ms179984.aspx 适用范围:SQL Server(SQL Server 2008 到当前版本)。 列名 数据类型 说明 wait_type nvarcha原创 2015-05-04 11:15:07 · 4937 阅读 · 0 评论 -
SQL SERVER CXPACKET-Parallelism Wait Type 的解决方案
CXPACKET 已经成为所有等待类型中最常见的一种了。我通常会在多CPU系统的前五位等待类型统计中看见CXPACKET. 联机丛书: 当尝试同步查询处理器交换迭代器时出现。如果针对该等待类型的争用成为问题时,可以考虑降低并行度。 CXPACKET 解释: 当为SQL查询创建一个并行操作时,会有多个线程去执行这个查询。每个查询处理不同的数据集或行集。原创 2015-04-28 16:48:02 · 1721 阅读 · 0 评论 -
sql server 常见等待状态分析
1、同一个症状可能是由于多种不同的原因 3 假设观测到IO延迟(Avg. Disk Sec/read>50) 7 可能是由于IO子系统无法满足负载 8 可能是由于同步IO子系统镜像 9 可能是由于网络延迟 10 可能是IO子系统配置不当 11 可能是内存压力 12 过多的计划缓存 13 SQL Server之外程序引起的压力 14 大量即席查询 15 不准确的执行计划原创 2015-05-09 10:08:20 · 8276 阅读 · 0 评论 -
sql server 分区表之查看分区表的相关数据
在向分区表中插入数据方法和在普遍表中插入数据的方法是完全相同的,对于程序员而言,不需要去理会这13条记录研究放在哪个数据表中。当然,在查询数据时,也可以不用理会数据到底是存放在哪个物理上的数据表中。如使用以下SQL语句进行查询:[c-sharp] view plaincopyselect * from Sale原创 2014-11-27 16:02:50 · 12714 阅读 · 0 评论 -
sql server 分区表之合并分区
在前面我们介绍过如何创建和使用一个分区表,并举了一个例子,将不 同年份的数据放在不同的物理分区表里。具体的分区方式为: 第1个小表:2010-1-1以前的数据(不包含2010-1-1)。 第2个小表:2010-1-1(包含2010-1-1)到2010-12-31之间的数据。 第3个小表:2011-1-1(包含2011-1-1)到2011-12-31之间的数原创 2014-11-27 16:29:41 · 2058 阅读 · 0 评论 -
监控 SQL Server 的运行状况--常用检测语句
监控 SQL Server 的运行状况--常用检测语句Microsoft SQL Server 2005 提供了一些工具来监控数据库。方法之一是动态管理视图。动态管理视图 (DMV) 和动态管理函数 (DMF) 返回的服务器状态信息可用于监控服务器实例的运行状况、诊断问题和优化性能。常规服务器动态管理对象包括:dm_db_*:数据库和数据库对象dm_ex原创 2014-10-10 13:03:20 · 1099 阅读 · 0 评论 -
sql server 2005 全文索引
1.前言本章包括:全文索引的介绍全文索引中的术语全文索引的体系结构全文目录的管理全文索引的管理填充全文索引使用全文搜索查询数据在数据库中快速搜索数据,使用索引可以提高搜索速度,然而索引一般是建立在数字型或长度比较短的文本型字段上的,比如说编号、姓名等字段,如果建立在长度比较长的文本型字段上,更新索引将会花销很多的时间。如在文章转载 2014-07-10 10:11:04 · 872 阅读 · 0 评论 -
sql server 带有OUTPUT的INSERT,DELETE,UPDATE
OUTPUT是SQL SERVER2005的新特性.可以从数据修改语句中返回输出.可以看作是"返回结果的DML".INSERT,DELETE,UPDATE均支持OUTPUT子句.在OUTPUT子句中,可以引用特殊表inserted和deleted.使用inserted和deleted表与在触发器中使用的非常相似. 在INSERT,DELETE,UPDATE中OUTPUT的区别 1.原创 2014-05-22 17:50:16 · 15017 阅读 · 0 评论 -
sql server 和 oracle 中,ip与数字互转
(一)Oracle中:(1) IP转为数字:[sql] view plaincopycreate or replace function ip2number(ip varchar2) return number is ip_num_hex varchar2(80); begin if (rege原创 2014-05-14 17:55:16 · 1493 阅读 · 0 评论 -
sql server日期时间转字符串
一、sql server日期时间函数Sql Server中的日期与时间函数 1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 select dateadd(day,2,'2004-10-15') --返回:2004-10-17原创 2014-01-13 11:08:02 · 5422 阅读 · 0 评论 -
SQL Server 2012 文件表
一、启用FileTable1、修改数据库引擎的属性 打开“SQL Server配置管理器”,修改SQL Server数据库引擎的属性。使用此页可针对此 Microsoft SQL Server 2012安装启用 FILESTREAM。(1)针对 Transact-SQL 访问启用 FILESTREAM 选中此项可针对 Transact-SQL 访问启用 FI原创 2013-12-25 09:49:25 · 1784 阅读 · 0 评论 -
c#_hashtable 介绍
c#_hashtable- -一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中key/value键值对均为object类型,所以H原创 2013-12-17 14:42:49 · 664 阅读 · 0 评论 -
sql server 单列并行 for xml path 应用
一.FOR XML PATH 简单介绍 那么还是首先来介绍一下FOR XML PATH ,假设现在有一张兴趣爱好表(hobby)用来存放兴趣爱好,表结构如下: 接下来我们来看应用FOR XML PATH的查询结果语句如下:SELECT * FROM @hobby FOR XML PATH 结果:row>转载 2013-12-03 11:28:39 · 813 阅读 · 0 评论 -
查询sqlserver 正在执行的sql语句的详细信息
包含用户名,所在数据库,执行的sql语句,执行开始时间,驱动程序,主机名称SELECT [Spid] = session_Id, ecid, [Database] = DB_NAME(sp.dbid), [User] = nt_username, [Status] = er.status, [Wait] = wait_type, [Individual原创 2014-09-30 11:40:39 · 5484 阅读 · 0 评论 -
SQL Server 性能调优(一)——从等待状态判断系统资源瓶颈
通过DMV查看当时SQL SERVER所有任务的状态(sleeping、runnable或running)2005、2008提供了以下三个视图工详细查询:DMV用处Sys.dm_exec_requests返回有关在SQL Server中执行的每个请求的信息,包括当前的等待状态Sys.dm转载 2014-10-29 17:15:33 · 743 阅读 · 0 评论 -
sql server 存储过程解密
问题一: DAC连接问题自己尝试了n次,最后总结一下连接步骤:1 先用有sysadmin角色的用户登陆SQL Server Management Studio;2 在工具栏上选数据库引擎查询;服务器名称改为 ADMIN:服务器名称 ;选项>连接属性>连接到数据库 改为加密存储过程所在的数据库;连接3 运行解密的存储过程;问题二: 可用的存储过程解密代码转载 2014-10-14 16:48:29 · 5204 阅读 · 1 评论 -
sql server 创建分区表
如果你的数据库中某一个表中的数据满足以下几个条件,那么你就要考虑创建分区表了。 1、数据库中某个表中的数据很多。很多是什么概念?一万条?两万条?还是十万条、一百万条?这个,我觉得是仁者见仁、智者见智的问题。当然数据表中的数据多到查询时明显感觉到数据很慢了,那么,你就可以考虑使用分区表了。如果非要我说一个数值的话,我认为是1亿条。 2、但是,数据多了并不是创建分原创 2014-11-27 15:57:47 · 3292 阅读 · 0 评论 -
SQL Server 2005中的分区表:添加一个分区
为分区表添加一个分区,这种情况是时常会 发生的。比如,最初在数据库设计时,只预计了存放3年的数据,可是到了第4天怎么办?这样的话,我们就可以为分区表添加一个分区,让它把新的数据放在新的分区里。再比如,最初设计时,一个分区用于存放一年的数据,结果在使用的时候才发现,一年的数据太多,想将一个分区中的数据分为两个分区来存放。 遇到这种情况,就必须要为分区表添加一个分区了。原创 2014-11-27 15:48:39 · 749 阅读 · 0 评论 -
SQL Server执行计划 解析
当需要分析某个查询的效能时,最好的方式之一查看这个查询的执行计划。执行计划描述SQL Server查询优化器如何实际运行(或者将会如何运行)一个特定的查询。 查看查询的执行计划有几种不同的方式。它们包括: SQL Server查询分析器里有一个叫做”显示实际执行计划”的选项(位于”查询”下拉菜单中)。如果打开了这个选项,那么无论何时在查询分析器中运行一个查询,都会得到一个显示在单独转载 2014-11-26 14:18:42 · 5699 阅读 · 0 评论 -
SQL Server DDL安全审计
应用场景: 作为SQL Server安全审计的一部分,DBA可能需要这样的一份报吿:知道哪些数据库对象(储如表、存储过程、视图、用户、函数、用户权限等等)在什么时候被谁修改过,以及修改的内容等等。也还可能需要一份存储过程、函数以及视图的代码修改历史清单,知道这些代码在去过某段时间里被修改。那么,下面这份代码正好是你所需要的。 此代码在SQL Server转载 2014-11-26 14:05:31 · 1031 阅读 · 0 评论 -
SQLServer 2012 Always on配置全过程
AlwaysOn取数据库镜像和故障转移集群之长。AlwaysOn不再像故障转移集群那样需要共享磁盘,从而主副本和辅助副本可以更容易的部署到不同的地理位置;AlwaysOn还打破了镜像只能1对1的限制,支持最多5个可用性伙伴,使得辅助副本不仅能用于高可用性的目的,还能用于只读访问,甚至可以在辅助副本上进行数据库备份。 花了2天时间配置always on高性能组件:1,在一台服务器原创 2014-11-04 14:27:12 · 21553 阅读 · 0 评论 -
SQL Server 的日志文件
SQL Server 2005--正确认识日志文件1、正确认识日志文件。一个Sql Server数据库最少要包含一个mdf数据文件和一个ldf日志文件。mdf文件中包含了所有的数据库对象和数据,例如表、存储过程、用户信息等等。 ldf文件中包含(或者曾经包含)了数据库的所有事务日志,但是不要指望仅仅通过ldf日志文件来恢复数据库。例如,想通过ldf文件和以前的完全备份将数据恢复到某转载 2014-11-21 12:10:07 · 3920 阅读 · 0 评论 -
SQL Server中的三种Join方式
1.SQL Server中的三种Join方式在Sql Server中,每一个join命令,在内部执行时,都会采用三种更具体的join方式来运行。这三种join的方法是:nested loops join、merge join和hash join。这三种方法,没有哪一种是永远最好的,但是都有其最适合的上下文。SQL Server会根据两个结果集所基于的表格结构,以及结果集的大小,选择最合原创 2014-10-31 22:02:58 · 5006 阅读 · 2 评论 -
PowerDesigner使用教程之常用方法
PowerDesigner是一款功能非常强大的建模工具软件,足以与Rose比肩,同样是当今最著名的建模软件之一。Rose是专攻UML对象模型的建模工具,之后才向数据库建模发展,而PowerDesigner则与其正好相反,它是以数据库建模起家,后来才发展为一款综合全面的Case工具。PowerDesigner主要分为7种建模文件:1. 概念数据模型 (CDM)对数据和信息进原创 2014-10-31 14:18:40 · 2439 阅读 · 0 评论