2010年9月30日星期四

保持旺盛精力的小锻炼

1.起床后锻炼5分钟 这样做不仅为身体充电,而且能加倍燃烧卡路里。很多人误认为晨练必须5点钟爬起来跑上几公里,其实是不必要,也不太现实的。你只消花5分钟,
做做俯卧撑和跳跃运动,使心率加快,就能达到理想的效果;要么对着镜子冲拳100下,感受那种能量积蓄的过程。

2.养成喝水习惯 处于缺水状态的你,会时常感觉衰惫。清早起来先喝一杯水,做一下内清洁,也为五脏六腑加些"润滑剂";每天至少喝进去一升水,不过也不是多多益善。

3.讲究吃早餐 美国有研究发现,不吃早餐的人身高体重比(BMI)偏高,也就是体重超标,还爱犯困,做事无精打采;讲究吃早餐的人则精力充沛得多,身形也相对匀称。最营养
健康的西式早餐是:两片全麦面包.一块熏三文鱼和一个西红柿。全麦面包含有丰富的碳水化合物和纤维;西红柿的番茄红素有利于骨骼的生长和保健,并且对前列
腺疾病的预防很有好处;三文鱼中丰富的omega-3脂肪酸和蛋白质对身体更加有益。

4.十点加餐 即使早餐吃得不错,到上午十点半,前一天储存的糖原也差不多用没了。你要想在一天剩下的时间仍像刚充完电,这时就必须加加餐。一块巧克力,或者一根能量棒.几块饼干,补充能量以外,还能有效避免午餐暴饮暴食。

5.午后喝咖啡 午餐后,身体的睡眠因子(一种能引发睡眠的分子)成分增多,是最容易犯困的时候,此时喝一小杯咖啡效果最好。当然喝茶也行,随你喜欢!别忘了睡前4小时内不要喝咖啡,免得过于兴奋睡不着。

6.多倾诉多纾解 性格也能调节疲惫。荷兰的一项研究表明,在工作中内向.害羞的人更容易觉得累,而外向的人精力更足,这是因为爱跟人交谈的人善于发现乐趣,把自己的烦恼.压力及倒霉事一股脑说出来,就不会觉得累和无聊,相反地,喜欢安静.独处.不爱社交的人缺乏这种纾解压力的渠道,时间长了,必然感觉不堪重负。

7.坐有坐相 坐姿不良,走路踢里踏拉,耸肩腆肚,这些通常是你能量已耗干的表现。在办公室一坐就是七八个小时,如果不能保持正确的姿势,反而会觉得更疲劳。不管是站还是坐着,应当收腹立腰,放松双肩,脖子有稍稍伸展的感觉。

8.张驰结合 作中碰到难题,一时半会儿又没法解决,不如稍事休息,如去倒杯茶,换换脑筋,然后接着干。累得快透不过气来时,深吸一口气(数3下),然后呼出来(数6下);或者翻翻体育杂志,上网浏览娱乐八卦,找谁聊几句,说不定灵感在不经意间就来了。

9.站起来接电话 站着打电话借机舒展舒展筋骨,一边深呼吸,使富含氧气的血液流进大脑。这个简单的变化能让你几个小时都精两倍旺。

10.边沐浴边唱歌 淋浴时大声唱歌促进身体释放内啡呔,从而产生一种快乐与幸福的感觉,减轻压力。你越是心情不好的时候,越要唱出来,至于好不好听,跑没跑调,你管它呢!

11.交乐观的朋友 乐观.精力旺的朋友或同事人见人爱,他们积极的情绪总能感染周围的人。不仅要和聪明有才华的人交往,更要和那些充满热情,积极向上的人交朋友;跟一个悲观.喜欢抱怨的人一起呆上30分钟,你的能量就会被间接耗尽

12.大事化小 一口气吃不成胖子!不要总想着把某项大工程一气做完,结果自己累得趴下了。不妨把大工程拆成若干个小工程,一样一样地做,时不时休息一下,这样,既保持体力,又能提高工作效率,最终还能加快工作进度。

13.锻炼背部 你有没发现"背多分"型的男人往往受到殊遇,不仅如此,强壮的背部能让你工作起来比别人更轻松,不觉得太累。锻炼背部最有效的方法是用划桨器,注意姿势要正确;脚放平,膝盖微曲,双桨恰到好处地停在胸部。

14.打坐 早晨睡眼惺松,先不忙爬起来,舒舒服服地坐在床上坐着,挺直后背,闭上双眼,快速地用鼻子呼气和吸气,嘴巴微闭。(这个胸部练习应当像拉风箱一样,快速而机械地进行)

15.每天运动 哪怕你再忙,也要坚持锻炼,或跑步或键步走或游泳。你要是对自己体力过于自信,以为年轻就是本钱,不会那么轻易倒下,有人也许会跟你急。

转载
分享

2010年9月17日星期五

如何制作精美的PDF文档


网上的小说,有许多都是TXT格式的,当然其它格式的,也可以制作成PDF



把制成的PDF文件,导入6寸屏的电子阅读器,可长时间阅读,非常过瘾。



有些电子阅读器没有好看的字体,甚至对中文支持都成问题,比如kindle3,官方原件对中文支持并不完美,会有许多字体显示成口。这时候制作PDF就更加必要了。



制作雅黑字体的中文PDF文件,步骤如下:

1、安装虚拟打印PDF驱动。我用的是DOpdf,免费,下载地址在www.dopdf.com

2、打开打印机服务器属性配置界面。就在"设备与打印机"中,就有这一项,看清楚,是"打印服务器属性",创建新表单,设计6寸屏的具体大小,我设置为"宽9.00cm,高11.5CM",6寸屏的似乎是这么大。其它屏幕大小,可到网上查看自己设备的规格,然后去设置。

另存起个新名字,我命名为kindle

