Cannot bind network name to port

From: Nigel Gall <nigelg_at_ppsl.com>
Date: Thu, 29 Oct 1998 17:03:00 -0400

Hi!

Server : DEC AlphaServer 4100 5/533, 3 CPU's, 512MB RAM
OS : Digital UNIX 4.0D
Database : INFORMIX Dynamic Server 7.23.FC4

Basically, I was converting my system from Base to Enhanced Security
level, and I forgot to change the root password. I halted the server
using the Halt button on the front panel, so that I could boot into
single user mode and resolve this. However, since all passwords are
pretty much expired when the convuser command is run, informix's
password was also shot; hence I was not able to shutdown the engine
before rebooting.

When I came up I reset the passwords and tried to initialize the engine.
It failed, and the message log contained complaints about failure to
start the listener thread, and referenced INFORMIX error -25572 and
System Error 48. To resolve this I restored root and /usr from backup
after fighting with it for a few hours. I'm really sorry I don't have
the message log since the INFORMIX software is in /usr/informix and it
got overwritten by the restore (I foolishly didn't print it out or copy
it to one of the other non-system drives; I've learn't a lot from this
error). Looking up the error message with the INFORMIX utility,
finderr, I get the following:

hydrogen.ppsl.com!/usr/informix/dev 4 $ finderr 25572
-25572 Network driver cannot bind a name to the port.
A system call has failed. The sqlexecd daemon or INFORMIX-OnLine Dynamic
Server cannot access the network port that is specified by the
servicename in the sqlhosts file for the database server. This situation
might occur because the network port is already in use by another
sqlexecd, database server, or other application. Use a different
servicename on the command line (prior to Version 6.0) or in the
sqlhosts file (beginning with Version 6.0). Contact your UNIX system
administrator for assistance

I tried renaming the service name in the INFORMIX netowrk configuration
file $INFORMIXDIR/etc/sqlhosts and /etc/services; I also tried changing
the port number from 1526 to 3500. I also tried modifying the INFORMIX
engine configuration file, $ONCONFIG, to remove the aliases for the
$INFORMIXSERVER which uses the netoworking protocol (in my case
onsoctcp) so that maybe the server will come up using shared memory only
(onipcstr). It didn't work. Since the restore worked, I'm theorising
that INFORMIX or UNIX stores some information about ports that are open
in some area in root or /usr (possibly /var?) and it fails to clean it
up on rebooting. Reviewing the manuals/documentation for both INFORMIX
and DU 4.0D have not helped me solve this.

Does anyone have any ideas? What this means is that if for some reason
my UPS fails on me and my server dies instananeously, then upon reboot,
the database engine will not start up. I would not like to have to take
system backups every night (though with the speed of my server I won't
be put out much; vdumps of / and /usr take 8 minutes with no other
activity on the system). Thanks for your help in advance.

Best regards,

Edmund Nigel Gall
Information Systems Specialist
Process Plant Services Limited
Atlantic Avenue, Point Lisas Industrial Estate
Point Lisas, Couva, Trinidad & Tobago, W.I.
Tel: (868) 636 3153 Fax: (868) 636 3770
Received on Thu Oct 29 1998 - 21:06:32 NZDT

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:38 NZDT