5

Tôi đang phát triển một ứng dụng ASP.NET trong VS 2010 với phần phụ trợ SQL Server 2000 (Tôi biết, tôi biết ...)Lỗi kết nối SQL Server 2000 - Bắt tay trước khi đăng nhập?

Tôi đã làm việc tốt với thiết lập này cho phần lớn hơn của 3 cuối cùng tháng. Tuy nhiên, ngày hôm qua tôi đã áp dụng VS 2010 SP1 và bây giờ kết nối với cơ sở dữ liệu này gây ra các lỗi sau:

Connection Timeout Expired. The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement. This could be because the pre-login handshake failed or the server was unable to respond back in time. The duration spent while attempting to connect to this server was - [Pre-Login] initialization=72; handshake=44924

Hãy ghi nhớ rằng tôi đã thực hiện NO thay đổi một trong hai chuỗi kết nối hoặc SQL Server 2000 máy chủ/cơ sở dữ liệu. Vì vậy, phải có một lý do tại sao nó xảy ra kể từ khi bổ sung mới.

mục kết nối của tôi là khá vani với

conn.Open(); 
SqlCommand cmd = new SqlCommand(); 
cmd.Connection = conn; 
cmd.CommandText = sqlStatement; 
SqlDataReader dr = cmd.ExecuteReader(); 
resultData.Load(dr); 
dr.Close(); 
conn.Close(); 

Và chuỗi kết nối của tôi trông giống như

Data Source=192.168.1.200;Persist Security Info=false;Initial Catalog=MyDB;User Id=MyUser;Password=MyPW;Timeout=45; 

Bạn có thể thấy rằng tôi đã thực hiện thay đổi đối với thời gian chờ nhưng điều này đã không làm việc. Nhưng, một lần nữa, tôi không cần phải thực hiện bất kỳ thay đổi nào. Tôi chỉ áp dụng VS 2010 SP 1 ngày hôm qua, đó là sự thay đổi duy nhất. CỨU GIÚP!

+1

Bạn đã thử [this] (http://blog.sqlauthority.com/2009/05/21/sql-server-fix-error-provider-named-pipes-provider-error-40-could-not- open-a-connection-to-sql-server-microsoft-sql-server-lỗi/# comment-82996)? –

+0

Đề xuất tuyệt vời. Câu trả lời phải là một cái gì đó dọc theo những dòng này - nó phải là một thay đổi khách hàng địa phương đang gây ra điều này. Tuy nhiên, tôi đã thực hiện những thay đổi đó và nó không giải quyết được vấn đề. –

+0

Tham khảo bên dưới liên kết http://serverfault.com/questions/423013/sql-an-error-occurred-during-the-pre-login-handshake/423087 –

Trả lời

6

Tôi đã sửa lỗi này bằng cách mở cổng 1433 (SQL) trên tường lửa máy chủ.

+0

Câu trả lời hay !!!!!!!! ! – Eric

1

Tôi gặp vấn đề tương tự với bạn. Tôi đã giải quyết vấn đề này bằng cách cho phép kết nối giữa máy khách SQL và máy chủ lưu trữ SQL trong tường lửa. Và hoàn toàn, bạn có thể cấp quyền truy cập cổng 1433, đặc biệt được sử dụng cho SQL Server.

Các vấn đề liên quan