3、打开一个需要打印的文件, 比如新下载的一个TXT小说,先进行页面设置,选择纸张大小为"kindle",就是刚建立的那个新表单

4、然后回到文档,再按 ctrl+P,弹出打印提示。最关键的一步来了,看到有个首选项了吗?

点开首选项,有个预设大小,这儿的值,填的一定要小于上面的屏幕大小。比如可填 "宽度87,高度110",这是最关键的一步。



原来帮老婆设置的时候,怎么搞都不对路,就是因为两处设置都一样的数值,这样打印,肯定会有错行,或预留过多空白。一定要把此处设置的数值,尽量接近但小于真实屏幕大小。



OK,下面点确定,在后面的输入目录中,选择固定输出目录,然后选择内嵌字体(内嵌雅黑字体)就直接打印了。完成后传到kindle,一切完美。

选择把目录下的30多个文件,全部打印,一次打印完成,全是内嵌雅黑字体的PDF,效果非常好。



2010年9月15日星期三

QQ的云输入法很好用


入法,可以支持五笔或拼音



javascript:(function(q){!!q?q.toggle():(function(d,j){j=d.createElement('script');j.src='//ime.qq.com/fcgi-bin/getjs';j.setAttribute('ime-cfg','lt=2');d.getElementsByTagName('head')[0].appendChild(j)})(document)})(window.QQWebIME)



将上面那段代码,收藏起来,以后需要输入法的时候,直接打开就可以用

2010年9月9日星期四

无日志恢复数据库


无数据库日志文件恢复数据库方法两则
数据库日志文件的误删或别的原因引起数据库日志的损坏

方法一

1.新建一个同名的数据库

2.再停掉sql server(注意不要分离数据库)

3.用原数据库的数据文件覆盖掉这个新建的数据库

4.再重启sql server

5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)

6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
数据库的脚本创建一个新的数据库,并将数据导进去就行了.

USE MASTER
GO

SP_CONFIGURE `ALLOW UPDATES`,1 RECONFIGURE WITH OVERRIDE
GO

UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME=`置疑的数据库名`
Go

sp_dboption `置疑的数据库名`, `single user`, `true`
Go

DBCC CHECKDB(`置疑的数据库名`)
Go

update sysdatabases set status =28 where name=`置疑的数据库名`
Go

sp_configure `allow updates`, 0 reconfigure with override
Go

sp_dboption `置疑的数据库名`, `single user`, `false`
Go

方法二

事情的起因
昨天,系统管理员告诉我,我们一个内部应用数据库所在的磁盘空间不足了。我注意到数据库事件日志文件XXX_Data.ldf文件已经增长到了3GB,于是我决意缩小这个日志文件。经过收缩数据库等操作未果后,我犯了一个自进入行业以来的最大最愚蠢的错误:竟然误删除了这个日志文件!后来我看到所有论及数据库恢复的文章上都说道:"无论如何都要保证数据库日志文件存在,它至关重要",甚至微软甚至有一篇KB文章讲如何只靠日志文件恢复数据库的。我真是不知道我那时候是怎么想的?!

这下子坏了!这个数据库连不上了,企业管理器在它的旁边写着"(置疑)"。而且最要命的,这个数据库从来没有备份了。我唯一找得到的是迁移半年前的另外一个数据库服务器,应用倒是能用了,但是少了许多记录、表和存储过程。真希望这只是一场噩梦!

没有效果的恢复步骤
附加数据库
_Rambo讲过被删除日志文件中不存在活动日志时,可以这么做来恢复:

1,分离被置疑的数据库,可以使用sp_detach_db
2,附加数据库,可以使用sp_attach_single_file_db

但是,很遗憾,执行之后,SQL Server质疑数据文件和日志文件不符,所以无法附加数据库数据文件。

DTS数据导出
不行,无法读取XXX数据库,DTS Wizard报告说"初始化上下文发生错误"。

紧急模式
怡红公子讲过没有日志用于恢复时,可以这么做:

1,把数据库设置为emergency mode

2,重新建立一个log文件

3,把SQL Server 重新启动一下

4,把应用数据库设置成单用户模式

5,做DBCC CHECKDB

6,如果没有什么大问题就可以把数据库状态改回去了,记得别忘了把系统表的修改选项关掉


我实践了一下,把应用数据库的数据文件移走,重新建立一个同名的数据库XXX,然后停掉SQL服务,把原来的数据文件再覆盖回来。之后,按照怡红公子的步骤走。

但是,也很遗憾,除了第2步之外,其他步骤执行非常成功。可惜,重启SQL Server之后,这个应用数据库仍然是置疑!

不过,让我欣慰的是,这么做之后,倒是能够Select数据了,让我大出一口气。只不过,组件使用数据库时,报告说:"发生错误:-2147467259,未能在数据库 `XXX` 中运行 BEGIN TRANSACTION,因为该数据库处于回避恢复模式。"


最终成功恢复的全部步骤
设置数据库为紧急模式
停掉SQL Server服务;

把应用数据库的数据文件XXX_Data.mdf移走;

重新建立一个同名的数据库XXX;

停掉SQL服务;

把原来的数据文件再覆盖回来;

运行以下语句,把该数据库设置为紧急模式;

运行"Use Master

Go

sp_configure `allow updates`, 1

reconfigure with override

Go"

执行结果:

DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

已将配置选项 `allow updates` 从 0 改为 1。请运行 RECONFIGURE 语句以安装。


接着运行"update sysdatabases set status = 32768 where name = `XXX`"

执行结果:

(所影响的行数为 1 行)


重启SQL Server服务;

运行以下语句,把应用数据库设置为Single User模式;

运行"sp_dboption `XXX`, `single user`, `true`"

执行结果:

命令已成功完成。


ü 做DBCC CHECKDB;

运行"DBCC CHECKDB(`XXX`)"

执行结果:

`XXX` 的 DBCC 结果。

`sysobjects` 的 DBCC 结果。

