(provider: TCP Provider, error: 0 – 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。)

.Net技术 码拜 10年前 (2015-05-11) 1472次浏览 0个评论

winform 插入本机数据库没问题,远程插入数据库数据量过大时会出现:
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。
未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接
 (provider: TCP Provider, error: 0 – 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。)

10分
什么是量过大的时候

如果你无法复现问题,那就无从查起

怀疑你在本机测试的时候只是测试了功能,而没有测试稳定性,也就是插入一次两次成功就算完了,根本没有每隔1秒插入1条,连续运行几小时测试过

检查数据库连接池是不是被占满了,每次连接之后记得close

10分
//创建监听SOCKET 
  socketListen = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); 
//设置SOCKET允许多个SOCKET访问同一个本地IP地址和端口号 
  socketListen.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);

然后记得关闭
socketSent.Shutdown(SocketShutdown.Both);
            socketSent.Close();

引用 1 楼 Z65443344 的回复:

什么是量过大的时候

如果你无法复现问题,那就无从查起

怀疑你在本机测试的时候只是测试了功能,而没有测试稳定性,也就是插入一次两次成功就算完了,根本没有每隔1秒插入1条,连续运行几小时测试过

检查数据库连接池是不是被占满了,每次连接之后记得close

本机数据库连接测试已经好多次了,没问题啊,而且我远程的数据库也就只有我自己在用。程序中唯一变化的就是在web.config本机数据库连接用的是connectionString=”Data Source=.  另一个用的是connectionString=”Data Source=192.168.0.111,1433

20分
连接测试好多次,代替不了稳定性测试

你每结束运行,连接池都会全部释放掉

而你实际使用的时候,是不存在”测试结束,程序关闭”一说的

引用 4 楼 Z65443344 的回复:

连接测试好多次,代替不了稳定性测试

你每结束运行,连接池都会全部释放掉

而你实际使用的时候,是不存在”测试结束,程序关闭”一说的

谢谢你的耐心回答


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明(provider: TCP Provider, error: 0 – 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。)
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!