• Filter
  • Time
  • Show
Clear All
new posts

  • MYSQL Bug


    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.


    Vaneet Gupta

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


    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.


    • #3
      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.


      • #4
        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



        • #5
          Hi ,


          1.I am using the ASP with mysql.

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

          3. I am using the MYISAM storage engine.

          4. MySQL version is 5.0.32 .

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

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

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



          • #6
            The link I have given is a source code patch which is being pushed into version 6, as far as I can see. (See point 3 of my response for a possible solution)

            Regarding number of open files.-... You will notice I also asked you a question after I mentioned the number of opened files.

            "How many tables / partitions do you have in your dbase?"

            Regarding platform independence. By definition, it is - http://en.wikipedia.org/wiki/Platform_independent
            but in this special case, Linux turned out to be better, because of an error in the code.

            My point about using Linux over windows, however, does not just apply to this scenario. Linux gives you the power to easily tune the system to meet the needs of databases with heavy demands...



            • #7
              Hello steve,

              I didn't the open_files in mysql because I had restarted it.

              1. 63 tables

              2. I haven't defined any partitions .

              3. I am using the stored procedures which is nearly about 500 .

              I am linux administrator. Can tell me how I will run the source code of the patch?



              • #8
                I wrote that in my previous post.

                Either you can be very brave and figure out how to apply the source code changes to version 5 yourself, and build yourself. Or you can find someone who may be willing to make a mysql 5 build with those changes. Or you can make ALOT of noise to SUN and see if they will do it...

                However... 63 tables?? that's not much at all.. Can you describe how the database is being used?

                Is it an absolute requirement that the MySQL server is running on windows?



                • #9
                  Hi Steve,

                  Can you explain what is the meaning which you had written in last post? Can you describe how the database is being used ?

                  I try to explain the database may be I could be right.

                  We are using the asp with mysql. All the tables are using storage engine MYISAM . I have disabled the innodb storage engine with skip -innodb.

                  The website is http://bookmykhana.com.

                  We have used the stored procedures mostly. It calls the stored procedure when the website run. That's I know.

                  Thanks in advance.


                  Vaneet Gupta