对象 `sysobjects` 有 273 行,这些行位于 5 页中。

`sysindexes` 的 DBCC 结果。

对象 `sysindexes` 有 202 行,这些行位于 7 页中。

`syscolumns` 的 DBCC 结果。

………


ü 运行以下语句把系统表的修改选项关掉;

运行"sp_resetstatus `XXX`

go

sp_configure `allow updates`, 0

reconfigure with override

Go"

执行结果:

在 sysdatabases 中更新数据库 `XXX` 的条目之前,模式 = 0,状态 = 28(状态 suspect_bit = 0),

没有更新 sysdatabases 中的任何行,因为已正确地重置了模式和状态。没有错误,未进行任何更改。

DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

已将配置选项 `allow updates` 从 1 改为 0。请运行 RECONFIGURE 语句以安装。


重新建立另外一个数据库XXX.Lost;

DTS导出向导
运行DTS导出向导;

复制源选择EmergencyMode的数据库XXX,导入到XXX.Lost;

选择"在SQL Server数据库之间复制对象和数据",试了多次,好像不行,只是复制过来了所有表结构,但是没有数据,也没有视图和存储过程,而且DTS向导最后报告复制失败;

所以最后选择"从源数据库复制表和视图",但是后来发现,这样总是只能复制一部分表记录;

于是选择"用一条查询指定要传输的数据",缺哪个表记录,就导哪个;

视图和存储过程是执行SQL语句添加的。


维护Sql Server中表的索引
在使用和创建数据库索引中经常会碰到一些问题,在这里可以采用一些另类的方法解决…

--第一步:查看是否需要维护,查看扫描密度/Scan Density是否为100%
declare @table_id int
set @table_id=object_id(`表名`)
dbcc showcontig(@table_id)

--第二步:重构表索引
dbcc dbreindex(`表名`,pk_索引名,100)

--重做第一步,如发现扫描密度/Scan Density还是小于100%则重构表的所有索引
--杨铮:并不一定能达100%。
dbcc dbreindex(`表名`,``,100)


SQL Server补丁安装常见问题
谁碰到问题就看看咯:)

一、补丁安装过程中常见问题


如果在安装补丁的时候遇到如下类似错误:

1、安装过程中出现"以前进行的程序创建了挂起的文件操作,运行安装程序前,必须重新启动",请按照下面步骤解决:

a、重启机器,再进行安装,如果发现还有该错误,请按下面步骤
b、在开始->运行中输入regedit
c、到HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Session Manager 位置
d、选择文件->倒出,保存
e、在右边窗口右击PendingFileRenameOperations,选择删除,然后确认
f、重启安装,问题解决

如果还有同样问题,请检查其它注册表中是否有该值存在,如有请删掉。

2、在安装SQL Server SP3,有时候会出现:无论用windows认证还是混和认证,都出现密码错误的情况,这时查看临时目录下的sqlsp.out,会发现以下描述:
[TCP/IP Sockets]Specified SQL server not found.
[TCP/IP Sockets]ConnectionOpen (Connect()).
其实这是SQL Server SP3的一个小bug,在安装sp3的时候,没有监听tcp/ip端口,可以按照以下步骤进行:

1、打开SQL server客户器网络实用工具和服务器网络工具,确保启用的协议中包含name pipe,并且位置在第一位.
2、确保[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/Client/ConnectTo]
`DSQUERY`=`DBNETLIB`.
如果没有,请自己建立
3、停止mssql.
4、进行安装.

这样就可以进行正确安装了。

二、SQL Server补丁版本的检查

SQL Server的补丁版本检查不如Windows 补丁版本检查直接,一个系统管理员,如果不了解SQL Server版本对应的补丁号,可能也会遇到一点麻烦,因此在这说明一下,通过这样的办法判别机器是安全的办法,不会对系统产生任何影响。
1、用Isql或者SQL查询分析器登录到SQL Server,如果是用Isql,请在cmd窗口输入isql -U sa,然后输入密码,进入;如果是用SQL查询分析器,请从程序中启动,输入sa和密码(也可以用windows验证)。
2、在ISQL中输入:
Select @@Version;
go

或者SQL查询分析器中输入(其实如果不想输入,只要打开帮助的关于就可以了:))
Select @@Version;
然后按执行;
这时会返回SQL的版本信息,如下:
Microsoft SQL Server 2000 - 8.00.760 (Intel X86) Dec 17 2002 14:22:05 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.0 (Build 2195: Service Pack 3)
其中的8.00.760就是SQL Server的版本和补丁号。对应关系如下:

8.00.194 -??????SQL Server 2000 RTM
8.00.384 -??????(SP1)
8.00.534 -??????(SP2)
8.00.760 -??????(SP3)

这样我们就能看到SQL Server的正确版本和补丁号了。

我们也可以用xp_msver看到更详细的信息

Sql Server数据库的备份和恢复措施
最常用的操作,新手们看看……

一、备份数据库

1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server
2、SQL Server组-->双击打开你的服务器-->双击打开数据库目录
3、选择你的数据库名称(如论坛数据库Forum)-->然后点上面菜单中的工具-->选择备份数据库
4、备份选项选择完全备份,目的中的备份到如果原来有路径和名称则选中名称点删除,然后点添加,如果原来没有路径和名称则直接选择添加,接着指定路径和文件名,指定后点确定返回备份窗口,接着点确定进行备份

二、还原数据库

