夕阳武士

2006年6月22日 #

刚装好的64位服务器发生一个严重问题

今天用远程桌面登录我的托管服务器。运行了sql server等不少程序。(习惯在服务器上做工作,速度快)

后来运行了regedit ,正在查找一个字符串。

我准备用任务管理器看看当前的任务,于是在cmd窗口下输入taskmgr

这下问题来了,服务器无法操作了,鼠标是等待状态。

断开,重新登录,部分窗口黑屏,还是无法操作。

用远程终端登录,(另一管理员用户)可以登录,然后用任务管理器杀刚才用户的进程,无法杀死。

用Taskkill命令,也无法杀死!

我想用重新启动来看看,很快断开了。

严重的问题出现了,服务器根本没有重启,但是也不能登录了!

ping一直能ping通,ftp、iis等都正常。

只能打电话叫机房帮我重启。等了半个小时,还没有重启。估计是技术员看我的机器能ping,以为没有问题吧,再打一次,终于重启了,好了。

还是不知道什么原因!不敢测试了。我自己没有用64位系统,没有环境做测试。

posted @ 2006-06-22 20:03 夕阳武士 阅读(309) 评论(2) 编辑

windows server 2003 r2 64位web服务器安装配置注意事项

昨天特意去机房安装64位系统,带了一个250G新硬盘去。为了减少断网的时间,首先把硬盘分好区,把许多数据也拷到一个分区里。

我用的是windows server 2003 r2英文大客户版,外加简体中文包。总共3个碟。实际上我只刻了2个CD碟,其它的都放到一张DVD里面了。cd碟太小了。

安装开始和32位的几乎是一样。但是在选择硬盘和分区里,竟然不认识以前的分区,64位系统在安装的时候不认32位系统的分区。

其它和32位的系统几乎是一样的。安装以后是全英文的系统。再安装语言包,设置区域属性,就变成中文的了。

关于这个简体中文版的64位系统,好像就是这样的安装方法,没有专门的简体中文版的,好像都是英文系统+语言包的形式。微软发布64位系统的时候,也只提到了为中国用户提供了中文语言包。

网上基本上也是英文大客户版。



装完这些以后,缺省是不带iis的,需要在控制面板添加/删除程序中增加组件。

装好iis以后,还需要.net 2.0包,注意要装64位版本的。同时也为了能在服务器上直接调试,干脆把visual studio 2005也装上。visual studio 2005没有特别的64位版本,它在64位系统下安装时,能自动识别和安装相应的内容。下面是界面。



到这一步就装好了.net 2.0框架组件。在iis中需要做相关设置。

然后在iis中添加网站,和32位系统下完全一样。但是我昨天却出了问题,浪费我半个小时。主要是我以前用32位系统的时候保存过相关的配置文件,我用配置文件里面的配置来添加网站,这样添加的网站可能某些配置并不兼容64位,我有一个网站就是不能运行,而且显示的是找不到服务器或者dns错误,让人十分费解。所以建议手动添加网站,反正效率差不多。

最后安装64位的sql server 2005,安装以后,可以直接附加sql server 2005 32位下创建的数据库文件。附加的时候会出现孤立用户,可以用下面的语句把孤立用户和数据库用户做关联:
sp_change_users_login 'update_one', 'test', 'test' 这样,就将服务器登录“test” 与Northwind 数据库用户“test”重新连接起来。

有了64位操作系统、64位iis 、64位.net 2.0、64位sql server 2005,这样,我们的64位web服务器就这样配置完成了。

至于性能到底如何,暂时无从比较,感觉快了些。有时间我会做一些测试。

总而言之,既然硬件配置已经达到64位,主要软件都有64位了,我们没有理由不用64位。

posted @ 2006-06-22 15:52 夕阳武士 阅读(3103) 评论(8) 编辑

64位系统下动网论坛数据库连接的问题


最近刚刚安装了windows server 2003 r2 64位系统,并且安装了sql server 2005 64位版本。别的网站基本上不用改什么就可以直接运行。但是动网论坛却一直报错:




修改conn.asp文件,打印错误出来
Sub ConnectionDatabase
    Dim ConnStr
    If IsSqlDataBase = 1 Then
        ConnStr = "Provider = Sqloledb; User ID = " & SqlUsername & "; Password = " & SqlPassword & "; Initial Catalog = " & SqlDatabaseName & "; Data Source = " & SqlLocalName & ";"
    Else
        ConnStr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath(MyDbPath & db)
    End If
    On Error Resume Next
    Set conn = Server.CreateObject("ADODB.Connection")
    conn.open ConnStr
    If Err Then
           Response.Write err.description
        err.Clear
        Set Conn = Nothing
        Response.Write "数据库连接出错,请检查连接字串。"'注释,需要把这几个字翻译成英文。
        err.Clear
        Response.End
    End If
End Sub

运行结果报错内容:未指定提供程序,也没有指派的默认提供程序。数据库连接出错,请检查连接字串。



看来这个连接串有问题,和64位系统无法兼容。但是我的asp.net程序都正常,和数据库连接正常。查找我的.net程序中连接串如下:
"Server=?????;Database=???;Uid=???;pwd=????;"

于是修改动网论坛conn.asp文件:
Sub ConnectionDatabase
 Dim ConnStr
 If IsSqlDataBase = 1 Then
     ConnStr = "PROVIDER=SQLOLEDB;DATA SOURCE="&SqlLocalName&";UID="&SqlUsername&";PWD="&SqlPassword&";DATABASE="&SqlDatabaseName
 Else
  ConnStr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath(MyDbPath & db)
 End If
 On Error Resume Next
 Set conn = Server.CreateObject("ADODB.Connection")
 conn.open ConnStr
 If Err Then
  err.Clear
  Set Conn = Nothing
  Response.Write "数据库连接出错,请检查连接字串。"'注释,需要把这几个字翻译成英文。
  err.Clear
  Response.End
 End If
End Sub

修改后运行正常:

posted @ 2006-06-22 13:24 夕阳武士 阅读(1201) 评论(2) 编辑

导航

统计信息

News

搜索

 
 

常用链接

随笔档案

相册

我的链接

最新评论