推荐每次备份数据库以后进行一次,要获得好的 DBCC 性能的一些建议

  • 在系统使用率较低时运行 CHECKDB。
  • 请确保未同时执行其它磁盘 I/O 操作,例如磁盘备份。
  • tempdb 放到单独的磁盘系统或快速磁盘子系统中。
  • 允许 tempdb 在驱动器上有足够的扩展空间。使用带有 ESTIMATE ONLY 的 DBCC 估计 tempdb 将需要多少空间。
  • 避免运行占用大量 CPU 的查询或批处理作业。
  • 在 DBCC 命令运行时,减少活动事务。
  • 使用 NO_INFOMSGS 选项显著减少处理和 tempdb 的使用。
  1. USE master 
  2. DECLARE @dbName VARCHAR(255) 
  3. SET @dbName='需要修复的数据库实体的名称' 
  4. EXEC SP_DBOPTION @dbName, N'single', N'true'   --单用户状态 
  5. DBCC CHECKDB(@dbName,REPAIR_ALLOW_DATA_LOSS) 
  6. DBCC CHECKDB(@dbName,REPAIR_REBUILD) 
  7. EXEC SP_DBOPTION @dbName, N'single', N'false'  --多用户状态  

本日志由 Loveyuki 于 2009-08-20 12:07 发表到 技术新知 中,目前已经被浏览 1564 次,评论 4 次;

作者添加了以下标签: SQL Server

今天在博客园看到一篇文章,是关于一个系统补丁重复安装的问题,看了之后看原因是因为 Visual Studio 2008 SP1 没有安装 Visual C++ 造成的,一想,我也没安装 Visual C++ 啊,一验证,果然,安装完以后自动更新又会找到,一直重复安装也不是个办法啊。照着他的文章操作了一次后,不会再提示需要更新了!文章作者的系统是 Windows 7,我的是 Windows 2008 Server,都有这样的问题,你也检查一下吧,说不定你也会遇到这样的问题,特转载过来给大家分享一下。

一个关于Visual Studio 2008 SP1 (KB971092) 的系统补丁重复安装问题的解决方案:

  1. 下载补丁包或直接从 C:\Windows\SoftwareDistribution\Download\Install 目录找。
  2. 双击安装,记住释放文件的目录。出现提示"VC Libraries QFE Patch 不适用或被系统的其他条件阻止。有关详细信息,请单击以下链接。"时,不要关闭窗口。
  3. 找到释放安装文件的临时文件夹,复制一份到其他分区。
  4. 现在可以关闭刚才的提示窗口了。
  5. 找到“C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat”这个文件,添加 Everyone 的权限为可写。
  6. 运行桌面文件夹内的 VS90SP1-KB971092-x86.msp 等待安装完成,完成时没有提示。
  7. 更新成功!

本日志由 Loveyuki 于 2009-08-01 18:27 发表到 技术新知 中,目前已经被浏览 1932 次,评论 8 次;

有时候网站需要更换域名,但是不想放弃以往的搜索引擎收录,那么就需要做 301 永久重定向了,那么 IIS 6.0 如何能做到最简单的全站重定向呢?

设置 IIS 站点属性 》主目录 》重定向到URL写入http://www.新域名.com$S$Q

并且选中 上面输入的准确URL资源的永久重定向 。即可使旧域名的网址参数完整传递到新的域名。

关于参数的详解:

  1. $S :将请求的 URL 的后缀传递给新的 URL。后缀是用重定向的 URL 代替之后,初始 URL 中所保留的部分。如果未设置 EXACT_DESTINATION 标志,则结果目标 URL 的名称将具有所请求文件的名称(作为文件夹名称)以及文件名本身。
  2. $P :将初始 URL 中的参数(如 Querystring 参数)传递至新的 URL,不包括问号 (?)。
  3. $Q :将初始 URL 中的参数(如 Querystring 参数)传递至新的 URL,包括问号 (?)。
  4. $V :传递请求的 URL,不包括服务器名和任何参数。要包含参数,可使用 $P 或 $Q 变量及 $V 变量。如果未设置 EXACT_DESTINATION 标志,则结果目标 URL 的名称将具有所请求文件的名称(作为文件夹名称)以及文件名本身。

本日志由 Loveyuki 于 2009-07-31 17:28 发表到 技术新知 中,目前已经被浏览 1430 次,评论 1 次;

Arch Linux 中的 Xfce 4.6 版本以后增加休眠和待机支持,但是我用 VMware 虚拟装的系统,根本不需要这两个功能,怎样才能隐藏呢?我们可以使用 xfconf-query 这个命令行工具来做到:

  • 隐藏待机按钮:
    1. xfconf-query -c xfce4-session -np '/shutdown/ShowSuspend' -t 'bool' -s 'false'  
  • 显示待机按钮:
    1. xfconf-query -c xfce4-session -np '/shutdown/ShowSuspend' -t 'bool' -s 'true'  
  • 隐藏休眠按钮:
    1. xfconf-query -c xfce4-session -np '/shutdown/ShowHibernate' -t 'bool' -s 'false'  
  • 显示休眠按钮:
    1. xfconf-query -c xfce4-session -np '/shutdown/ShowHibernate' -t 'bool' -s 'true'  

本日志由 Loveyuki 于 2009-07-17 10:04 发表到 技术新知 中,目前已经被浏览 1211 次,评论 13 次;

作者添加了以下标签: xfce4Arch Linux

Bitrac 程序内是直接引用了 System.Data.SQLite 这一命名空间,因为 ASP.NET 的特性,如果单独升级 SQLite 的库文件不重新编译程序那么程序运行时肯定无法找到所需要的程序集,因为版本号有了变化,而 Bitrac.Auto.dll 自动升级程序集也需要引用 SQLite 的库,但是我并不希望每次 SQLite 的库更新 Bitrac.Auto.dll 也要更新,那样会造成太多的不便,这时候就需要使用 ASP.NET 2.0 的一个新特性了,那就是 DbProviderFactories,Bitrac.Data.dll 依然使用旧的方法直接引用 SQLite 库。

首先在 web.config 文件里面增加:

  1. <system.data> 
  2.     <DbProviderFactories> 
  3.         <remove invariant="System.Data.SQLite"/> 
  4.         <add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite"/> 
  5.     </DbProviderFactories> 
  6. </system.data> 

C# 使用以下代码就可以了:

  1. DbProviderFactory oFact = DbProviderFactories.GetFactory("System.Data.SQLite");  
  2.  
  3. using (DbConnection oConn = oFact.CreateConnection())  
  4. {  
  5.     oConn.ConnectionString = "数据库连接字符串";  
  6.     oConn.Open();  
  7.  
  8.     oConn.Close();  

其实 ASP.NET 程序支持多种数据库使用的也是这个方法。

本日志由 Loveyuki 于 2009-05-11 19:03 发表到 技术新知 中,目前已经被浏览 2389 次,评论 14 次;

作者添加了以下标签: SQLiteBitrac