1、打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server
2、SQL Server组-->双击打开你的服务器-->点图标栏的新建数据库图标,新建数据库的名字自行取
3、点击新建好的数据库名称(如论坛数据库Forum)-->然后点上面菜单中的工具-->选择恢复数据库
4、在弹出来的窗口中的还原选项中选择从设备-->点选择设备-->点添加-->然后选择你的备份文件名-->添加后点确定返回,这时候设备栏应该出现您刚才选择的数据库备份文件名,备份号默认为1(如果您对同一个文件做过多次备份,可以点击备份号旁边的查看内容,在复选框中选择最新的一次备份后点确定)-->然后点击上方常规旁边的选项按钮
5、在出现的窗口中选择在现有数据库上强制还原,以及在恢复完成状态中选择使数据库可以继续运行但无法还原其它事务日志的选项。在窗口的中间部位的将数据库文件还原为这里要按照你SQL的安装进行设置(也可以指定自己的目录),逻辑文件名不需要改动,移至物理文件名要根据你所恢复的机器情况做改动,如您的SQL数据库装在D:/Program Files/Microsoft SQL Server/MSSQL/Data,那么就按照您恢复机器的目录进行相关改动改动,并且最后的文件名最好改成您当前的数据库名(如原来是bbs_data.mdf,现在的数据库是forum,就改成forum_data.mdf),日志和数据文件都要按照这样的方式做相关的改动(日志的文件名是*_log.ldf结尾的),这里的恢复目录您可以自由设置,前提是该目录必须存在(如您可以指定d:/sqldata/bbs_data.mdf或者d:/sqldata/bbs_log.ldf),否则恢复将报错
6、修改完成后,点击下面的确定进行恢复,这时会出现一个进度条,提示恢复的进度,恢复完成后系统会自动提示成功,如中间提示报错,请记录下相关的错误内容并询问对SQL操作比较熟悉的人员,一般的错误无非是目录错误或者文件名重复或者文件名错误或者空间不够或者数据库正在使用中的错误,数据库正在使用的错误您可以尝试关闭所有关于SQL窗口然后重新打开进行恢复操作,如果还提示正在使用的错误可以将SQL服务停止然后重起看看,至于上述其它的错误一般都能按照错误内容做相应改动后即可恢复

三、收缩数据库

一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大
1、设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如论坛数据库Forum)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择"简单",然后按确定保存
2、在当前数据库上点右键,看所有任务中的收缩数据库,一般里面的默认设置不用调整,直接点确定
3、收缩数据库完成后,建议将您的数据库属性重新设置为标准模式,操作方法同第一点,因为日志在一些异常情况下往往是恢复数据库的重要依据

四、设定每日自动备份数据库

强烈建议有条件的用户进行此操作!
1、打开企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器
2、然后点上面菜单中的工具-->选择数据库维护计划器
3、下一步选择要进行自动备份的数据-->下一步更新数据优化信息,这里一般不用做选择-->下一步检查数据完整性,也一般不选择
4、下一步指定数据库维护计划,默认的是1周备份一次,点击更改选择每天备份后点确定
5、下一步指定备份的磁盘目录,选择指定目录,如您可以在D盘新建一个目录如:d:/databak,然后在这里选择使用此目录,如果您的数据库比较多最好选择为每个数据库建立子目录,然后选择删除早于多少天前的备份,一般设定4-7天,这看您的具体备份要求,备份文件扩展名一般都是bak就用默认的
6、下一步指定事务日志备份计划,看您的需要做选择-->下一步要生成的报表,一般不做选择-->下一步维护计划历史记录,最好用默认的选项-->下一步完成
7、完成后系统很可能会提示Sql Server Agent服务未启动,先点确定完成计划设定,然后找到桌面最右边状态栏中的SQL绿色图标,双击点开,在服务中选择Sql Server Agent,然后点击运行箭头,选上下方的当启动OS时自动启动服务
8、这个时候数据库计划已经成功的运行了,他将按照您上面的设置进行自动备份

修改计划:
1、打开企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->管理-->数据库维护计划-->打开后可看到你设定的计划,可以进行修改或者删除操作

五、数据的转移(新建数据库或转移服务器)

一般情况下,最好使用备份和还原操作来进行转移数据,在特殊情况下,可以用导入导出的方式进行转移,这里介绍的就是导入导出方式,导入导出方式转移数据一个作用就是可以在收缩数据库无效的情况下用来减小(收缩)数据库的大小,本操作默认为您对SQL的操作有一定的了解,如果对其中的部分操作不理解,可以咨询动网相关人员或者查询网上资料
1、将原数据库的所有表、存储过程导出成一个SQL文件,导出的时候注意在选项中选择编写索引脚本和编写主键、外键、默认值和检查约束脚本选项
2、新建数据库,对新建数据库执行第一步中所建立的SQL文件
3、用SQL的导入导出方式,对新数据库导入原数据库中的所有表内容

利用数据库日志恢复数据到时间点的操作
由于不正常的数据丢失,而又不想使用备份数据还原,只要原来有备份且当前日志保存完好,可以采用这个方法试试,说不定可挽回损失……

1,如果误操作之前存在一个全库备份(或已有多个差异备份或增量备份),首先要做的事就是进
进行一次日志备份(如果为了不让日志文件变大而置trunc. log on chkpt.选项为1那你就死翘了)
backup log dbName to disk=`fileName`
2,恢复一个全库备份,注意需要使用with norecovery,如果还有其他差异或增量备份,则逐个恢

restore database dbName from disk=`fileName` with norecovery
3,恢复最后一个日志备份即刚做的日志备份,指定恢复时间点到误操作之前的时刻
restore log dbName from disk=`fileName`
with stopat=`date_time`

以上这些操作都可以在SQL SERVER企业管理器里完成,难度不大。。。

当然,如果误操作是一些不记日志的操作比如truncate table,select into等操作,那么是无法利
用上述方法来恢复数据的...

SQL Server2000数据库文件损坏时如何恢复
出现这样的问题是比较严重的了,能否修复只能看你的运气……

SQL Server2000中,如果数据库文件(非系统数据库文件)遇到错误的时候,仅适用于非master,msdb的数据库。

说明如下:

