<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[arrow_gx的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/arrow_gx</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; arrow_gx]]></copyright><item><title><![CDATA[SQL Server 2008 索引之十亿行数据测试报告]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/14522961</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/14522961</guid><author>arrow_gx</author><pubDate>Fri, 08 Nov 2013 15:43:24 +0800</pubDate><description><![CDATA[索引简介




      索引被创建于已有的表中，它可使对行的定位更快速更有效。可以在表格的一个或者多个列上创建索引，每个索引都会被起个名字。用户无法看到索引，它们只能被用来加速查询。

当然更新一个包含索引的表需要比更新一个没有索引的表花更多的时间，这是由于索引本身也需要更新。因此，理想的做法是仅仅在常常用于搜索的列上面创建索引。

    索引的分类：微软的SQL SER]]></description><category></category></item><item><title><![CDATA[SQL Server 2008、2012 事务日志截断(truncate)与收缩(shrink)]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/9301835</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/9301835</guid><author>arrow_gx</author><pubDate>Thu, 11 Jul 2013 16:15:42 +0800</pubDate><description><![CDATA[现象：一个数据库，数据文件10+G ，事务日志达20+G，而且使用常规的截断、收缩方法均无法减小日志物理文件的尺寸


解决方法：
步骤一：
查看日志信息
在查询分析器中执行如下代码来查看日志信息：
 DBCC LOGINFO('数据库名称')
 可以看到status=0的日志，代表已经备份到磁盘的日志文件；而status=2的日志还没有备份。当收缩日志文件时，收缩掉的空间其实就是]]></description><category></category></item><item><title><![CDATA[深入分析各种raid级别相对单盘速度变化]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/7328878</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/7328878</guid><author>arrow_gx</author><pubDate>Wed, 07 Mar 2012 14:51:18 +0800</pubDate><description><![CDATA[入分析各种raid级别相对单盘速度变化
 RAID0用分片存储方式把数据分布在两个盘或更多盘上，读写持续传输速率会增加一倍，随机读写速度按理论是有可能增加的，这取决于数据分片大小和读写的大小，不过总的来说很值得怀疑；硬件RAID1的随机和持续写速率和单个硬盘是完全一样的，但读的话由于可以从两个硬盘随意选一个读，随机读性能会有明显的增加，可能至2倍，至于持续读取速率理论上有可能增加，不过我很怀疑有]]></description><category></category></item><item><title><![CDATA[使用 js WinHttpRequest 修改伪造 Referer （附实战代码）]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/7311947</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/7311947</guid><author>arrow_gx</author><pubDate>Fri, 02 Mar 2012 13:36:34 +0800</pubDate><description><![CDATA[【转】使用 js WinHttpRequest 修改伪造 Referer （附实战代码）






首先说明，伪造访问来路不是什么光明正大的事情，目的就是为了欺骗服务器。原本以为给 XMLHTTP 对象增加一个 
Referer 的header 就可以，结果却没有任何作用，改用 ServerXMLHTTP 也如此。
无意间发现公司内部项目使用的 paypal 扣款程序里面有 W]]></description><category></category></item><item><title><![CDATA[修改Metabase.xml文件提升IIS性能]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/7251674</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/7251674</guid><author>arrow_gx</author><pubDate>Sat, 11 Feb 2012 21:46:27 +0800</pubDate><description><![CDATA[Metabase.xml文件是IIS的设置文件，每个网站已经IIS的设置都在这个下面，所以在修改这个文件之前要把这个文件备份一下。这个文件在C:/WINDOWS/system32/inetsrv/Metabase.xml，前篇的启用IIS的静态压缩也可以在文件下设置，也可以在IIS的图形界面下设置。
      对IIS的性能优化要对症下药，对不同的网站有不同的优化方法，在分析你网站的特点的情况]]></description><category></category></item><item><title><![CDATA[事物发布中，更改字段，新加表的操作流程]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/6397404</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/6397404</guid><author>arrow_gx</author><pubDate>Thu, 05 May 2011 16:41:00 +0800</pubDate><description><![CDATA[<br />注意：发布时须使用备份文件进行发布<br /> <br />更改字段<br />1：停止相关业务工作流，确保对需要修改字段的表没有任何数据操作<br />2：在发布中删除需要修改字段的表的发布<br />3：在订阅库中，直接修改字段<br />4：在发布库中，直接修改字段<br />5：在发布中，重新选择这个表<br />6：手工测试发布和订阅在该表上是否同步<br />7：回复相关业务工作流程<br /> <br />新添发布表<br />1：在发布数据库和订阅数据库上直接创建完全一样的表<b]]></description><category></category></item><item><title><![CDATA[事物发布出现中断如：(事务序列号: 0x0000003A000001DB006800000000)]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/6397261</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/6397261</guid><author>arrow_gx</author><pubDate>Thu, 05 May 2011 16:21:00 +0800</pubDate><description><![CDATA[<br />1 <br />Replication-replication distribution subsystem agent null failed. the publication XXX does not exist<br />从字面上可以看到，当前订阅的发布已经不存在了，而相应的分发代理却因为某些原因没有被删除，继续运行，就会出现这种错误。 <br />这个错误可以在distributor的错误日志中，或者MSrepl_errors表中看到. <br />A1 如何解决：在distributo]]></description><category></category></item><item><title><![CDATA[SQL Server事务复制通过备份文件进行订阅初始化 ]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/6370134</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/6370134</guid><author>arrow_gx</author><pubDate>Thu, 28 Apr 2011 17:15:00 +0800</pubDate><description><![CDATA[<br />1、在发布服务器上创建一个发布。<br />2、发布属性中的订阅选项，设置允许从备份文件初始化为true，默认是false。<br />3、在发布服务器上暂停分发日志的清理作业（否则可能出现事物被清理而无法创建订阅的错误），备份数据库，发布服务器上保留备份文件，后面要用。<br />4、在订阅服务器上使用刚才的备份还原数据库，删除订阅服务器上数据库的触发器。<br />5、在发布服务器上执行sp_addsubscription存储过程添加订阅，脚本如下：<br />exec sp_addsubs]]></description><category></category></item><item><title><![CDATA[sql_split函数]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/6154544</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/6154544</guid><author>arrow_gx</author><pubDate>Thu, 20 Jan 2011 12:24:00 +0800</pubDate><description><![CDATA[<br />alter function sql_split<br />(<br /> @str varchar(1024),  --要分割的字符串<br /> @split varchar(10),  --分隔符号<br /> @index int --取第几个元素<br />)<br />returns varchar(1024)<br />as<br />begin<br /> declare @split_str varchar(1024)<br /> declare @location int<b]]></description><category></category></item><item><title><![CDATA[merge 语句实现数据的差异传输]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/5791964</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/5791964</guid><author>arrow_gx</author><pubDate>Thu, 05 Aug 2010 23:45:00 +0800</pubDate><description><![CDATA[最近数据库升级到2008，研究了一下，发现有一个很好用的新功能，merge 语句加上存储过程，可以实现数据的差异传输，源表的增删改，都可以使用 merge 语句，把数据更改应用到目标表上，我们原来一个2亿多条记录的表，完全传输一次需要3个多小时，使用这个方法进行数据传输，首次花的时间和原来差不多，但是在以后的定时作业里面，看到传输时间只有不到 10分钟了，经大量数据抽样检查，数据是完全相同的，通过优化，以及增加作业的频率，可以实现数据更短的时间差，这对于表比较大，而且需要进行不定期同步的情况来说，节省了不少]]></description><category></category></item><item><title><![CDATA[sql2008安装问题-----sql browser 无法启动终极解决办法]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/4232335</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/4232335</guid><author>arrow_gx</author><pubDate>Mon, 01 Jun 2009 13:26:00 +0800</pubDate><description><![CDATA[这几天在几台不同的服务器上安装 sql2008 ，其中一台服务器安装顺利，其他几台都安装不上，都是提示 sql browser 无法启动，这几台机器硬件配置一模一样，系统都是比较单纯的，没有安装什么软件，研究N久，一点头绪都找不到，简直要抓狂啊 冷静，冷静，碰到这样的问题一定要冷静，仔细分析，还好有一台成功装上了，有可对比分析的对象  狂查几台机器的差异，服务、端口、防火墙、IP安全策略、]]></description><category></category></item><item><title><![CDATA[锁概念 以及 例程说明]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/4004938</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/4004938</guid><author>arrow_gx</author><pubDate>Thu, 19 Mar 2009 16:28:00 +0800</pubDate><description><![CDATA[锁的概述 一. 为什么要引入锁 多个用户同时对数据库的并发操作时会带来以下数据不一致的问题: 丢失更新A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统 脏读A用户修改了数据,随后B用户又读出该数据,但A用户因为某些原因取消了对数据的修改,数据恢复原值,此时B得到的数据就与数据库内的数据产生了不一致 不可重复读A用户读取数据,随后B用户读出该数据并修改,]]></description><category></category></item><item><title><![CDATA[表变量自动增加字段、主键的定义+exists使用例子]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/2527641</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/2527641</guid><author>arrow_gx</author><pubDate>Mon, 09 Jun 2008 17:31:00 +0800</pubDate><description><![CDATA[--表变量定义自动增加字段，定义主键DECLARE @tmp2 table(id int IDENTITY(1,1),id2 int primary key(id))insert into @tmp2(id2) select top 100 id from book order by idselect * from @tmp2 order by id --指定一个子查询，测试行是否存在 selec]]></description><category></category></item><item><title><![CDATA[SQL Server锁类型(SQL)]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/2501368</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/2501368</guid><author>arrow_gx</author><pubDate>Sun, 01 Jun 2008 19:10:00 +0800</pubDate><description><![CDATA[1． HOLDLOCK: 在该表上保持共享锁，直到整个事务结束，而不是在语句执行完立即释放所添加的锁。　　 　　2． NOLOCK：不添加共享锁和排它锁，当这个选项生效后，可能读到未提交读的数据或“脏数据”，这个选项仅仅应用于SELECT语句。　　 　　3． PAGLOCK：指定添加页锁（否则通常可能添加表锁）。　 　　4． READCOMMITTED用与运行在提交读隔离级别的事务相同的锁语义执行]]></description><category></category></item><item><title><![CDATA[SQL SERVER 2005 同步复制技术]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/2493486</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/2493486</guid><author>arrow_gx</author><pubDate>Thu, 29 May 2008 15:18:00 +0800</pubDate><description><![CDATA[SQL SERVER 2005 同步复制技术 以下实现复制步骤（以快照复制为例） 运行平台SQL SERVER 2005 一、准备工作： 1．建立一个 WINDOWS 用户，设置为管理员权限，并设置密码，作为发布快照文件的有效访问用户。 2．在SQL SERVER下实现发布服务器和订阅服务器的通信正常（即可以互访）。打开1433端口，在防火墙中设特例 3．在发布服务器上建立一个共享目录，作为发布快]]></description><category></category></item><item><title><![CDATA[SQLServer2000同步复制技术实现步骤]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/2493454</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/2493454</guid><author>arrow_gx</author><pubDate>Thu, 29 May 2008 15:09:00 +0800</pubDate><description><![CDATA[SQLServer2000同步复制技术实现步骤 作者:gaojier 日期:2007-06-25 字体大小: 小 中 大 一、 预备工作 1.发布服务器,订阅服务器都创建一个同名的windows用户,并设置相同的密码,做为发布快照文件夹的有效访问用户 --管理工具 --计算机管理 --用户和组 --右键用户 --新建用户 --建立一个隶属于administrator组的登陆windows的用户（S]]></description><category></category></item><item><title><![CDATA[用强制订阅实现数据库同步操作]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/2493445</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/2493445</guid><author>arrow_gx</author><pubDate>Thu, 29 May 2008 15:07:00 +0800</pubDate><description><![CDATA[用强制订阅实现数据库同步操作 大量和批量的数据可以用数据库的同步机制处理://说明：为方便操作,所有操作均在发布服务器(分发服务器)上操作,并使用推模式在客户机器使用强制订阅方式。有疑问联系作者：zlp321001@hotmail.com测试通过//--1:环境服务器环境:机器名称： ZehuaDb 操作系统：Windows 2000 Server数据库版本：SQL 2000 Server 个人版]]></description><category></category></item><item><title><![CDATA[Lumigent Log Explorer 使用方法]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/2492649</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/2492649</guid><author>arrow_gx</author><pubDate>Thu, 29 May 2008 11:04:00 +0800</pubDate><description><![CDATA[前言本文通过一个Bug的分析、解决，概述了使用Lumigent Log Explorer对SQL Server的事务日志进行分析的方法，以及常见的数据库误操作后的恢复、撤销方法 Bug描述 网站的文章模块有一个评分的功能： 用户选择1-5分，点击提交后，文章的评分次数(Stars) + 1、总分(StarTotal) + 分数、平均分(StarAvg) = 新总分 / 新评分次数 文章页面显示用户]]></description><category></category></item><item><title><![CDATA[having 的用法]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/2491197</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/2491197</guid><author>arrow_gx</author><pubDate>Wed, 28 May 2008 17:42:00 +0800</pubDate><description><![CDATA[指定组或聚合的搜索条件。HAVING 只能与 SELECT 语句一起使用。HAVING 通常在 GROUP BY 子句中使用。如果不使用 GROUP BY 子句，则 HAVING 的行为与 WHERE 子句一样。 以WHERE 不同的地方在于，having可以在条件里面带聚合函数 sum ,count 比如：select * from book where authorid in (select ]]></description><category></category></item><item><title><![CDATA[SQL Server 2005中解决死锁问题]]></title><link>https://blog.youkuaiyun.com/arrow_gx/article/details/2483155</link><guid>https://blog.youkuaiyun.com/arrow_gx/article/details/2483155</guid><author>arrow_gx</author><pubDate>Mon, 26 May 2008 16:59:00 +0800</pubDate><description><![CDATA[SQL Server 2005中解决死锁问题 数据库操作的死锁是不可避免的，本文并不打算讨论死锁如何产生，重点在于解决死锁，通过SQL Server 2005, 现在似乎有了一种新的解决办法。  将下面的SQL语句放在两个不同的连接里面，并且在5秒内同时执行，将会发生死锁。  use Northwind begin tran 　　insert into Orders(CustomerId) val]]></description><category></category></item></channel></rss>