无法添加、更新或删除从MSX服务器上发起的作业(或其步骤或调度)

当修改、删除该作业的时候SQL SERVER提示错误如下:“错误14274:无法添加、更新或删除从MSX服务器上发起的作业(或其步骤或调度)。”

如果SQL Server服务器改过机器名, 管理是旧名称时建立的job的时候可能会遇到这个错误,可这样处理:
use msdb
select * from sysjobs

update sysjobs set originating_server=SEVER_NAME'
where job_id='JOB_ID


如果出错,不允许update,可以尝试先执行
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
再update,之后别忘记
SP_CONFIGURE 'ALLOW UPDATES',0 RECONFIGURE WITH OVERRIDE

手动启动WSUS服务器检测

执行wuauclt.exe /detectnow。此命令行选项将指示自动更新立即连接到WSUS服务器。

或者还可以尝试执行以下教本,强制系统在半小时内自动检查更新。

点击下载AU_ForceDetection.vbs

错误15023:当前数据库中已存在用户或角色

在迁移测试平台数据库的过程中发现,在两台服务器上运行的sql server 服务器之间迁移数据库的之后,会出现一个在源服务器上可以正常的用户在目的服务器上无法登录的情况。几经排常找到了原因与解决方法,因为这个问题与解决方法均比较复杂,所以把这个过程中的一些经验纪录下来与大家分享,希望能对大家以后的类似操作有所帮助。

首先介绍一下sql server中“登录”与“用户”的区别,“登录”用于用户身份验证,而数据库“用户”帐户用于数据库访问和权限验证。登录通过安全识别符 (SID) 与用户关联。将数据库恢复到其他服务器时,数据库中包含一组用户和权限,但可能没有相应的登录或者登录所关联的用户可能不是相同的用户。这种情况被称为存在“孤立用户”。 此时是不能通过新建登录或者是对同名登录授予对应数据库的“用户”权限来解决登录问题,因为SQL Server会报出“错误15023:当前数据库中已存在用户或角色”,为了解决这个问题,需要调用系统存储过程sp_change_users_login,具体用法如下:

Use Northwind
go
sp_change_users_login 'update_one', 'test', 'test'

其中Northwind为存在孤立用户的数据库,update_one是存储过程的参数,表示只处理一个用户,前一个test是“用户”,后一个test是“登录”,以上这个SQL表示将服务器登录“test”与 Northwind 数据库用户“test”重新连接起来。这样就可以正常使用数据库了。


以上是我的同事海涛的研究成果,贡献出来大家分享。

服务器存储空间不足,无法处理此命令

一台Windows 2003服务器通过文件共享方式访问此台服务器连接的光纤阵列,总是提示“服务器存储空间不足,无法处理此命令 (Not enough server storage is available to process this command)”,原来曾经遇到相同的错误提示,原因是安装了某些Windows更新之后服务器没有重启,如发炮制之后问题依旧,查日志发现有错误记录“事件ID 2011,服务器的配置参数“irps4tacksize”太小,无法让服务器使用本地设备。请增加此参数的值。”。

根据M$知识库http://support.microsoft.com/?kbid=177078的指引,创建键值HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\IRPstackSize,类型为DWORD,取值设置为0x32,重启之后问题解决。

两件事

1、通过我的网站访问日志发现学妹janeting的BLOG,感谢她将我的小站作为友情链接,俺也不能吝啬不是,特增加“平淡即是幸福

2、给tmssoftware的BUG REPORT尚未有回复,但是我已经按耐不住,于是借助Reflector的帮助,将有问题的CeAppointments类重写成MyCeAppointments,由于原作者将一些主要的函数都声明为internal,导致我只好用了一些取巧的方法,解决了NOTES字段写入时,中文变为问号的BUG。

至此我的日程系统与PDA/SmartPhone的同步小玩意基本完成,因为程序的专用性,就不放出来,以下只给出MyCeAppointments类的源程序供大家参考,我的修改位于a(ushort A_0, string A_1)和Open()两个方法中,没有注释别怪我,:)

下载MyCeAppointments.cs

BUG REPORT

升级完PDA之后,就开始研究怎么将公司的日程系统上的数据同步到PDA的日历中去,Microsoft Pocket PC 2003 SDK看得我有点晕,无意中在网上发现了TMS CETools for .NET,这个tmssoftware做控件确实很棒,CETools只是凤毛麟角,不过着实好用。

程序基本是完成了,后台用WebService做鉴权和数据传送,前台用C# + CETools直接写PDA对应的数据库,但是最后发现这个控件在处理含有中文的备注字段时有问题,用Reflector发现原来是使用了Encoding.ASCII.GetBytes造成的,直接导致中文变问号,于是用N年未用过的英文给tmssoftware写了一封BUG REPORT email,建议他们改用Encoding.Default.GetBytes,这样全世界的人民都皆大欢喜了。希望他们会理会我的邮件 EM213.gif

iPAQ 3850 PPC2002升级PPC 2003