1 建一个测试数据库test(数据库类型为完全)
2 建一个表,插入点记录
create table a(c1 varchar(2))
go
insert into a values(`aa`)
go
insert into a values(`bb`)
go
3 作完全备份,到文件test_1.bak
4 在作一点修改
insert into a values(`cc`)
go
create table b(c1 int)
go
insert into b values(1)
go
insert into b values(2)
go
5 shutdown 数据库服务器
6 用ultraedit编辑数据库文件test_data.mdf,随便修改点字节内容,相当于数据库遭到致命的损坏。
7 启动数据库,并且运行企业管理器,点开数据库,看到test变成灰色,而且显示置疑。
8 运行isql -SLocalhost -Usa -P
1> backup log test TO DISK=`D:Program FilesMicrosoft SQL ServerMSSQLBACKUP
est_2.bak` WITH NO_TRUNCATE
2>go
已处理 2 页,这些页属于数据库 `test` 的文件 `TEST_Log`(位于文件 1 上)。
BACKUP LOG 操作成功地处理了 2 页,花费了 0.111 秒(0.087 MB/秒)。

9 进行恢复最老的完全备份
1> RESTORE DATABASE test FROM DISK=`D:Program FilesMicrosoft SQL ServerMSSQL
BACKUP est_1.bak` WITH NORECOVERY
2> go
已处理 96 页,这些页属于数据库 `test` 的文件 `TEST_Data`(位于文件 1 上)。
已处理 1 页,这些页属于数据库 `test` 的文件 `TEST_Log`(位于文件 1 上)。
RESTORE DATABASE 操作成功地处理了 97 页,花费了 0.107 秒(7.368 MB/秒)。

10 恢复最近的日志
1> RESTORE LOG test FROM DISK=`D:Program FilesMicrosoft SQL ServerMSSQLBACKU
P est_2.bak` WITH RECOVERY
2> go
已处理 2 页,这些页属于数据库 `test` 的文件 `TEST_Log`(位于文件 1 上)。
RESTORE LOG 操作成功地处理了 2 页,花费了 0.056 秒(0.173 MB/秒)。




存储过程编写经验和优化措施
经验之谈,看看……

一、适合读者对象:数据库开发程序员,数据库的数据量很多,涉及到对SP(存储过程)的优化的项目开发人员,对数据库有浓厚兴趣的人。  

  二、介绍:在数据库的开发过程中,经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用SP来封装数据库操作。如果项目的SP较多,书写又没有一定的规范,将会影响以后的系统维护困难和大SP逻辑的难以理解,另外如果数据库的数据量大或者项目对SP的性能要求很,就会遇到优化的问题,否则速度有可能很慢,经过亲身经验,一个经过优化过的SP要比一个性能差的SP的效率甚至高几百倍。  

  三、内容:  

  1、开发人员如果用到其他库的Table或View,务必在当前库中建立View来实现跨库操作,最好不要直接使用"databse.dbo.table_name",因为sp_depends不能显示出该SP所使用的跨库table或view,不方便校验。  

  2、开发人员在提交SP前,必须已经使用set showplan on分析过查询计划,做过自身的查询优化检查。  

  3、高程序运行效率,优化应用程序,在SP编写过程中应该注意以下几点:   

  a)SQL的使用规范:

   i. 尽量避免大事务操作,慎用holdlock子句,提高系统并发能力。

   ii. 尽量避免反复访问同一张或几张表,尤其是数据量较大的表,可以考虑先根据条件提取数据到临时表中,然后再做连接。

   iii. 尽量避免使用游标,因为游标的效率较差,如果游标操作的数据超过1万行,那么就应该改写;如果使用了游标,就要尽量避免在游标循环中再进行表连接的操作。

   iv. 注意where字句写法,必须考虑语句顺序,应该根据索引顺序、范围大小来确定条件子句的前后顺序,尽可能的让字段顺序与索引顺序相一致,范围从大到小。

   v. 不要在where子句中的"="左边进行函数、算术运算或其他表达式运算,否则系统将可能无法正确使用索引。

   vi. 尽量使用exists代替select count(1)来判断是否存在记录,count函数只有在统计表中所有行数时使用,而且count(1)比count(*)更有效率。

   vii. 尽量使用">=",不要使用">"。

   viii. 注意一些or子句和union子句之间的替换

   ix. 注意表之间连接的数据类型,避免不同类型数据之间的连接。

   x. 注意存储过程中参数和数据类型的关系。

   xi. 注意insert、update操作的数据量,防止与其他应用冲突。如果数据量超过200个数据页面(400k),那么系统将会进行锁升级,页级锁会升级成表级锁。   

  b)索引的使用规范:

   i. 索引的创建要与应用结合考虑,建议大的OLTP表不要超过6个索引。

   ii. 尽可能的使用索引字段作为查询条件,尤其是聚簇索引,必要时可以通过index index_name来强制指定索引

   iii. 避免对大表查询时进行table scan,必要时考虑新建索引。

   iv. 在使用索引字段作为条件时,如果该索引是联合索引,那么必须使用到该索引中的第一个字段作为条件时才能保证系统使用该索引,否则该索引将不会被使用。

   v. 要注意索引的维护,周期性重建索引,重新编译存储过程。  

  c)tempdb的使用规范:

   i. 尽量避免使用distinct、order by、group by、having、join、cumpute,因为这些语句会加重tempdb的负担。

   ii. 避免频繁创建和删除临时表,减少系统表资源的消耗。

   iii. 在新建临时表时,如果一次性插入数据量很大,那么可以使用select into代替create table,避免log,提高速度;如果数据量不大,为了缓和系统表的资源,建议先create table,然后insert。

   iv. 如果临时表的数据量较大,需要建立索引,那么应该将创建临时表和建立索引的过程放在单独一个子存储过程中,这样才能保证系统能够很好的使用到该临时表的索引。

    v. 如果使用到了临时表,在存储过程的最后务必将所有的临时表显式删除,先truncate table,然后drop table,这样可以避免系统表的较长时间锁定。

    vi. 慎用大的临时表与其他大表的连接查询和修改,减低系统表负担,因为这种操作会在一条语句中多次使用tempdb的系统表。  

  d)合理的算法使用:   

  根据上面已提到的SQL优化技术和ASE Tuning手册中的SQL优化内容,结合实际应用,采用多种算法进行比较,以获得消耗资源最少、效率最高的方法。具体可用ASE调优命令:set statistics io on, set statistics time on , set showplan on 等

