Make your own free website on


ODBC Errors

When browsing an ASP page, the following ODBC errors may occur. These and other errors are found at

1) Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC SQL Server Driver][SQL Server] Login Failed()

Bad SQL Permission to access database. This error is generated by SQL server if it does not accept or recognize the logon account and/or password being submitted (if using Standard security) or if there is no Windows NT account to SQL account mapping (when using Integrated security).

2) Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC SQL Server Driver][SQL Server] Login failed- User: Reason: Not defined as a valid user of a trusted SQL Server connection.

Windows NT account has not been mapped to a SQL account. In IIS 4, deselect Password synchronization.

3) Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC SQL Server Driver][SQL Server][DBMSSOCN] General Network Error. Check your network document.

This may occur when a SQL server computer is renamed or has been moved to another network due to heavy use. DSNs that reference the old name fail when the computer name cannot be located.

4) Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Driver Manager] Data Source not ??

Unable to find data source. This appears to be an issue with the order in which software is installed and uninstalled on the computer. If the ODBC core files become unsynchronized (they should all be the same version) you may see this error.

5) Microsoft OLE DB Provider error for ODBC Drivers error '80004005' [Microsoft] [ODBC Driver Manager] Data Source Name not found and no default driver specified.

The Global.asa file is not located in the root directory of the application or the global.asa file contains a syntax error. Another   possibility is the DSN name specified inside the ASP is not found.


If the ISAPI/CGI is compiled in *.exe or *.dll, you need to give Execute permission on the directory using ISM. Read permission is not required. If the application is in the form of a script, either Execute or Script permission is needed. Execute NTFS permission is needed on both situation. (I know this is different from other Exam Notes but I got this from the Option Pack Documentation - check it out yourself).

Example 1: Configuring a web site for CGI and ISAPI with execute permission in the \scripts directory is not enough. Execute NTFS permission need to be applied to the \scripts directory too.

Example 2: You have an ISAPI application called Counter.dll with the proper NTFS permission but the application refused to run. Use MMC and configure Execute permission (this is not a default).

If a user access rights are changed while IIS is loaded, you must either wait for 15 minutes for the change to take effect or stop and restart the service. Scenario: Mary is promoted to become a manager and was added to the managers group. In order for her to be able to run a particular ISAPI application, you need to stop and restart the WWW service. 

If the client is having a problem in requesting an ISAPI-server side script due to authentication, the client's browser will issue a 403 error.

An ISAPI that is slowly taking too many resources and slow down your IIS. You can decrease the number of threads by running each application in a separate memory. You can isolate an application so that it runs in a separate memory space from the Web server. Isolating an application ensures that other applications, and the Web server itself, keep running even if the isolated application stops responding or fails.

Your intranet server is running ISAPI application. You noticed from the Performance Monitor that the Thread Count counter under the Process object keep increasing even though the web application is used infrequently.

Consider these tuning strategies (from MS TechNet):

a) threads and processors are busy - distribute workload among more servers.
b) threads are busy but processors not busy - redistribute processor workload (increasing maximum threads per processor)
c) threads are idle - reduce number of threads in a process. Add MaxPoolThreads value in Registry \Services\InetInfo\Parameters (default = 10; ranges 5 - 20).

ISAPI filters are programs that respond when the Web server receives an HTTP request. They are different from applications in that they are driven by Web server events rather than by a client request. You can associate an ISAPI filter with a particular Web server event; the filter is then notified every time its associated event occurs. For example, a filter could be notified when a read or write event occurs and then encrypt the raw data to be returned to the client. The ISAPI filter is added by using the ISAPI Filter tab at the web site properties.


Perl script requires a Perl command interpreter installed on the IIS server. If you moved the script from one computer to another, make sure the other computer has the interpreter.


The following performance Monitor counters are quite important:

1) Allocated Memory - monitor total amount of memory in bytes allocated by ASP.

2) Request Disconnected - monitor the number of ASP requests that were disconnected due to communications failure



Wednesday, December 03, 2003