Dozens Of SQL Connections Remain Open On Web Server
I have a set of scripts that accesses a SQL2000 database on another server. After several days of investigating an extreme slow-down on my web server I did a netstat-a command and found DOZENS of connections to the SQL server still open. Here's just a small sample of this. Code:
in my main page i need to retreive record set from the database as well as search for products. but the recordsets i need to retrieve are located in a different table then the products i need to search. is this possible to do ?
how I might go about displaying all current open db connections in ASP, either for a particular web app/page or hopefully all of IIS ? We are having a few issues with IIS hanging and we feel that it is related to db connections that were opened and not closed. I would like to be able to write an ASP page that could show me the current amount of open db connections from IIS.
I need to do this from the IIS side not the SQL Server side. I can already see the number of sessions in SQL Server but I am more interested in trying to find asp pages which have opened a connection to some db and not cleaned up properly afterwards.
Is there a way to detect open recordset and connection objects easily? I have hundreds of pages of code making up this web application I wrote and I want to make sure I didn't leave any loose ends. Short of going page by page, connection by connection, I'd love to discover any issues a different way. Does anyone know of a strategy?
I've been cobbling together a rather complex web utility, and was wondering if there is a way to monitor the number of data connections and open recordsets currently being used by the server. I am using IIS5. I'm essentially looking for a tool that would help identify sloppy code by showing a list of currently open data connections or recordsets.
Many a page has ADO Connection objects that were opened but never closed. The Connection object allocates its own resources when it is opened. When the object goes out of scope without being explicitly closed, the resources ASP allocated for it are freed, but the resources it allocated on its own are not. These eventually clutter up the server and slow it down to a crawl.
My question is, is there a way to track down these orphaned resources and forcibly free them from ASP, without restarting IIS or the server? Or does one have to wait for the unused Connections to time out and release themselves? I know that good coding practice is best, but is there a temporary fix to tidy up these connections left open?
How can i maintain the values in the fields when the page refreshed on the selection of a combo. When i select a value from combo, the page goes refresh to fill the second combo but the values in the other fields goes remove. How can i avoid this.
I have a site on 1and1. The site has a simple login as well as other asp applications. This site uses an access DB. Last week all the scripts that accessed any database resulted in this error: Code:
I have a table which lists many documents preuploaded on the server (most are either PDF, RTF or Word documents). When the user click on the link to the document, it opens in its native program inside IE.
If the document is either rtf or word, when the user closes the document, the server pops up a dialog asking for the site userid and password (as if access to the site is required to publish files). I know the server is popping this dialog up because the program (word etc) is trying to work out if the changes to the document should be saved or discarded. How do I avoid this ?
Is there a way I can allow a user to open the document, make some changes and save the document back onto the server without knowing the site id and password ?
I would like to connect to another server and execute my query from my asp page. But how can I initiate the connection string to another server DB? For example Code:
ConnString = "dsn=abc;uid=xyz;pwd=123"
What will be the way to issue the connection string to another server? Using SQL Server 2000.
i want to run an application...from the intranet site a client presses a button and the application opens in the server...how can i do this ? any ideas ???
I have two servers is it possible to open a database connect on one server to access the database on the other. If so can anyone give me an example of the path.
I'm trying to make the following asp code work using a DNS-Less connection on a windows 2000 server running IIS and ODBC 4.0 driver.
The Access database (odbc_exmp.mdb) was made using Access 2002. The code works if I set up a DNS on the server under the ODBC drivers. What I'm I doing wrong and what do I change the code to, to make it work using DNS-Less connection? Code:
Right, which do you use? If your using DSNless, then STOP! It's SLOWING down your code and making it UGLY!!
Why? Lets look...
UGLY! Which looks better [vbs] "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("./data/vote.mdb") [/vbs] or [vbs] "DSN=databaseStuff" [/vbs]
Its also easier to manage and will cause less typing errors. Think about it, it makes sense!
SPEED Everytime you run a DSNless connection inside an ASP page the connection string needs to be verified,but a DSN connection is only verified when it is created! Meaning the DSN connection is indeed faster.
I am not sure what is wrong with this code. I have tested it at home, used in on previous webpages, and with previous employers. But I am getting this error at my current employers server: Code:
I've been using ASP.NET for a couple years now and I'm trying to fall back into ASP for a new position I've acquired...and I'm having a bit of trouble remembering. I'm running to a problem where the basic logic is as follows:
Query
Do While Not rs.EOF Query based on value in rs Another query based on value in rs Loop
There is no explicit connection object, they all use the same connection string however. When I limit myself to one query within the Do/Loop, I don't have any problems. However, when I add another query in there, it bombs with: Operation is not allowed when the object is open.
I'm assuming it's referring to the connection string being reused, but why would it allow one additional connection, but not two. I can't really close this connection before needing to requery. Is there anyway around this, or am I missing something entirely?
someone on another forum expressed that dreamweaver "tends to drive the programmer to creat implicit connections and their effect on performance".could someone explain this to me? a provide some better code? (we no longer are required to use dream weaver to develop code for the app).
I am programming a rather large site which will hopefully attract thousands of visits per day. I have been told by other people that MS access begins to struggle once it has about 15 active connections.
Since I am currently using MsAccess to test my scripts along with IIS 5.0 or whatever it is, I guess that at some stage I am going to have to convert all my stuff so that the data is in an SQLServer Database, and that the scripts can read and write to it. could anyone tell me what the transition is like. should I consider using SQL Server from the beginning or will I just have to change a few lines on each page.
On my website, I want to provide 3 pieces of statistics that will require 3 queries to my SQL database. As much as I'd like these to be live, they are part of a footer that will load each time for about 10 pages on my site. I am thinking that, although they are simple queries, it may be just too much.
What do you recommend? I could open the connection, run the query and then close it, each time. Would this be a recommend plan? Or, should I create a daily task that builds a simple text file with those query results and just pull those in each time the footer is loaded? This would not be live, but I can deal with it.
I get somthing like "Max Connection limit is reached" error msg when trying to access a page. I wonder it is got to do with winxp pro sp2 patch which only limit 10 tcp connections? Running ms access as database and IIS 5.1.
Is there a way that i can force a drop of all connections to a database. My problem is Access keeps locking my database, i have multiple users using this database, at different periods of the day, and i need a way to clear all connections, i.e at set points throughout the day or at request.
I do close the connection and set all record sets to nothing not sure what else i am missing?
What is the maximum number of connections that will work when using ASP pages with a MS Access database. I've seen some information that leads me to believe that up to 20 simultaneous users is a practical limit?
What I have is two db servers that mirror eachother. What i want to do is if the first server timesout then try to connect to the second server. It there a way to set a timeout and have these switch accordingly?
I have a site which has extensive database activity. What I do is for each procedure I open a connection to the database and close it as and when I leave the procedure. However, in long run I find that some connection to the database is not properly closed causing the site to hang. This has become a big headache for me.
Trying to find what is going wrong I logged opening /closing of connections to the database and found that at some points the connections are not closed resulting in large no. of active connections to the database.
But if I go through the script I cannot really understand why that connection was not closed since the script ensure that the connection is closed before exiting the procedure.
Is there any way where I can check the database may be during night time and close all existing connections to the database. I repeat all my connections to the database are done at the procedure level.
I was wondering if it was possible to have multiple server connections in one asp application. Like if one connection to the main sql server failed, it would connect to the backup sql server.