三国人物志

偶然间看到的赞叹三国人物的诗文,来过莫错过!超豪放派!

赞叹刘备诗:
运筹决算有神功,二虎还须逊一龙。初出便能垂伟绩,自应分鼎在孤穷。

伤人饿虎缚体宽,董卓丁原血未干。玄德既知能啖父,争如留取害曹瞒?

勉从虎穴暂趋身,说破英雄惊杀人。巧借闻雷来掩饰,随机应变信如神。

束兵秣马去匆匆,心念天言衣带中。撞破铁笼逃虎豹,顿开金锁走蛟龙。

当时手足似瓜分,信断音稀杳不闻。今日君臣重聚义,正如龙虎会风云。

曹公屈指从头数:天下英雄独使君。髀肉复生犹感叹,争教寰字不三分?

老去花残春日暮,宦游偶至檀溪路;停骖遥望独徘徊,眼前零落飘红絮。
暗想咸阳火德衰,龙争虎斗交相持;襄阳会上王孙饮,坐中玄德身将危。
逃生独出西门道,背后追兵复将到。一川烟水涨檀溪,急叱征骑往前跳。
马蹄蹄碎青玻璃,天风响处金鞭挥。耳畔但闻千骑走,波中忽见双龙飞。
西川独霸真英主,坐下龙驹两相遇。檀溪溪水自东流,龙驹英主今何处!
临流三叹心欲酸,斜阳寂寂照空山;三分鼎足浑如梦,踪迹空留在世间。

曹操军中飞虎出,赵云怀内小龙眠。无由抚慰忠臣意,故把亲儿掷马前。

宝剑落时山石断,金环响处火光生,两朝旺气皆天数。从此乾坤鼎足成。

吴蜀成婚此水浔,明珠步障屋黄金。谁知一女轻天下,欲易刘郎鼎峙心。

蜀主窥吴向三峡,崩年亦在永安宫。翠华想像空山外,玉殿虚无野寺中。
古庙杉松巢水鹤,岁时伏腊走村翁。武侯祠屋长邻近,一体君臣祭祀同。

赞叹诸葛亮诗:
襄阳城西二十里,一带高冈枕流水:高冈屈曲压云根,流水潺潺飞石髓;
势若困龙石上蟠,形如单凤松阴里;柴门半掩闭茅庐,中有高人卧不起。
修竹交加列翠屏,四时篱落野花馨;床头堆积皆黄卷,座上往来无白丁;
叩户苍猿时献果,守门老鹤夜听经;囊里名琴藏古锦,壁间宝剑挂七星。
庐中先生独幽雅,闲来亲自勤耕稼:专待春雷惊梦回,一声长啸安天下。

一天风雪访贤良,不遇空回意感伤。冻合溪桥山石滑,寒侵鞍马路途长。
当头片片梨花落,扑面纷纷柳絮狂。回首停鞭遥望处,烂银堆满卧龙冈。

身未升腾思退步,功成应忆去时言。只因先主丁宁后,星落秋风五丈原。

高皇手提三尺雪,芒砀白蛇夜流血;平秦灭楚入咸阳,二百年前几断绝。
大哉光武兴洛阳,传至桓灵又崩裂;献帝迁都幸许昌,纷纷四海生豪杰:
曹操专权得天时,江东孙氏开鸿业;孤穷玄德走天下,独居新野愁民厄。
南阳卧龙有大志,腹内雄兵分正奇;只因徐庶临行语,茅庐三顾心相知。
先生尔时年三九,收拾琴书离陇亩;先取荆州后取川,大展经纶补天手;
纵横舌上鼓风雷,谈笑胸中换星斗;龙骧虎视安乾坤,万古千秋名不朽!

博望相持用火攻,指挥如意笑谈中。直须惊破曹公胆,初出茅庐第一功!

一天浓雾满长江,远近难分水渺茫。骤雨飞蝗来战舰,孔明今日伏周郎。

七星坛上卧龙登,一夜东风江水腾。不是孔明施妙计,周郎安得逞才能?

周瑜决策取荆州,诸葛先知第一筹。指望长江香饵稳,不知暗里钓鱼钩。

卧龙南阳睡未醒,又添列曜下舒城。苍天既已生公瑾,尘世何须出孔明!

功盖三分国,名成八阵图。江流石不转,遗恨失吞吴。

五月驱兵入不毛,月明泸水瘴烟高。誓将雄略酬三顾,岂惮征蛮七纵劳。

羽扇纶巾拥碧幢,七擒妙策制蛮王。至今溪洞传威德,为选高原立庙堂。

兵马出西秦,雄才敌万人。轻摇三寸舌,骂死老奸臣。

瑶琴三尺胜雄师,诸葛西城退敌时。十五万人回马处,土人指点到今疑。

孔明妙算胜孙庞,耿若长星照一方。进退行兵神莫测,陈仓道口斩王双。

伏弩齐飞万点星,木门道上射雄兵。至今剑阁行人过,犹说军师旧日名。

谷口风狂烈焰飘,何期骤雨降青霄。武侯妙计如能就,安得山河属晋朝!

长星昨夜坠前营,讣报先生此日倾。虎帐不闻施号令,麟台惟显著勋名。
空余门下三千客,辜负胸中十万兵。好看绿阴清昼里,于今无复雅歌声!