手头上有个N久没有用过的iPAQ 3850,最近拿到一张EDGE卡,于是便翻出来继续玩玩。上网溜达,发现有人将利用iPAQ 3870的ROM将原有的操作系统PPC2002升级到了PPC2003英文版(现在依然没有适合iPAQ 38xx的中文版PPC2003),于是也想试一试。历时N个小时,在网上找个N个版本,都是升级了之后无论软启还是硬启,机器都无法启动,最后还是在eMule上找到了一个可用的版本,升级过程如下:

1、关闭Microsoft ActiveSync:在任务管理器中,中止wcescomm.exe进程;
2、由于直接升级ROM会导致Asset Tag和Serial丢失,所以需要修改一下固件文件nk.nb0,利用UltraEdit打开文件,在01ff000ah-01ff0020h和01ff0e00h-01ff0e16h地址段都填上机器的S/N,这个序号可以在机器背面的铭牌上找到,序号中每个字符中间要间隔一个ASCII值为0的字符,例如"4G23DWABCDEF"要输入为"4.G.2.3.D.W.A.B.C.D.E.F" ,"."代表ASCII值为0的字符,图例见后面贴图,序号后6位抹掉了
3、修改后保存文件
4、同时按住PDA的2+4+Power+Reset键,直至屏幕上出现“Remote USB Update”(这个界面如果要退出,直接Reset即可)
5、用USB数据线连接电脑和PDA
6、运行升级程序host11.exe,如果出错检查1、5步骤,还有就是升级文件是否和host11.exe放到了同一目录下,并且名称是nk.nb0
7、完成后host11.exe提示“Flash Done!”,PDA上出现“Please Disconnect Battery”后,硬启PDA:同时按住1+4+Power+Reset,之后再软启:按Reset即可
8、升级后PDA右下方有蓝牙标志(3870的升级包的后果),但不影响其他使用
9、英文版本输入中文的问题,安装CE-Star解决



其他提示:
1、某些网站下载的ROM(特别是官方升级包解压出来的ROM文件)用host11.exe升级最后快到100%的时候,会提示USB Connection Lost,这个一般是ROM文件最开头有类似“iPAQ 3800-CHS-1.20-1705---------”的文本,删除头32个字节的内容就可以用host11.exe升级了
2、升级ROM之后硬启、软启PDA都没有响应,一般都是ROM不匹配或者有问题,只要按住PDA的2+4+Power+Reset键,屏幕上能出现“Remote USB Update”就可以使用老版本的ROM恢复


相关下载:
3850 PPC 2003英文版ROM(其实是3870的ROM,升级前记得写入自己PDA的S/N)
3850 PPC 2002中文版ROM(官方最新的1.20版本)

XDM for X-Win32

想利用X-Win32管理一台Slackware的Linux服务器,按照网上经典文章在Linux做了以下配置:
1、修改/etc/X11/xdm/xdm-config,使用!注释:DisplayManager.requestPort: 0
2、修改/etc/X11/xdm/Xaccess,删除第一个#,去掉注释:#* # any host can get a login window
3、修改/etc/X11/xdm/Xservers,使用#注释::0 local /usr/X11R6/bin/X

但运行xdm -debug 1,检查运行情况,结果发现出错:
XDMCP socket creation failed, errno 97

解决方法,在/etc/X11/xdm/Xaccess增加一行:
LISTEN 0.0.0.0

运行xdm启动服务成功,默认使用UDP 177端口。

水晶报表无法安装II

还是上次提到的那个问题:一台Windows 2003 Enterprise Server,安装水晶报表10(Crystal Reports 10)时,在输入产品序列号界面无论如何输入,点击“下一步”都无响应,也没有任何消息提示框弹出(正常情况下输入错误应该是有提示的),导致无法安装。

当时采用命令行方式“msiexec /i CrystalReports10_NET_EmbeddedInstall.msi /q PIDKEY=产品序列号”安装成功,今天了解到了彻底的解决方法,删除注册表键值
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\DefaultAccessPermission,重新运行安装程序即可,据说该解决方案来自M$。

水晶报表无法安装

一台Windows 2003 Enterprise Server,安装水晶报表10(Crystal Reports 10)时,在输入产品序列号界面无论如何输入,点击“下一步”都无响应,也没有任何消息提示框弹出(正常情况下输入错误应该是有提示的),导致无法安装。

先尝试使用命令行安装,运行“msiexec /i CrystalReports10_NET_EmbeddedInstall.msi /q”,采用安静模式安装,发现安装成功,但是使用时提示“因为未能在分配的时间内获得免费许可证,所以Crystal Reports作业失败。可以直接从Crystal Decisions或通过Crystal Decisions在线商店购买更多的许可证。

寻觅N久之后,找到解决方法,先卸载水晶报表,重新运行“msiexec /i CrystalReports10_NET_EmbeddedInstall.msi /q PIDKEY=产品序列号”安装,成功搞定。


---以下【2005-09-16】添加---
今天了解到了彻底的解决方法,删除注册表键值
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\DefaultAccessPermission,重新运行安装程序即可,据说该解决方案来自M$。