Exception Details: System.InvalidOperationException: Internal connection fatal error

Source: Internet
Author: User

Exception Details: System.InvalidOperationException: Internal connection fatal error.

System:
The business system of a government department.
Environment:
Win2003 Enterprise Edition sp2,sql2000 Enterprise version sp4,iis6,.netframework (2003 system with its own)
Machine:
Number 1th machine Dell 1800 CPU TM 2.8G memory 2.5G SATA Hard Drive
Number 2nd machine Dell 2800 CPU TM 2.8G memory 1G SCSI Hard Drive
Number 3rd machine hp Cpu E5430 2.66g*2 memory 4g,scsi Hard Drive
Business Volume:
City + County Area A total of 9 databases, each database about 500 users. Concurrent access is about 30-50.
The system has gone through 3 stages.
First, the first use of number 1th machine, database and Web programs are on the 1th machine. 1-year system normal, slightly slow. The connection is easy to timeout.
Second, later added the number 2nd machine, the Web program in 1th, the database in the 2nd machine. 1.5 system is normal, the execution of long time Export report will appear timeout.
Three, 2 weeks before the purchase of 3rd machine, this is the Web program and database are placed on the 3rd machine, all software is the same.
This is frequent exception details: System.InvalidOperationException: Internal connection fatal error.
Probably in half a day, the business volume of time a few hours to come once, restart the server after normal.
View the database log file, which has "probably not enough memory" error prompts. At this point the system is viewed, the SQL process occupies 1.3G, and 1.5G free physical memory is available.

Question: This is strange, the program is not changed at all, the software is the same, including win2003,sql2000, patches.
It is also wrong to increase memory.

I also search on Google, many people say that the database connection is used without the reason of shutdown.
First I checked the program, the basic is closed, and secondly, the system runs for nearly 3 years, the memory is no problem, it is more memory, but there are problems.
Also, when I look at SQL Enterprise Manager-Management-current information-process information, I report low memory, but this is the system also has 1.5G of physical memory.

Recently tried to solve the method, mainly has the following several:
----------------------------------------------------
If SQL Server is on the same server as the IIS server, the IP address in the Web.config database connection string should be (local).
And can not be the actual static IP address of the machine, otherwise silly ado.net will faint.
Check for similar locations:
<add key= "connectionString" value= "SERVER=210.68.68.10;DATABASE=ABC; User id=abc; Password=abc "/>
Where the IP address of server is changed to (local) as follows:
<add key= "connectionString" value= "server= (local);D atabase=abc; User id=abc; Password=abc "/>

After you have modified it, you feel that this method is invalid.
----------------------------------------------------
Modify SQL Usage memory, change the original 4G to 1G

After the modification, there is no problem, it has been used for 7 hours
But this is a palliative, not the root of the solution, the advantages of the system did not play out
----------------------------------------------------
Installing the Win2003 and sql2005 64-bit versions
Completely solve the problem
----------------------------------------------------
Analysis Reason:
Win2003 and sql2000 32-bit versions of 4G memory support is not good, before the 4G memory is hung, so that resources can not be freed, modified 1G.
There may be a small number of database connections in the program that are not freed. But I think SQL should automatically recycle this resource.
64-bit version is the default support of more than 4G memory, NND, memory is also a burden.

Special Note:

1.32-bit win2003, the default does not support 4G memory, to modify the Boot.ini file to support more than 4G of memory

2. According to Microsoft experts, by using the 3GB switch will cause the database instability, if you want to use large memory on the direct use of 64bit system and install 64bit SQL Server.
For 32bit machines, a single process typically uses the memory to 1.6~1.7GB.

3. There are reports on the Internet that SqlServer2000 have problems with the support of multiple CPUs, even if the patch to SP4 is still not enough, you need to continue to play patches to kbxxxx. How much do I forget, you can check your eventlog, there should be this related SQL Server exception. (I think you've upgraded the database, no chance)

By the way:
The 1 way to do web,2 database may be wrong. Because, as I know, the database server is sensitive to the amount of memory in addition to its hard drive performance.
In addition, since you have multiple databases, and the original way to support the Web and database separation, then the database and the Web are placed in 3, is not particularly good way. There is a certain amount of competition between the two, such as the competition for disk read and write, or the remaining space for IIS log and DB backup. Separate the problem a little less, and sometimes the problem is better to judge-look at that server resource situation is a problem to know, such as the CPU high is which one.
4. Previously used is SQL authentication, requires a username and password, web.config data source is written in the IP address, is now used in Windows authentication, so the previous username and password are invalid, to be changed to user id= machine name; ntegrated security=true; "Providername=" System.Data.SqlClient, you can use the

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.