MYSQL Bug

Hello,

I am Linux Administrator. But these I am using the mysql in windows 2003 . We are using the ASP application. After the few hours I got the following error message from the IIS Admin

Changed limits: max_open_files: 2048 max_connections: 100 table_cache: 969

Even we are not opening the files upto 2048. I am using the mysql 5.0.32 version.

This error is the worse error I have faced in the mysql . It makes the incompatibility of the mysql on different platform.

How can we say that the mysql is platform independent and powerful . If it is not handle to open the files more that 2048 in windows.

Kindly suggest the solution for this bug.

Regards

Vaneet Gupta

I did a quick Google search and came up with these bugs which may help you:

http://bugs.mysql.com/bug.php?id=21915
http://bugs.mysql.com/bug.php?id=24509
http://bugs.mysql.com/bug.php?id=22300

I’ve never administrated MySQL on windows, but I have seen large installations at my past jobs, so I’m pretty sure this is just an old bug somewhere or there is a simple work-around.

Thanks ,

But I don’t think it will work. The link you have given , there is also mention that the problem is not resolved of the certain people.

To begin with, MySQL for windows is a port. I wouldnt have ever described it as being true “multi-platform” in that sense - and being a port means that some things will not work as well as the original development platform was intended, without tweaking form time to time. In this case the problem is that MySQL is using the windows Posix I/O interfaces, which are limited to 2048 open file handles…

A patch for source code is listed for this in June 2008 (http://lists.mysql.com/commits/47983), which uses the native w32 handles…

I highly doubt, however, that the changes will be implemented in the 5.x tree, as this is quite a core change, and is safer to implement in the 6.x tree (not yet released)

So you are left with a few options here.

  1. Change your DB platform to Linux. 2 reasons. 1:- Linux will fix your problem. 2:- Its bad practice to run a db server on a server that does other stuff (a db server should only be a db server) I assume you are running IIS/ASP and connect to db server localhost? - Also a third thing. In my experience, Linux outshines windows for MySQL by a LONG way. Especially when using InnoDB. (O_DIRECT etc)

  2. Identify why your db needs so many open files. How many tables/partitions do you have?

  3. See if you can find a source code patch for the 5.x tree or get someone to make one (make some noise in various forums where mysql devs are present). Someone may be willing to make a custom build of latest MySQL 5.0.x and 5.1.x that addresses this problem. I see alot of people on the net are having the same issue.

Good luck

//Steve

Hi ,

Yes,

1.I am using the ASP with mysql.

  1. My DB and ASP is on the local server.

  2. I am using the MYISAM storage engine.

  3. MySQL version is 5.0.32 .

  4. How can I come to know , why mysql is opening so much files ?

  5. The link you have given , is it the patch for mysql 5.x ?

  6. If mysql is not good in windows , then we can’t say it is platform independent.

Vaneet