I have been unable to connect using an ODBC (system DSN) connection with an ASP application when the SQL Anywhere service and IIS are running on the same physical machine. It works fine when the SQL Anywhere service and IIS are on two different machines. How do I need to set up the ODBC connection so it will work on the same physical machine?
If it looks like you have done all of this, try turning on the client debugging (on the advanced page of your ASA ODBC DSN) and see what information you get.
Jason Hinsperger Product Quality Adaptive Server Anywhere
> I have been unable to connect using an ODBC (system DSN) connection with an > ASP application when the SQL Anywhere service and IIS are running on the > same physical machine. It works fine when the SQL Anywhere service and IIS > are on two different machines. How do I need to set up the ODBC connection > so it will work on the same physical machine?
Actually, I had run across this document, but it didn't give me exactly what I needed. I am running SQL Anywhere Version 5.0.5.4 and it is running as a service, as opposed to standalone, so I am trying to run the database service and IIS on the same physical machine. When I set up the ODBC profile as a standalone connection (using dbeng50.exe), then it works fine. However, this application also has a client-server component that must use the SQL Anywhere database service, so I have to create the ODBC profile using dbclient.exe. I should have given you better information at the start.... Thanks!
"Jason Hinsperger" <nos...@ever.ever> wrote in message
> Have a look at this technical document. It should give you a good idea > of how things should be setup for ASA and IIS. See if you have missed > anything. > http://www.sybase.com/detail/1,3151,1000928,00.html
> If it looks like you have done all of this, try turning on the client > debugging (on the advanced page of your ASA ODBC DSN) and see what > information you get.
> Jason Hinsperger > Product Quality > Adaptive Server Anywhere
> Brent Bowen wrote:
> > I have been unable to connect using an ODBC (system DSN) connection with an > > ASP application when the SQL Anywhere service and IIS are running on the > > same physical machine. It works fine when the SQL Anywhere service and IIS > > are on two different machines. How do I need to set up the ODBC connection > > so it will work on the same physical machine?
I am not quite clear on what you are saying or what the exact problem is that you are having? It sounds like you want/need to run the dbsrv50.exe (the SQL Anywhere network server). Are you trying to to run the server as an NT service?
What happens when you try to connect/run the server/client?
Is your ODBC datasource a SYSTEM datasource or a USER datasource?
Finally, you are using 5.5.04, but what build (you can get this by looking at the properties of the dbsrv50.exe, or by looking in the server message window when you start it)?
Jason Hinsperger Product Quality Adaptive Server Anywhere
> Actually, I had run across this document, but it didn't give me exactly what > I needed. I am running SQL Anywhere Version 5.0.5.4 and it is running as a > service, as opposed to standalone, so I am trying to run the database > service and IIS on the same physical machine. When I set up the ODBC > profile as a standalone connection (using dbeng50.exe), then it works fine. > However, this application also has a client-server component that must use > the SQL Anywhere database service, so I have to create the ODBC profile > using dbclient.exe. I should have given you better information at the > start.... Thanks!
> > If it looks like you have done all of this, try turning on the client > > debugging (on the advanced page of your ASA ODBC DSN) and see what > > information you get.
> > Jason Hinsperger > > Product Quality > > Adaptive Server Anywhere
> > Brent Bowen wrote:
> > > I have been unable to connect using an ODBC (system DSN) connection with > an > > > ASP application when the SQL Anywhere service and IIS are running on the > > > same physical machine. It works fine when the SQL Anywhere service and > IIS > > > are on two different machines. How do I need to set up the ODBC > connection > > > so it will work on the same physical machine?
5.5.4.1867 is the version based on the properties of dbsrv50.exe. Yes, I am trying to make the database available as a service through dbsrv50.exe (all of this is on Windows 2000). And even though I can connect to this service successfully through a Powerbuilder application installed on the same physical machine, my IIS ASP application fails, giving me this error: "Microsoft OLE DB Provider for ODBC Drivers (0x80040200) [Sybase][ODBC Driver]Unable to connect to database server: unable to start database engine". I am using a system datasource. When I change the configuration of this system datasource to "local" and point it to the actual file, it works okay. But when I change it to "network" (and the service is running), it fails with the above error. The IIS ASP application works fine connecting to a "network" source (as opposed to a "local" source) as long as the service is running on a different physical machine. With the Powerbuilder app, this single machine can act as both the database client and database server, but with IIS, it won't seem to work.
"Jason Hinsperger" <nos...@ever.ever> wrote in message
> I am not quite clear on what you are saying or what the exact problem is > that you are having? > It sounds like you want/need to run the dbsrv50.exe (the SQL Anywhere > network server). > Are you trying to to run the server as an NT service?
> What happens when you try to connect/run the server/client?
> Is your ODBC datasource a SYSTEM datasource or a USER datasource?
> Finally, you are using 5.5.04, but what build (you can get this by > looking at the properties of the dbsrv50.exe, or by looking in the > server message window when you start it)?
> Jason Hinsperger > Product Quality > Adaptive Server Anywhere
> Brent Bowen wrote:
> > Actually, I had run across this document, but it didn't give me exactly what > > I needed. I am running SQL Anywhere Version 5.0.5.4 and it is running as a > > service, as opposed to standalone, so I am trying to run the database > > service and IIS on the same physical machine. When I set up the ODBC > > profile as a standalone connection (using dbeng50.exe), then it works fine. > > However, this application also has a client-server component that must use > > the SQL Anywhere database service, so I have to create the ODBC profile > > using dbclient.exe. I should have given you better information at the > > start.... Thanks!
> > > If it looks like you have done all of this, try turning on the client > > > debugging (on the advanced page of your ASA ODBC DSN) and see what > > > information you get.
> > > Jason Hinsperger > > > Product Quality > > > Adaptive Server Anywhere
> > > Brent Bowen wrote:
> > > > I have been unable to connect using an ODBC (system DSN) connection with > > an > > > > ASP application when the SQL Anywhere service and IIS are running on the > > > > same physical machine. It works fine when the SQL Anywhere service and > > IIS > > > > are on two different machines. How do I need to set up the ODBC > > connection > > > > so it will work on the same physical machine?
I found that this problem is with security restriction. Internet user IUSR_MACHINE_NAME does not have persmission to load ASA odbc DLL . When you assign IUSR_MACHINE_NAME to administrators group or when you delete password for IUSR_MACHINE_NAME in WinNT user manager, the problem is resolved but you have big security problem now.
There were several issues with 5.5.04/05 and Windows 2000. You should be using the latest 5.5.05ebf if you are using Windows 2000. One of the problems was with services and shared memory on Windows 2000. Another was that the dbsrv50 would fail to start the tcpip link, and a third was that dbclient could fail to start the tcpip link, unless dobroadcast=no was in use. You can get the 5.5.05 ebf from this link: http://www.sybase.com/detail_list/1,3153,5329,00.html
Jason Hinsperger Product Quality Adaptive Server Anywhere
> 5.5.4.1867 is the version based on the properties of dbsrv50.exe. Yes, I am > trying to make the database available as a service through dbsrv50.exe (all > of this is on Windows 2000). And even though I can connect to this service > successfully through a Powerbuilder application installed on the same > physical machine, my IIS ASP application fails, giving me this error: > "Microsoft OLE DB Provider for ODBC Drivers (0x80040200) [Sybase][ODBC > Driver]Unable to connect to database server: unable to start database > engine". I am using a system datasource. When I change the configuration > of this system datasource to "local" and point it to the actual file, it > works okay. But when I change it to "network" (and the service is running), > it fails with the above error. The IIS ASP application works fine > connecting to a "network" source (as opposed to a "local" source) as long as > the service is running on a different physical machine. With the > Powerbuilder app, this single machine can act as both the database client > and database server, but with IIS, it won't seem to work.
> "Jason Hinsperger" <nos...@ever.ever> wrote in message > news:39A1A3CC.84CD850@ever.ever... > > I am not quite clear on what you are saying or what the exact problem is > > that you are having? > > It sounds like you want/need to run the dbsrv50.exe (the SQL Anywhere > > network server). > > Are you trying to to run the server as an NT service?
> > What happens when you try to connect/run the server/client?
> > Is your ODBC datasource a SYSTEM datasource or a USER datasource?
> > Finally, you are using 5.5.04, but what build (you can get this by > > looking at the properties of the dbsrv50.exe, or by looking in the > > server message window when you start it)?
> > Jason Hinsperger > > Product Quality > > Adaptive Server Anywhere
> > Brent Bowen wrote:
> > > Actually, I had run across this document, but it didn't give me exactly > what > > > I needed. I am running SQL Anywhere Version 5.0.5.4 and it is running > as a > > > service, as opposed to standalone, so I am trying to run the database > > > service and IIS on the same physical machine. When I set up the ODBC > > > profile as a standalone connection (using dbeng50.exe), then it works > fine. > > > However, this application also has a client-server component that must > use > > > the SQL Anywhere database service, so I have to create the ODBC profile > > > using dbclient.exe. I should have given you better information at the > > > start.... Thanks!
> > > > If it looks like you have done all of this, try turning on the client > > > > debugging (on the advanced page of your ASA ODBC DSN) and see what > > > > information you get.
> > > > Jason Hinsperger > > > > Product Quality > > > > Adaptive Server Anywhere
> > > > Brent Bowen wrote:
> > > > > I have been unable to connect using an ODBC (system DSN) connection > with > > > an > > > > > ASP application when the SQL Anywhere service and IIS are running on > the > > > > > same physical machine. It works fine when the SQL Anywhere service > and > > > IIS > > > > > are on two different machines. How do I need to set up the ODBC > > > connection > > > > > so it will work on the same physical machine?
I checked the properties of the service and "interact with desktop" is checked. I have also applied the EBF mentioned previously, but still no luck....
"Jim Egan" <dbag...@eganomics.com> wrote in message
I applied the 5.5.05 EBF and still no luck. I noticed something in the readme file that sounds like it might be relevant about the server failing to start on Windows 2000 because it was receiving a response to its own broadcast, but it looked like it was addressed in Build #2740 and this download was Build #2739. Am I understanding that numbering scheme correctly, and if so, how would I get hold of 5.5.05 Build at least #2740? Also, I tried what Eduard Nesiba mentioned in his note about changing the security for IUSR_MACHINE_NAME, and it seems to have had some effect. It doesn't get the "could not connect -- database engine not started" error, but it just hangs like it's trying to connect but never quite making it.
"Jason Hinsperger" <nos...@ever.ever> wrote in message
> There were several issues with 5.5.04/05 and Windows 2000. You should > be using the latest 5.5.05ebf if you are using Windows 2000. > One of the problems was with services and shared memory on Windows 2000. > Another was that the dbsrv50 would fail to start the tcpip link, and a > third was that dbclient could fail to start the tcpip link, unless > dobroadcast=no was in use. > You can get the 5.5.05 ebf from this link: > http://www.sybase.com/detail_list/1,3153,5329,00.html
> Jason Hinsperger > Product Quality > Adaptive Server Anywhere
> Brent Bowen wrote:
> > 5.5.4.1867 is the version based on the properties of dbsrv50.exe. Yes, I am > > trying to make the database available as a service through dbsrv50.exe (all > > of this is on Windows 2000). And even though I can connect to this service > > successfully through a Powerbuilder application installed on the same > > physical machine, my IIS ASP application fails, giving me this error: > > "Microsoft OLE DB Provider for ODBC Drivers (0x80040200) [Sybase][ODBC > > Driver]Unable to connect to database server: unable to start database > > engine". I am using a system datasource. When I change the configuration > > of this system datasource to "local" and point it to the actual file, it > > works okay. But when I change it to "network" (and the service is running), > > it fails with the above error. The IIS ASP application works fine > > connecting to a "network" source (as opposed to a "local" source) as long as > > the service is running on a different physical machine. With the > > Powerbuilder app, this single machine can act as both the database client > > and database server, but with IIS, it won't seem to work.
> > "Jason Hinsperger" <nos...@ever.ever> wrote in message > > news:39A1A3CC.84CD850@ever.ever... > > > I am not quite clear on what you are saying or what the exact problem is > > > that you are having? > > > It sounds like you want/need to run the dbsrv50.exe (the SQL Anywhere > > > network server). > > > Are you trying to to run the server as an NT service?
> > > What happens when you try to connect/run the server/client?
> > > Is your ODBC datasource a SYSTEM datasource or a USER datasource?
> > > Finally, you are using 5.5.04, but what build (you can get this by > > > looking at the properties of the dbsrv50.exe, or by looking in the > > > server message window when you start it)?
> > > Jason Hinsperger > > > Product Quality > > > Adaptive Server Anywhere
> > > Brent Bowen wrote:
> > > > Actually, I had run across this document, but it didn't give me exactly > > what > > > > I needed. I am running SQL Anywhere Version 5.0.5.4 and it is running > > as a > > > > service, as opposed to standalone, so I am trying to run the database > > > > service and IIS on the same physical machine. When I set up the ODBC > > > > profile as a standalone connection (using dbeng50.exe), then it works > > fine. > > > > However, this application also has a client-server component that must > > use > > > > the SQL Anywhere database service, so I have to create the ODBC profile > > > > using dbclient.exe. I should have given you better information at the > > > > start.... Thanks!
> > > > "Jason Hinsperger" <nos...@ever.ever> wrote in message > > > > news:39A17EBF.F4E50478@ever.ever... > > > > > Have a look at this technical document. It should give you a good > > idea > > > > > of how things should be setup for ASA and IIS. See if you have missed > > > > > anything. > > > > > http://www.sybase.com/detail/1,3151,1000928,00.html
> > > > > If it looks like you have done all of this, try turning on the client > > > > > debugging (on the advanced page of your ASA ODBC DSN) and see what > > > > > information you get.
> > > > > > I have been unable to connect using an ODBC (system DSN) connection > > with > > > > an > > > > > > ASP application when the SQL Anywhere service and IIS are running on > > the > > > > > > same physical machine. It works fine when the SQL Anywhere service > > and > > > > IIS > > > > > > are on two different machines. How do I need to set up the ODBC > > > > connection > > > > > > so it will work on the same physical machine?
I tried this (adding IUSR_MACHINE_NAME to the administrators group) and it did seem to make a difference. I don't get the "could not connect -- database engine not started" error anymore, but it is still not working. I appears to be trying to connect, but it just hangs. It won't connect, but it doesn't come back with an error message and doesn't time out. Did you run across this?
"Eduard Nesiba" <ignac...@iname.com> wrote in message
> I found that this problem is with security restriction. > Internet user IUSR_MACHINE_NAME does not have persmission to load ASA odbc > DLL . > When you assign IUSR_MACHINE_NAME to administrators group or > when you delete password for IUSR_MACHINE_NAME in WinNT user manager, > the problem is resolved but you have big security problem now.
The workaround for that problem is for the dbclient app. to use -x tcpip{dobroadcast=no;host=w.x.y.z} Did you try it?
Try this: Change the database server service to start with the '-Z' and '-o eng.out' switch to log debug information. Also add the -hs switch to turn off shared memory connections to the server. This will force all connections to use the dbclient. Start the database server service. Allow it to interact with the desktop so you can see the server messages. Start dbclient (use the -Z switch to get debug info.) - make sure it finds the server. Try your IIS connection. What happens? Any messages in the database server window? The client window?
Jason Hinsperger Product Quality Adaptive Server Anywhere
> I applied the 5.5.05 EBF and still no luck. I noticed something in the > readme file that sounds like it might be relevant about the server failing > to start on Windows 2000 because it was receiving a response to its own > broadcast, but it looked like it was addressed in Build #2740 and this > download was Build #2739. Am I understanding that numbering scheme > correctly, and if so, how would I get hold of 5.5.05 Build at least #2740? > Also, I tried what Eduard Nesiba mentioned in his note about changing the > security for IUSR_MACHINE_NAME, and it seems to have had some effect. It > doesn't get the "could not connect -- database engine not started" error, > but it just hangs like it's trying to connect but never quite making it.
> "Jason Hinsperger" <nos...@ever.ever> wrote in message > news:39A282A2.42B08077@ever.ever... > > There were several issues with 5.5.04/05 and Windows 2000. You should > > be using the latest 5.5.05ebf if you are using Windows 2000. > > One of the problems was with services and shared memory on Windows 2000. > > Another was that the dbsrv50 would fail to start the tcpip link, and a > > third was that dbclient could fail to start the tcpip link, unless > > dobroadcast=no was in use. > > You can get the 5.5.05 ebf from this link: > > http://www.sybase.com/detail_list/1,3153,5329,00.html
> > Jason Hinsperger > > Product Quality > > Adaptive Server Anywhere
> > Brent Bowen wrote:
> > > 5.5.4.1867 is the version based on the properties of dbsrv50.exe. Yes, > I am > > > trying to make the database available as a service through dbsrv50.exe > (all > > > of this is on Windows 2000). And even though I can connect to this > service > > > successfully through a Powerbuilder application installed on the same > > > physical machine, my IIS ASP application fails, giving me this error: > > > "Microsoft OLE DB Provider for ODBC Drivers (0x80040200) [Sybase][ODBC > > > Driver]Unable to connect to database server: unable to start database > > > engine". I am using a system datasource. When I change the > configuration > > > of this system datasource to "local" and point it to the actual file, it > > > works okay. But when I change it to "network" (and the service is > running), > > > it fails with the above error. The IIS ASP application works fine > > > connecting to a "network" source (as opposed to a "local" source) as > long as > > > the service is running on a different physical machine. With the > > > Powerbuilder app, this single machine can act as both the database > client > > > and database server, but with IIS, it won't seem to work.
> > > "Jason Hinsperger" <nos...@ever.ever> wrote in message > > > news:39A1A3CC.84CD850@ever.ever... > > > > I am not quite clear on what you are saying or what the exact problem > is > > > > that you are having? > > > > It sounds like you want/need to run the dbsrv50.exe (the SQL Anywhere > > > > network server). > > > > Are you trying to to run the server as an NT service?
> > > > What happens when you try to connect/run the server/client?
> > > > Is your ODBC datasource a SYSTEM datasource or a USER datasource?
> > > > Finally, you are using 5.5.04, but what build (you can get this by > > > > looking at the properties of the dbsrv50.exe, or by looking in the > > > > server message window when you start it)?
> > > > Jason Hinsperger > > > > Product Quality > > > > Adaptive Server Anywhere
> > > > Brent Bowen wrote:
> > > > > Actually, I had run across this document, but it didn't give me > exactly > > > what > > > > > I needed. I am running SQL Anywhere Version 5.0.5.4 and it is > running > > > as a > > > > > service, as opposed to standalone, so I am trying to run the > database > > > > > service and IIS on the same physical machine. When I set up the > ODBC > > > > > profile as a standalone connection (using dbeng50.exe), then it > works > > > fine. > > > > > However, this application also has a client-server component that > must > > > use > > > > > the SQL Anywhere database service, so I have to create the ODBC > profile > > > > > using dbclient.exe. I should have given you better information at > the > > > > > start.... Thanks!
> > > > > "Jason Hinsperger" <nos...@ever.ever> wrote in message > > > > > news:39A17EBF.F4E50478@ever.ever... > > > > > > Have a look at this technical document. It should give you a good > > > idea > > > > > > of how things should be setup for ASA and IIS. See if you have > missed > > > > > > anything. > > > > > > http://www.sybase.com/detail/1,3151,1000928,00.html
> > > > > > If it looks like you have done all of this, try turning on the > client > > > > > > debugging (on the advanced page of your ASA ODBC DSN) and see what > > > > > > information you get.
> > > > > > > I have been unable to connect using an ODBC (system DSN) > connection > > > with > > > > > an > > > > > > > ASP application when the SQL Anywhere service and IIS are > running on > > > the > > > > > > > same physical machine. It works fine when the SQL Anywhere > service > > > and > > > > > IIS > > > > > > > are on two different machines. How do I need to set up the ODBC > > > > > connection > > > > > > > so it will work on the same physical machine?