加入收藏 | 设为首页 | 会员中心 | 我要投稿 广州站长网 (https://www.020zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

老平台迁移过程中出现的MSSQL数据库接连问题

发布时间:2023-01-08 15:01:08 所属栏目:MsSql教程 来源:互联网
导读: 公司的一较老的平台因为更换服务器要进行迁移,在自己接手后因为该平台不怎么使用就没管过它,但近段时间因为要更换服务器,需要把该服务迁移到新服务器上去,在迁移的过程中出现了一些问题

公司的一较老的平台因为更换服务器要进行迁移,在自己接手后因为该平台不怎么使用就没管过它,但近段时间因为要更换服务器,需要把该服务迁移到新服务器上去,在迁移的过程中出现了一些问题。

该服务器因搭建较早,使用的是 win2003server,msserver2000的数据库,WEB服务器用的是resin2.1.13,新的服务器装的是win2008server,mserver2005,WEB服务器使用TOMCAT7,在数据库迁移过程中很顺利,没有发现什么问题,但发现启动了WEB之后没法访问,后来确定是WEB中的类对新的一些特性不支持。

没办法只能换成和原来resin版本一样的,配置也是用原来的,只是把web目录的路径改了一下,数据库的连接改了一下,想这样肯定没问题了,于是把WEB开启,页面没问题,登陆也没问题,但有些地方会报数据库连接错误

Caused by: java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 1 (""): 数据类型 0x38 未知。

在网上搜了一下,有的说是MSSERVER2000到MSSERVER2005升级过程中数据库的JDBC连接有变化,要用新的 数据库连接的JAR包,于是在微软的网官下载了一个:

当时还有一个问题比较奇怪,同一个数据库为什么有的地可以连接mssql数据库迁移,有的地不能连接呢,进到程序里查了一下才发现,原来同一个数据库用了两种不同的连接方式,一种JDBC,一种hibernate,怪不得连同一个库,有一个正常,有一个会出问题。

把微软官方的包下载了之后把 sqljdbc.jar文件拷贝到resin的lib目录下,并且把resin的配置文件中的数据库接接部分做了更改

原来:

jdbc/mssql

javax.sql.DataSource

更改后:

javax.sql.DataSource

重新启动WEB服务后,还是报错,提示数据库连接错误,查看错误提示,这次的提示比较明显

java.lang.UnsupportedOperationException: 此驱动程序不支持 Java Runtime Environment (JRE) 1.6 版。请使用支持 JDBC 4.0 的 sqljdbc4.jar 类库。

直接把原来放到resin的lib目录的sqljdbc.jar删除,把微软官方下载包里的sqljdbc4.jar放到 resin的lib目录下,后新启动 resin服务,WEB访问正常,数据库接接正常。

大功告成,收工!

over,over

(编辑:广州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!