先生晦迹卧山林,三顾那逢圣主寻。鱼到南阳方得水,龙飞天汉便为霖。
托孤既尽殷勤礼,报国还倾忠义心。前后出师遗表在,令人一览泪沾襟。

拨乱扶危主,殷勤受托孤。英才过管乐,妙策胜孙吴。
凛凛《出师表》,堂堂八阵图。如公全盛德,应叹古今无!

诸葛先机识魏延,已知日后反西川。锦囊遗计人难料,却见成功在马前。

丞相祠堂何处寻,锦官城外柏森森。映阶碧草自春色,隔叶黄鹏空好音。
三顾频烦天下计,两朝开济老臣心。出师未捷身先死,长使英雄泪满襟!

诸葛大名垂宇宙,宗臣遗像肃清高。三分割据纡筹策,万古云霄一羽毛。
伯仲之间见伊吕,指挥若定失萧曹。运移汉祚终难复,志决身歼军务劳。

数万阴兵绕定军,致令钟会拜灵神。生能决策扶刘氏,死尚遗言保蜀民。

鱼鸟犹疑畏简书,风云长为护储胥。徒令上将挥神笔,终见降王走传车。
管乐有才真不忝,关张无命欲何如!他年锦里经祠庙,梁父吟成恨有余!

赞叹曹操诗:
曹操奸雄世所夸,曾将吕氏杀全家。如今阖户逢人杀,天理循环报不差。

十万貔貅十万心,一人号令众难禁。拔刀割发权为首,方见曹瞒诈术深 。

吁嗟帝胄势孤穷,全仗分兵劫寨功。争奈牙旗折有兆,老天何故纵奸雄?

曹操奸雄不可当,一时诡计中周郎。蔡张卖主求生计,谁料今朝剑下亡!

三马同槽事可疑,不知已植晋根基。曹瞒空有奸雄略,岂识朝中司马师?

邺则邺城水漳水,定有异人从此起:雄谋韵事与文心,君臣兄弟而父子;
英雄未有俗胸中,出没岂随人眼底?功首罪魁非两人,遗臭流芳本一身;
文章有神霸有气,岂能苟尔化为群?横流筑台距太行,气与理势相低昂;
安有斯人不作逆,小不为霸大不王?霸王降作儿女鸣,无可奈何中不平;
向帐明知非有益,分香未可谓无情。呜呼!
古人作事无巨细,寂寞豪华皆有意;书生轻议冢中人,冢中笑尔书生气!

赞叹关羽、张飞诗:
英雄露颖在今朝,一试矛兮一试刀。初出便将威力展,三分好把姓名标。

威镇乾坤第一功,辕门画鼓响冬冬。云长停盏施英勇,酒尚温时斩华雄。

汉朝天数当桓灵,炎炎红日将西倾。奸臣董卓废少帝,刘协懦弱魂梦惊。
曹操传檄告天下,诸侯奋怒皆兴兵。议立袁绍作盟主,誓扶王室定太平。
温侯吕布世无比,雄才四海夸英伟。护躯银铠砌龙鳞,束发金冠簪雉尾。
参差宝带兽平吞,错落锦袍飞凤起。龙驹跳踏起天风,画戟荧煌射秋水。
出关搦战谁敢当?诸侯胆裂心惶惶。踊出燕人张冀德,手持蛇矛丈八枪。
虎须倒竖翻金线,环眼圆睁起电光。酣战未能分胜败,阵前恼起关云长。
青龙宝刀灿霜雪,鹦鹉战袍飞蛱蝶。马蹄到处鬼神嚎,目前一怒应流血。
枭雄玄德掣双锋,抖擞天威施勇烈。三人围绕战多时,遮拦架隔无休歇。
喊声震动天地翻,杀气迷漫牛斗寒。吕布力穷寻走路,遥望家山拍马还。
倒拖画杆方天戟,乱散销金五彩幡。顿断绒绦走赤兔,翻身飞上虎牢关。

挂印封金辞汉相,寻兄遥望远途还。马骑赤兔行千里,刀偃青龙出五关。
忠义慨然冲宇宙,英雄从此震江山。独行斩将应无敌,今古留题翰墨间。

长坂桥头杀气生,横枪立马眼圆睁。一声好似轰雷震,独退曹家百万兵。

长坂桥边怒气腾,一声虎啸退曹兵。今朝江上扶危主,青史应传万载名。

生获严颜勇绝伦,惟凭义气服军民。至今庙貌留巴蜀,社酒鸡豚日日春。

藐视吴臣若小儿,单刀赴会敢平欺。当年一段英雄气,尤胜相如在渑池。

夜半征鼙响震天,襄樊平地作深渊。关公神算谁能及,华夏威名万古传。

汉末才无敌,云长独出群:神威能奋武,儒雅更知文。
天日心如镜,《春秋》义薄云。昭然垂万古,不止冠三分。

人杰惟追古解良,士民争拜汉云长。桃园一日兄和弟,俎豆千秋帝与王。
气挟风雷无匹敌,志垂日月有光芒。至今庙貌盈天下,古木寒鸦几夕阳。

赤面秉赤心、骑赤兔追风,驰驱时无忘赤帝
青灯观青史、仗青龙偃月,隐微处不愧青天

安喜曾闻鞭督邮,黄巾扫尽佐炎刘。虎牢关上声先震,长坂桥边水逆流。
义释严颜安蜀境,智欺张�定中州。伐吴未克身先死,秋草长遗阆地愁。

赞叹赵云诗:
血染征袍透甲红,当阳谁敢与争锋!古来冲阵扶危主,只有常山赵子龙。

昔年救主在当阳,今日飞身向大江。船上吴兵皆胆裂,子龙英勇世无双!

昔日战长坂,威风犹未减。突阵显英雄,被围施勇敢。
鬼哭与神号,天惊并地惨。常山赵子龙,一身都是胆!

忆昔常山赵子龙,年登七十建奇功。独诛四将来冲阵,犹似当阳救主雄。

