再谈delphi XE的中间层应用服务器(其实任何语言开发的中间件)连接MS Sql Server数据库
步骤:
1、检查MS Sql Server数据库的默认端口1433(其实你也可以改端口)是否处于开放端口状态、是否处于监听状态
1.1、你数据库服务器:防火墙应当放开1433端口的入站规则和出站规则、后台云服务器的安全组应放开1433端口的进出。
1.2、telnet <sql200N服务器IP地址> 1433 ,检查服务器1433端口是否成功配置在进行监听!
或者:检查sql server 2000是否已启用并开放1433端口.(在sql2000服务器上) 方法,在你的中间件所在的服务器上: 开始-->运行-->打开-->执行 "cmd" 命令 -->执行 "netstat -na" 命令. 下面的IP 127.0.0.1 和 192.168.123.98 要用你数据库服务器的实际IP
看是否有无 TCP 127.0.0.1:1433 0.0.0.0:0 LISTENING TCP 192.168.123.98:1433 0.0.0.0:0 LISTENING 如果没有刚表明sql200N端口监听服务未启动
否则:开发时,会提示:服务器被积极拒绝!
2、检查sql2000 sp4补丁是否打好
2.1、这个非常关键:否则你是不能启用1433监听的:上面的步骤就白搭啦)
2.2、若在Windows Server 2008 R2 Enterprise SP1等其它版本下安装sql2000 sp4,一定要用SQL2000_ENT(即SQL2000的中文企业版先安装,其它版本比如SQL2000个人版在服务器操作系统下是打不起补丁的。SQL2000_ENT的安装必须用Setup.bat批处理文件来做,否则CD-Key找不到对应的模块)
3、检查 ”中间件“所在的服务器 与 数据库所在的服务器 之间是否互通
3.1、在数据库服务器上配置客户端访问所需的原生客户端库:Sql Server Native Client 10.0(10.0:对应SqlServer2000,11.0:对应SqlServer2008,或其它版本等),注意版本及其对应的版本库
3.2、最后: 进行测试:
4、如果你未用 成熟的中间件,而使用DataSnap的自己开发的中间层服务,会麻烦一些,具体参考:
4.1、https://blog.csdn.net/pulledup/article/details/90349183 TFDConnection 连接异地远程的sql2000数据库服务器:绝对行
4.2、https://blog.csdn.net/pulledup/article/details/92428064 delphi返回sql server数据库错误:连接繁忙导致另一个命令
4.3、https://blog.csdn.net/pulledup/article/details/80680127 FireDAC客户端连接mssql报错No peer with the interface with guid {9BB0BE5C-9D9E-485E-803D-999645CE1B8F} has
FireDAC的客户端库:
ADO的客户端库:
喜欢的话,就在下面点个赞、收藏就好了,方便看下次的分享: