Remote connect to IDS fails
Posted in 2011
An Informix newcomer could connect to an IDS 11.7 instance on Windows XP locally but not from a remote Windows 7 64-bit machine, getting "Attempt to connect to database server (ol_mat) failed" from both his .NET test app and iLogin. Respondents explained that local connections can use shared memory while remote ones need TCP, and advised checking that DBSERVERNAME/sqlhosts (host, protocol, service) and the services file line up on the server, and using setnet32 on the client to define the remote server. Key point: use the native onsoctcp/olsoctcp protocol, not drsoctcp (DRDA), which requires server changes and the IBM Common Client. The poster replied that setnet32's dropdown offered no onsoctcp option; the thread ends with a question about his setnet32 version, with no resolution recorded.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Installation, Setup & Upgrades, Connectivity: ODBC / JDBC / .NET, Security, Permissions & Auditing
Hello - IFX newbie here! I'm hoping someone can show me the way.... I am porting a .Net application to work with Informix (IDS 11.7). I have an IDS server instance running on a WinXP machine, and on that machine I can connect from my application (ie application and server are on same machine). I also have a very simple .Net test app that makes, opens and then closes a connection, so there are no extraneous details that might confuse the issue. However when I try to run the test app on a remote Windows 7 64 bit machine, I cannot connect to the IDS server. By 'remote' I mean on the same subnet, in the same room in fact. I have the 32 bit Informix client tools installed on both machines, and I can compile the test app on the remote client so I know the Informix .Net provider is there and available. I have checked that the Windows Firewall is disabled on the server host. On the remote client machine the Windows 7 Firewall allows all outgoing traffic. I can ping both ways. I can also connect to a Sql Server database across the same route, so I know it is not a network issue per se. The connection string is the same in both cases, and in the connection string the host is explicit (host=DEVDW). In fact here is the test code itself: using (IDbConnection conn = new IfxConnection("Host=DEVDW;Password=myPassWord;Server=ol_mat;Service=9091;User ID=myUserName; Database=MATIFMXSYS")) { conn.Open(); using (IDbCommand com = conn.CreateCommand()) { com.CommandType = CommandType.Text; com.CommandText = "select usercode from users where usercode = 'test'"; string temp = (string)com.ExecuteScalar(); } } What else should I be looking for? TIA Neil.
Neil, You have a port number in your connect statement, so this is probably = not it, but your instance name looks like a default SHM connection, so = I'll give it a whirl. When local, you can connect via shared memory. When remote, you must = connect over a net connection. That net connection has three components which must align. %ONCONFIG%, = sqlhosts file and /etc/services. %ONCONFIG% is %INFORMIXDIR%\\\\etc\\\\%ONCONFIG%. Look for SERVERNAME or = SERVERALIAS in there. the ol_mat is the one you have told your app to = connect to. sqlhosts (and this may have just changed in 11.7, I'd have to check). = In the Registry under LOCALMACHINE/Software/Informix/... I forget ... / = sqlhosts, there should be an entry for ol_mat which should call out a = service. If it is not in the registry, check %INFORMIXDIR%\\\\etc\\\\sqlhosts. Finally /etc/services is hidden under = %WINPATH%\\\\System32\\\\drivers\\\\etc\\\\services. In that you want the service = name from the sqlhosts entry to line up with the port number you called = out (9091) (for that matter, should you be calling out the service name = rather than the port number?) Not a .Net guy. You should be able to telnet to the port in question and get something = unintelligible, but recognizable. What we typically do is try to connect with the native Informix = connection components to validate that the connectivity is allright. = Download the CSDK to your WIndows 7 box. Sorry to be so vague, it's been a while since I played in this = particular sandbox. j. On Jul 7, 2011, at 5:37 AM, NEIL HAUGHTON wrote: > Hello - IFX newbie here! I'm hoping someone can show me the way....=20 >=20 > I am porting a .Net application to work with Informix (IDS 11.7). I = have an=20 > IDS server instance running on a WinXP machine, and on that machine I = can=20 > connect from my application (ie application and server are on same = machine). I=20 > also have a very simple .Net test app that makes, opens and then = closes a=20 > connection, so there are no extraneous details that might confuse the = issue.=20 >=20 > However when I try to run the test app on a remote Windows 7 64 bit = machine, I=20 > cannot connect to the IDS server. By 'remote' I mean on the same = subnet, in=20 > the same room in fact. I have the 32 bit Informix client tools = installed on=20 > both machines, and I can compile the test app on the remote client so = I know=20 > the Informix .Net provider is there and available.=20 >=20 > I have checked that the Windows Firewall is disabled on the server = host. On=20 > the remote client machine the Windows 7 Firewall allows all outgoing = traffic.=20 > I can ping both ways. I can also connect to a Sql Server database = across the=20 > same route, so I know it is not a network issue per se.=20 >=20 > The connection string is the same in both cases, and in the connection = string=20 > the host is explicit (host=3DDEVDW). In fact here is the test code = itself:=20 >=20 > using (IDbConnection conn =3D new=20 > = IfxConnection("Host=3DDEVDW;Password=3DmyPassWord;Server=3Dol_mat;Service=3D= 9091;User=20 > ID=3DmyUserName; Database=3DMATIFMXSYS"))=20 >=20 > {=20 >=20 > conn.Open();=20 >=20 > using (IDbCommand com =3D conn.CreateCommand())=20 >=20 > {=20 >=20 > com.CommandType =3D CommandType.Text;=20 >=20 > com.CommandText =3D "select usercode from users where usercode =3D = 'test'";=20 >=20 > string temp =3D (string)com.ExecuteScalar();=20 >=20 > }=20 >=20 > }=20 >=20 > What else should I be looking for?=20 >=20 > TIA=20 >=20 > Neil.=20 >=20 >=20 > = **************************************************************************= *****=20 > Forum Note: Use "Reply" to post a response in the discussion forum.=20= >=20
Jack, Thanks for the quick response. The first thing I notice is that on the client machine none of the IDS environment variables that you mention are set. I have the Informix Client SDK installed, but not the IDS stuff ( don't want an IDS server on the client) but apparently that means the environment variables aren't set. Nor is the registry stuff there either. Do I have to do this manually, or have I screwed up somewhere? Neil.
Neil, The environment I'm talking about would all be set on the server side. On the client side, the CSDK should have a test app - whose name escapes = me - but it should be there under the menu, with a name of something = like "connect". If you get that to connect, then you can set up a DSN for ODBC and = access through that - or continue with the with .net connection. I have some w2k8 boxes at work which I can check in a bit. j. On Jul 7, 2011, at 8:00 AM, NEIL HAUGHTON wrote: > Jack,=20 >=20 > Thanks for the quick response.=20 >=20 > The first thing I notice is that on the client machine none of the IDS=20= > environment variables that you mention are set. I have the Informix = Client SDK=20 > installed, but not the IDS stuff ( don't want an IDS server on the = client) but=20 > apparently that means the environment variables aren't set. Nor is the=20= > registry stuff there either.=20 >=20 > Do I have to do this manually, or have I screwed up somewhere?=20 >=20 > Neil.=20 >=20 >=20 > = **************************************************************************= *****=20 > Forum Note: Use "Reply" to post a response in the discussion forum.=20= >=20
Jack, Would that be the ILogin tool? I've tried that - it won't connect either (which supports my conclusion that there's nothing wrong with my test code). I have to do this with .Net: ODBC isn't an option, except to help diagnose the fault, and anyway unfortunately there are some problems with the way the Informix ODBC drivers are installed on a 64 bit machine, because the Windows Data Sources tool cannot see them, so I can't create ODBC connection on Win7-64bit anyway! I'll have a go at your other ideas on the server this afternoon. BTW, what does the Setnet32 tool do? is this significant? Neil, The environment I'm talking about would all be set on the server side. On the client side, the CSDK should have a test app - whose name escapes = me - but it should be there under the menu, with a name of something = like "connect". If you get that to connect, then you can set up a DSN for ODBC and = access through that - or continue with the with .net connection. I have some w2k8 boxes at work which I can check in a bit. j. On Jul 7, 2011, at 8:00 AM, NEIL HAUGHTON wrote: > Jack,=20 >=20 > Thanks for the quick response.=20 >=20 > The first thing I notice is that on the client machine none of the IDS=20= > environment variables that you mention are set. I have the Informix = Client SDK=20 > installed, but not the IDS stuff ( don't want an IDS server on the = client) but=20 > apparently that means the environment variables aren't set. Nor is the=20= > registry stuff there either.=20 >=20 > Do I have to do this manually, or have I screwed up somewhere?=20 >=20 > Neil.=20 >=20 >=20 > = **************************************************************************= *****=20 > Forum Note: Use "Reply" to post a response in the discussion forum.=20= >=20 Messages In This Thread Remote connect to IDS fails (views: 10) NEIL HAUGHTON -- Thursday, 7 July 2011, at 5:37 a.m. Re: Remote connect to IDS fails (views: 7) Jack Parker -- Thursday, 7 July 2011, at 6:52 a.m. Re: Remote connect to IDS fails (views: 1) NEIL HAUGHTON -- Thursday, 7 July 2011, at 8:00 a.m. Re: Remote connect to IDS fails (views: 1) Jack Parker -- Thursday, 7 July 2011, at 8:06 a.m. [ View Thread ] [ Post Response ] [ Return to Index ] [ Read Prev Msg ] IDS Forum is maintained by Administrator with WebBBS 5.12.
Neil, Yes, iLogin. If you can get that to work, then you know that connectivity is good, if = not, then you won't get anything else to work. =20 setnet32 is there to set defaults. It looks essentially like the ODBC = setup, allows you to point to a server, port, instance database. =46rom = there iLogin will use those defaults, although you can override any of = those defaults within iLogin. j. On Jul 7, 2011, at 8:30 AM, NEIL HAUGHTON wrote: > Jack,=20 >=20 > Would that be the ILogin tool? I've tried that - it won't connect = either=20 > (which supports my conclusion that there's nothing wrong with my test = code).=20 >=20 > I have to do this with .Net: ODBC isn't an option, except to help = diagnose the=20 > fault, and anyway unfortunately there are some problems with the way = the=20 > Informix ODBC drivers are installed on a 64 bit machine, because the = Windows=20 > Data Sources tool cannot see them, so I can't create ODBC connection = on=20 > Win7-64bit anyway!=20 >=20 > I'll have a go at your other ideas on the server this afternoon.=20 >=20 > BTW, what does the Setnet32 tool do? is this significant?=20 >=20 > Neil,=20 >=20 > The environment I'm talking about would all be set on the server side.=20= >=20 > On the client side, the CSDK should have a test app - whose name = escapes =3D=20 > me - but it should be there under the menu, with a name of something =3D= =20 > like "connect".=20 >=20 > If you get that to connect, then you can set up a DSN for ODBC and =3D=20= > access through that - or continue with the with .net connection.=20 >=20 > I have some w2k8 boxes at work which I can check in a bit.=20 >=20 > j.=20 >=20 > On Jul 7, 2011, at 8:00 AM, NEIL HAUGHTON wrote:=20 >=20 >> Jack,=3D20=20 >> =3D20=20 >> Thanks for the quick response.=3D20=20 >> =3D20=20 >> The first thing I notice is that on the client machine none of the = IDS=3D20=3D=20 >=20 >> environment variables that you mention are set. I have the Informix =3D= =20 > Client SDK=3D20=20 >> installed, but not the IDS stuff ( don't want an IDS server on the =3D=20= > client) but=3D20=20 >> apparently that means the environment variables aren't set. Nor is = the=3D20=3D=20 >=20 >> registry stuff there either.=3D20=20 >> =3D20=20 >> Do I have to do this manually, or have I screwed up somewhere?=3D20=20= >> =3D20=20 >> Neil.=3D20=20 >> =3D20=20 >> =3D20=20 >> =3D=20 > = **************************************************************************= =3D=20 > *****=3D20=20 >> Forum Note: Use "Reply" to post a response in the discussion = forum.=3D20=3D=20 >=20 >> =3D20=20 >=20 > Messages In This Thread=20 >=20 > Remote connect to IDS fails (views: 10)=20 > NEIL HAUGHTON -- Thursday, 7 July 2011, at 5:37 a.m.=20 > Re: Remote connect to IDS fails (views: 7)=20 > Jack Parker -- Thursday, 7 July 2011, at 6:52 a.m.=20 > Re: Remote connect to IDS fails (views: 1)=20 > NEIL HAUGHTON -- Thursday, 7 July 2011, at 8:00 a.m.=20 > Re: Remote connect to IDS fails (views: 1)=20 > Jack Parker -- Thursday, 7 July 2011, at 8:06 a.m.=20 > [ View Thread ] [ Post Response ] [ Return to Index ] [ Read Prev Msg = ]=20 >=20 > IDS Forum is maintained by Administrator with WebBBS 5.12.=20 >=20 >=20 > = **************************************************************************= *****=20 > Forum Note: Use "Reply" to post a response in the discussion forum.=20= >=20
Neil, you have to use SETNET32 to define the remote server on each client machine. Also, as pointed out, the server itself has to have a network type (onsoctcp) connection name defined. Art Art S. Kagel Advanced DataTools (www.advancedatatools.com) Blog: http://informix-myview.blogspot.com/ Disclaimer: Please keep in mind that my own opinions are my own opinions and do not reflect on my employer, Advanced DataTools, the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves. On Thu, Jul 7, 2011 at 8:30 AM, NEIL HAUGHTON < neil.haughton@autoscribe.co.uk> wrote: > Jack, > > Would that be the ILogin tool? I've tried that - it won't connect either > (which supports my conclusion that there's nothing wrong with my test > code). > > I have to do this with .Net: ODBC isn't an option, except to help diagnose > the > fault, and anyway unfortunately there are some problems with the way the > Informix ODBC drivers are installed on a 64 bit machine, because the > Windows > Data Sources tool cannot see them, so I can't create ODBC connection on > Win7-64bit anyway! > > I'll have a go at your other ideas on the server this afternoon. > > BTW, what does the Setnet32 tool do? is this significant? > > Neil, > > The environment I'm talking about would all be set on the server side. > > On the client side, the CSDK should have a test app - whose name escapes = > me - but it should be there under the menu, with a name of something = > like "connect". > > If you get that to connect, then you can set up a DSN for ODBC and = > access through that - or continue with the with .net connection. > > I have some w2k8 boxes at work which I can check in a bit. > > j. > > On Jul 7, 2011, at 8:00 AM, NEIL HAUGHTON wrote: > > > Jack,=20 > >=20 > > Thanks for the quick response.=20 > >=20 > > The first thing I notice is that on the client machine none of the > IDS=20= > > > environment variables that you mention are set. I have the Informix = > Client SDK=20 > > installed, but not the IDS stuff ( don't want an IDS server on the = > client) but=20 > > apparently that means the environment variables aren't set. Nor is > the=20= > > > registry stuff there either.=20 > >=20 > > Do I have to do this manually, or have I screwed up somewhere?=20 > >=20 > > Neil.=20 > >=20 > >=20 > > = > **************************************************************************= > *****=20 > > Forum Note: Use "Reply" to post a response in the discussion forum.=20= > > >=20 > > Messages In This Thread > > Remote connect to IDS fails (views: 10) > NEIL HAUGHTON -- Thursday, 7 July 2011, at 5:37 a.m. > Re: Remote connect to IDS fails (views: 7) > Jack Parker -- Thursday, 7 July 2011, at 6:52 a.m. > Re: Remote connect to IDS fails (views: 1) > NEIL HAUGHTON -- Thursday, 7 July 2011, at 8:00 a.m. > Re: Remote connect to IDS fails (views: 1) > Jack Parker -- Thursday, 7 July 2011, at 8:06 a.m. > [ View Thread ] [ Post Response ] [ Return to Index ] [ Read Prev Msg ] > > IDS Forum is maintained by Administrator with WebBBS 5.12. > > > > ******************************************************************************* > Forum Note: Use "Reply" to post a response in the discussion forum. > > --20cf307f35269deca604a77a67f2
Okay, so here is what I have gleaned so far:
Server:
ONCONFIG file has a line
DBSERVERNAME = ol_mat
Registry has a .../SQLHOSTS key with
HOST=DEVDW
PROTOCOL=olsoctcp
SERVICE=9091
The ...\\\\etc\\\\Services file has a line
ol_mat = 9091/tcp
which all looks correct, although I'm no expert.
I'm familiar with telnet on *nix, but Windows doesn't seem to sport a telnet
command, so I can't 'telnet' to the server. Is there a Winworld equivalent?
I've used Setnet32 to set defaults as:
Informix Server = ol_mat
Hostname = devdw
protocolname = drsoctcp (olsoctcp isn't available - is that significant?)
Service name = 9091
Options =
Current host=devdw
user Name = <my username, case correct>
Password Option=Password
Password = <my password, case correct>
Still can't connect, even with ILogin
Here is the error message in my .Net test tool:
IBM.Data.Informix.IfxException was unhandled
Message="ERROR [08004] [Informix .NET provider][Informix]Attempt to connect to
database server (ol_mat) failed."
Source="IBM.Data.Informix"
ErrorCode=-2147467259
StackTrace:
at IBM.Data.Informix.DBCWrapper..ctor(IfxConnection connection)
at IBM.Data.Informix.IfxConnectionPool.IfxConnPoolNode..ctor(IfxConnection
connection)
at IBM.Data.Informix.IfxConnectionPool.OpenNewConnection(IfxConnection
connection, ConnectionPoolType ConnPoolType)
at IBM.Data.Informix.IfxConnectionPool.Open(IfxConnection connection)
at IBM.Data.Informix.IfxConnPoolManager.Open(IfxConnection connection)
at IBM.Data.Informix.IfxConnection.Open()
at Informix.Program.Main(String[] args) in C:\\\\Users\\
eil\\\\Documents\\\\Visual
Studio 2008\\\\Projects\\\\Informix2\\\\Informix2\\\\Program.cs:line 18
at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence
assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
Any ideas?
Neil
Previous message shouold have read:
Okay, so here is what I have gleaned so far:
Server:
ONCONFIG file has a line
DBSERVERNAME = ol_mat
Registry has a .../SQLHOSTS key with
HOST=DEVDW
PROTOCOL=olsoctcp
SERVICE=9091
The ...\\\\etc\\\\Services file has a line
ol_mat = 9091/tcp
which all looks correct, although I'm no expert.
Client:
I'm familiar with telnet on *nix, but Windows doesn't seem to sport a telnet
command, so I can't 'telnet' to the server. Is there a Winworld equivalent?
I've used Setnet32 to set defaults as:
Informix Server = ol_mat
Hostname = devdw
protocolname = drsoctcp (olsoctcp isn't available - is that significant?)
Service name = 9091
Options =
Current host=devdw
user Name = <my username, case correct>
Password Option=Password
Password = <my password, case correct>
Still can't connect, even with ILogin
Here is the error message in my .Net test tool:
IBM.Data.Informix.IfxException was unhandled
Message="ERROR [08004] [Informix .NET provider][Informix]Attempt to connect to
database server (ol_mat) failed."
Source="IBM.Data.Informix"
ErrorCode=-2147467259
StackTrace:
at IBM.Data.Informix.DBCWrapper..ctor(IfxConnection connection)
at IBM.Data.Informix.IfxConnectionPool.IfxConnPoolNode..ctor(IfxConnection
connection)
at IBM.Data.Informix.IfxConnectionPool.OpenNewConnection(IfxConnection
connection, ConnectionPoolType ConnPoolType)
at IBM.Data.Informix.IfxConnectionPool.Open(IfxConnection connection)
at IBM.Data.Informix.IfxConnPoolManager.Open(IfxConnection connection)
at IBM.Data.Informix.IfxConnection.Open()
at Informix.Program.Main(String[] args) in C:\\\\Users\\
eil\\\\Documents\\\\Visual
Studio 2008\\\\Projects\\\\Informix2\\\\Informix2\\\\Program.cs:line 18
at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence
assemblySecurity, String[] args)
at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()
InnerException:
Any ideas?
Neil
Use onsoctcp. The prefixes ol and on are synonyms for the native SQLI
communications protocol that Informix uses by default, dr specified the IBM
DRDA protocol which is different. You CAN use DRDA, but you'd have to
change the sqlhosts file on the server as well and the client will need the
IBM Common Client rather than the Informix client. Now it happens that the
Common Client's .NET support is a bit better than the Informix client's .NET
support and performance may be a bit better (though it does not support all
Informix data types), so that is an option, but for now, you are using the
Informix client, so use onsoctcp on the client side as well.
Art
Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
Blog: http://informix-myview.blogspot.com/
Disclaimer: Please keep in mind that my own opinions are my own opinions and
do not reflect on my employer, Advanced DataTools, the IIUG, nor any other
organization with which I am associated either explicitly, implicitly, or by
inference. Neither do those opinions reflect those of other individuals
affiliated with any entity with which I am affiliated nor those of the
entities themselves.
On Thu, Jul 7, 2011 at 9:22 AM, NEIL HAUGHTON <
neil.haughton@autoscribe.co.uk> wrote:
> Okay, so here is what I have gleaned so far:
>
> Server:
>
> ONCONFIG file has a line
>
> DBSERVERNAME = ol_mat>
> Registry has a .../SQLHOSTS key with
>
> HOST=DEVDW
> PROTOCOL=olsoctcp
> SERVICE=9091
>
> The ...\\\\etc\\\\Services file has a line
>
> ol_mat = 9091/tcp
>
> which all looks correct, although I'm no expert.
>
> I'm familiar with telnet on *nix, but Windows doesn't seem to sport a
> telnet
> command, so I can't 'telnet' to the server. Is there a Winworld equivalent?
>
> I've used Setnet32 to set defaults as:
>
> Informix Server = ol_mat
> Hostname = devdw
> protocolname = drsoctcp (olsoctcp isn't available - is that significant?)
> Service name = 9091
> Options =
>
> Current host=devdw
> user Name = <my username, case correct>
> Password Option=Password
> Password = <my password, case correct>
>
> Still can't connect, even with ILogin
>
> Here is the error message in my .Net test tool:
>
> IBM.Data.Informix.IfxException was unhandled
> Message="ERROR [08004] [Informix .NET provider][Informix]Attempt to connect
> to
> database server (ol_mat) failed."
> Source="IBM.Data.Informix"
> ErrorCode=-2147467259
> StackTrace:
>
> at IBM.Data.Informix.DBCWrapper..ctor(IfxConnection connection)
>
> at IBM.Data.Informix.IfxConnectionPool.IfxConnPoolNode..ctor(IfxConnection
> connection)
>
> at IBM.Data.Informix.IfxConnectionPool.OpenNewConnection(IfxConnection
> connection, ConnectionPoolType ConnPoolType)
>
> at IBM.Data.Informix.IfxConnectionPool.Open(IfxConnection connection)
>
> at IBM.Data.Informix.IfxConnPoolManager.Open(IfxConnection connection)
>
> at IBM.Data.Informix.IfxConnection.Open()
>
> at Informix.Program.Main(String[] args) in C:\\\\Users\\
eil\\\\Documents\\\\Visual
> Studio 2008\\\\Projects\\\\Informix2\\\\Informix2\\\\Program.cs:line 18
>
> at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
>
> at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence
> assemblySecurity, String[] args)
>
> at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
>
> at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
>
> at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
> ContextCallback callback, Object state)
>
> at System.Threading.ThreadHelper.ThreadStart()
> InnerException:
>
> Any ideas?
>
> Neil
>
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--bcaec51d2106c02fa804a77b7ab5
Hello.
Just a tip: since you´re using .net provider, consider seriously
adopting the DRDA protocol,
since it´s compatible to use advanced development features (eg: visual
studio entity framework),
and much other things.
Check it out!
http://www-01.ibm.com/support/docview.wss?rs=4020&uid=swg27016878
Regards.
Em 07/07/2011 10:24, Art Kagel escreveu:
> Use onsoctcp. The prefixes ol and on are synonyms for the native SQLI
> communications protocol that Informix uses by default, dr specified the IBM
> DRDA protocol which is different. You CAN use DRDA, but you'd have to
> change the sqlhosts file on the server as well and the client will need the
> IBM Common Client rather than the Informix client. Now it happens that the
> Common Client's .NET support is a bit better than the Informix client's .NET
> support and performance may be a bit better (though it does not support all
> Informix data types), so that is an option, but for now, you are using the
> Informix client, so use onsoctcp on the client side as well.
>
> Art
>
> Art S. Kagel
> Advanced DataTools (www.advancedatatools.com)
> Blog: http://informix-myview.blogspot.com/
>
> Disclaimer: Please keep in mind that my own opinions are my own opinions and
> do not reflect on my employer, Advanced DataTools, the IIUG, nor any other
> organization with which I am associated either explicitly, implicitly, or by
> inference. Neither do those opinions reflect those of other individuals
> affiliated with any entity with which I am affiliated nor those of the
> entities themselves.
>
> On Thu, Jul 7, 2011 at 9:22 AM, NEIL HAUGHTON<
> neil.haughton@autoscribe.co.uk> wrote:
>
>> Okay, so here is what I have gleaned so far:
>>
>> Server:
>>
>> ONCONFIG file has a line
>>
>> DBSERVERNAME = ol_mat>>
>> Registry has a .../SQLHOSTS key with
>>
>> HOST=DEVDW
>> PROTOCOL=olsoctcp
>> SERVICE=9091
>>
>> The ...\\\\etc\\\\Services file has a line
>>
>> ol_mat = 9091/tcp
>>
>> which all looks correct, although I'm no expert.
>>
>> I'm familiar with telnet on *nix, but Windows doesn't seem to sport a
>> telnet
>> command, so I can't 'telnet' to the server. Is there a Winworld equivalent?
>>
>> I've used Setnet32 to set defaults as:
>>
>> Informix Server = ol_mat
>> Hostname = devdw
>> protocolname = drsoctcp (olsoctcp isn't available - is that significant?)
>> Service name = 9091
>> Options =
>>
>> Current host=devdw
>> user Name =<my username, case correct>
>> Password Option=Password
>> Password =<my password, case correct>
>>
>> Still can't connect, even with ILogin
>>
>> Here is the error message in my .Net test tool:
>>
>> IBM.Data.Informix.IfxException was unhandled
>> Message="ERROR [08004] [Informix .NET provider][Informix]Attempt to connect
>> to
>> database server (ol_mat) failed."
>> Source="IBM.Data.Informix"
>> ErrorCode=-2147467259
>> StackTrace:
>>
>> at IBM.Data.Informix.DBCWrapper..ctor(IfxConnection connection)
>>
>> at IBM.Data.Informix.IfxConnectionPool.IfxConnPoolNode..ctor(IfxConnection
>> connection)
>>
>> at IBM.Data.Informix.IfxConnectionPool.OpenNewConnection(IfxConnection
>> connection, ConnectionPoolType ConnPoolType)
>>
>> at IBM.Data.Informix.IfxConnectionPool.Open(IfxConnection connection)
>>
>> at IBM.Data.Informix.IfxConnPoolManager.Open(IfxConnection connection)
>>
>> at IBM.Data.Informix.IfxConnection.Open()
>>
>> at Informix.Program.Main(String[] args) in C:\\\\Users\\
eil\\\\Documents\\\\Visual
>> Studio 2008\\\\Projects\\\\Informix2\\\\Informix2\\\\Program.cs:line 18
>>
>> at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
>>
>> at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence
>> assemblySecurity, String[] args)
>>
>> at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
>>
>> at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
>>
>> at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
>> ContextCallback callback, Object state)
>>
>> at System.Threading.ThreadHelper.ThreadStart()
>> InnerException:
>>
>> Any ideas?
>>
>> Neil
>>
>>
>>
>>
>
*******************************************************************************
>> Forum Note: Use "Reply" to post a response in the discussion forum.
>>
>>
> --bcaec51d2106c02fa804a77b7ab5
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--
Alexandre Marini
Tecnologia da Informação - DBA
msn: alexandre_marini@hotmail.com
SEFAZ-MS / SGI-UGSR / Sistemas IBM-Informix
<Cert-Info-Mgmt_color.jpg>
IBM Certified System Administrator - Informix Dynamic Server V10 / V11 /
V11.70
IBM Information Management Informix Technical Professional v3
Also,
I didn't notice any reboot or restart of the services after you made the
/etc/services entry.
Larry
> To: ids@iiug.org
> From: amarini@fazenda.ms.gov.br
> Subject: Re: Remote connect to IDS fails [24253]
> Date: Thu, 7 Jul 2011 10:34:28 -0400
>
> Hello.
> Just a tip: since you´re using .net provider, consider seriously
> adopting the DRDA protocol,
> since it´s compatible to use advanced development features (eg: visual
> studio entity framework),
> and much other things.
>
> Check it out!
> http://www-01.ibm.com/support/docview.wss?rs=4020&uid=swg27016878
>
> Regards.
>
> Em 07/07/2011 10:24, Art Kagel escreveu:
> > Use onsoctcp. The prefixes ol and on are synonyms for the native SQLI
> > communications protocol that Informix uses by default, dr specified the IBM
> > DRDA protocol which is different. You CAN use DRDA, but you'd have to
> > change the sqlhosts file on the server as well and the client will need the
> > IBM Common Client rather than the Informix client. Now it happens that the
> > Common Client's .NET support is a bit better than the Informix client's
.NET
> > support and performance may be a bit better (though it does not support all
> > Informix data types), so that is an option, but for now, you are using the
> > Informix client, so use onsoctcp on the client side as well.
> >
> > Art
> >
> > Art S. Kagel
> > Advanced DataTools (www.advancedatatools.com)
> > Blog: http://informix-myview.blogspot.com/
> >
> > Disclaimer: Please keep in mind that my own opinions are my own opinions
and
> > do not reflect on my employer, Advanced DataTools, the IIUG, nor any other
> > organization with which I am associated either explicitly, implicitly, or
by
> > inference. Neither do those opinions reflect those of other individuals
> > affiliated with any entity with which I am affiliated nor those of the
> > entities themselves.
> >
> > On Thu, Jul 7, 2011 at 9:22 AM, NEIL HAUGHTON<
> > neil.haughton@autoscribe.co.uk> wrote:
> >
> >> Okay, so here is what I have gleaned so far:
> >>
> >> Server:
> >>
> >> ONCONFIG file has a line
> >>
> >> DBSERVERNAME = ol_mat> >>
> >> Registry has a .../SQLHOSTS key with
> >>
> >> HOST=DEVDW
> >> PROTOCOL=olsoctcp
> >> SERVICE=9091
> >>
> >> The ...\\\\etc\\\\Services file has a line
> >>
> >> ol_mat = 9091/tcp
> >>
> >> which all looks correct, although I'm no expert.
> >>
> >> I'm familiar with telnet on *nix, but Windows doesn't seem to sport a
> >> telnet
> >> command, so I can't 'telnet' to the server. Is there a Winworld
equivalent?
> >>
> >> I've used Setnet32 to set defaults as:
> >>
> >> Informix Server = ol_mat
> >> Hostname = devdw
> >> protocolname = drsoctcp (olsoctcp isn't available - is that significant?)
> >> Service name = 9091
> >> Options =
> >>
> >> Current host=devdw
> >> user Name =<my username, case correct>
> >> Password Option=Password
> >> Password =<my password, case correct>
> >>
> >> Still can't connect, even with ILogin
> >>
> >> Here is the error message in my .Net test tool:
> >>
> >> IBM.Data.Informix.IfxException was unhandled
> >> Message="ERROR [08004] [Informix .NET provider][Informix]Attempt to
connect
> >> to
> >> database server (ol_mat) failed."
> >> Source="IBM.Data.Informix"
> >> ErrorCode=-2147467259
> >> StackTrace:
> >>
> >> at IBM.Data.Informix.DBCWrapper..ctor(IfxConnection connection)
> >>
> >> at IBM.Data.Informix.IfxConnectionPool.IfxConnPoolNode..ctor(IfxConnection
> >> connection)
> >>
> >> at IBM.Data.Informix.IfxConnectionPool.OpenNewConnection(IfxConnection
> >> connection, ConnectionPoolType ConnPoolType)
> >>
> >> at IBM.Data.Informix.IfxConnectionPool.Open(IfxConnection connection)
> >>
> >> at IBM.Data.Informix.IfxConnPoolManager.Open(IfxConnection connection)
> >>
> >> at IBM.Data.Informix.IfxConnection.Open()
> >>
> >> at Informix.Program.Main(String[] args) in C:\\\\Users\\
eil\\\\Documents\\\\Visual
> >> Studio 2008\\\\Projects\\\\Informix2\\\\Informix2\\\\Program.cs:line 18
> >>
> >> at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
> >>
> >> at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence
> >> assemblySecurity, String[] args)
> >>
> >> at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
> >>
> >> at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
> >>
> >> at System.Threading.ExecutionContext.Run(ExecutionContext
executionContext,
> >> ContextCallback callback, Object state)
> >>
> >> at System.Threading.ThreadHelper.ThreadStart()
> >> InnerException:
> >>
> >> Any ideas?
> >>
> >> Neil
> >>
> >>
> >>
> >>
> >
>
*******************************************************************************
> >> Forum Note: Use "Reply" to post a response in the discussion forum.
> >>
> >>
> > --bcaec51d2106c02fa804a77b7ab5
> >
> >
> >
>
*******************************************************************************
> > Forum Note: Use "Reply" to post a response in the discussion forum.
> >
> >
>
> --
>
> Alexandre Marini
>
> Tecnologia da Informação - DBA
>
> msn: alexandre_marini@hotmail.com
>
> SEFAZ-MS / SGI-UGSR / Sistemas IBM-Informix
>
> <Cert-Info-Mgmt_color.jpg>
>
> IBM Certified System Administrator - Informix Dynamic Server V10 / V11 /
> V11.70
>
> IBM Information Management Informix Technical Professional v3
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
The server has been rebooted several times. Neil.
Alex, The Setnet32 tool doesn't list onsoctcp as an option for the protocol (it's a non-editable dropdownlist). Is there a way of making this an option, or is it something I can edit in a config file afterwards? I would rather not change clients at this stage, so hopefully I can get setnet32 to recognise the correct protocol as an option. Neil
Hi Neil, What version of Setnet32 are you using? Can you please check if you can find olsoctcp as an option for the protocol? If so, please use that and try to see if that works. Regards, Ken