常山有虎将,智勇匹关张。汉水功勋在,当阳姓字彰。
两番扶幼主,一念答先皇。青史书忠烈,应流百世芳。

赞叹孙权诗:
驰骤龙驹气概多,二人并辔望山河。东吴西蜀成王霸,千古犹存驻马坡。

的卢当日跳檀溪,又见吴侯败合淝。退后着鞭驰骏骑,逍遥津上玉龙飞。

紫髯碧眼号英雄,能使臣僚肯尽忠。二十四年兴大业,龙盘虎踞在江东。

赞叹吕布、貂婵诗:
原是昭阳宫里人,惊鸿宛转掌中身,只疑飞过洞庭春。
按彻《梁州》莲步稳,好花风袅一枝新,画堂香暖不胜春。

红牙催拍燕飞忙,一片行云到画堂。眉黛促成游子恨,脸容初断故人肠。
榆钱不买千金笑,柳带何须百宝妆。舞罢隔帘偷目送,不知谁是楚襄王。

温侯神射世间稀,曾向辕门独解危。落日果然欺后羿,号猿直欲胜由基。
虎筋弦响弓开处,雕羽翅飞箭到时。豹子尾摇穿画戟,雄兵十万脱征衣。

洪水滔滔淹下邳,当年吕布受擒时:空余赤兔马千里,漫有方天戟一枝。
缚虎望宽今太懦,养鹰休饱昔无疑。恋妻不纳陈宫谏,枉骂无恩大耳儿。

赞叹周瑜诗:
魏吴争斗决雌雄,赤壁楼船一扫空。烈火初张照云海,周郎曾此破曹公。

山高月小水茫茫,追叹前朝割据忙。南士无心迎魏武,东风有意便周郎。

赤壁遗雄烈,青年有俊声。弦歌知雅意,杯酒谢良朋。
曾谒三千斛,常驱十万兵。巴丘终命处,凭吊欲伤情。

赞叹黄忠诗:
将军气概与天参,白发犹然困汉南。至死甘心无怨望,临降低首尚怀惭。
宝刀灿雪彰神勇,铁骑临风忆战酗。千古高名应不泯,长随孤月照湘潭。

苍头临大敌,皓首逞神威。力趁雕弓发,风迎雪刃挥。
雄声如虎吼,骏马似龙飞。献馘功勋重,开疆展帝畿。

老将说黄忠,收川立大功。重披金锁甲,双挽铁胎弓。
胆气惊河北,威名镇蜀中。临亡头似雪,犹自显英雄。

赞叹姜维诗:
妙算姜维不等闲,魏师受困铁笼间,庞涓始入马陵道,项羽初围九里山。

天水夸英俊,凉州产异才。系从尚父出,术奉武侯来。
大胆应无惧,雄心誓不回。成都身死日,汉将有余哀。

赞叹甘宁诗:
鼙鼓声喧震地来,吴师到处鬼神哀!百翎直贯曹家寨,尽说甘宁虎将才。

吴郡甘兴霸,长江锦幔舟。酬君重知已,报友化仇雠。
劫寨将轻骑,驱兵饮巨瓯。神鸦能显圣,香火永千秋。

赞叹华佗诗:
治病须分内外科,世间妙艺苦无多。神威罕及惟关将,圣手能医说华佗。

华佗仙术比长桑,神识如窥垣一方。惆怅人亡书亦绝,后人无复见青囊!

赞叹庞统诗:
赤壁鏖兵用火攻,运筹决策尽皆同。若非庞统连环计,公瑾安能立大功?

曹操征南日日忧,马腾韩遂起戈矛。凤雏一语教徐庶,正似游鱼脱钓钩。

古岘相连紫翠堆,士元有宅傍山隈。儿童惯识呼鸠曲,闾巷曾闻展骥才。
预计三分平刻削,长驱万里独徘徊。谁知天狗流星坠,不使将军衣锦回。

2010年9月7日星期二

如何让骗子大哭:教你怎么把骗子弄哭 1.收到骗子要你汇款的短信后先别忙著删除,看看他的卡号是什么银行的,并登陆此银行的网上营业厅,输入该骗子的卡号,密码随便填写,只要3次错误,此卡在24小时之间是不能进行任何的交易了(就是被冻 2.先查出这个手机号的城市,然后找到那个城市的同性恋交友网站,注册帐号,联系方式留下那个手机号码。 3.在当地的房屋出租网站发帖,市中心两室一厅,月租300,急出手。24小时开机,同样留下那个电话。 4.找一找当地移动的网站,登陆时有估计收短信一个选项是可以让移动公司给手


教你怎么把骗子弄哭
1.收到骗子要你汇款的短信后先别忙著删除,看看他的卡号是什么银行的,并登陆此银行的网上营业厅,输入该骗子的卡号,密码随便填写,只要3次错误,此卡在24小时之间是不能进行任何的交易了(就是被冻
2.先查出这个手机号的城市,然后找到那个城市的同性恋交友网站,注册帐号,联系方式留下那个手机号码。
3.在当地的房屋出租网站发帖,市中心两室一厅,月租300,急出手。24小时开机,同样留下那个电话。
4.找一找当地移动的网站,登陆时有估计收短信一个选项是可以让移动公司给手机发一个验证码的短信,然后不停地让移动公司发吧,估计收短信也够骗子喝一壶茶的啦。
5.某银行职员同样收到短信"请把钱汇到*账号上",就按照账号每次汇出1分钱,便从收款人账户扣掉2元,连续汇出大概1元多钱,这时,终于收到收款人发来信息:别再汇款了,已经扣掉200多了,你是内行吧!叫我们怎么生活呀!(汇款时选

"收款人支付手续费",每笔2元)
请你转发至你认识的群里,让大家都知道怎么对付骗子,快乐接力,看着都觉得爽,有机会一定一试为快