We upgraded MySQL server from 4.1 to 5.0 in 3 servers. For various reasons (the most important is strict control of the versions) we always (since a lot of years) compiled the program from the sources.

No problem at all with 2 of the servers, but we are unable to start the new server on the third PC, it always says that the address is already in use! Here is the exact error:

090830 10:08:16 [ERROR] Can't start server: Bind on TCP/IP port: Address already in use 090830 10:08:16 [ERROR] Do you already have another mysqld server running on port: 3306 ?

Obviously there is no other mysql server running! We stop it before installing the new version. Moreover, if we reinstall the 4.1 version it starts without any problem. I tried it tens of times!

We use the exactly the same compile options on the three servers. Almost anything is the same: inetd.conf, login.conf, master.passwd mysql line, group, filesystem permissions on the logs, run and data directory...

Today I have done some new experiments and found that the new server starts correctly if we let it run as root ("user = root")!
But obviously I don't want to let it run as root...

So, the question is: what could make a normal (non root) user be unable to "bind" to a port that root user can bind?

As the same server works on the other two PCs, there must be some subtle difference in this PC, but I really cannot find what!
Anybody have any suggestion?

Thanks.

Reply via email to