Problems using the Mysql gem

Discussion in 'Ruby' started by Jim Burgess, Sep 6, 2010.

  1. Jim Burgess

    Jim Burgess Guest


    I'm using the mysql (2.8.1 x86-mingw32) gem and MySQL Server version
    5.0.90 on Windows 7, 64 bit. I'm also using ruby 1.8.7.

    When I run the following script (replacing user name and password

    require "rubygems"
    require "mysql"
    dbh = Mysql.real_connect("localhost", "user", "pass", "test")
    puts "Server version: " + dbh.get_server_info

    I get the following error message:

    /test.rb:3: uninitialized constant Mysql (NameError)
    from C:/Ruby187/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:32:in
    from C:/Ruby187/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:32:in
    from mysql.rb:2
    Can anyone give me a pointer as to what is going wrong?
    I have tried googling the error message, but with no luck.
    I have also read the documentation installed with the gem and as far as
    I can tell I am using the correct syntax.

    Thanks in advance.
    Jim Burgess, Sep 6, 2010
    1. Advertisements

  2. Jim Burgess

    Luis Lavena Guest

    Is MySQL installed in 64bits? Or is 32bits MySQL?

    Please note that MySQL binary needs a 32bits version of MySQL 5.0

    You can find more details about copying libmysql.dll or about
    compiling MySQL gem for 5.1 in RubyInstaller tutorial page:
    It might be that you don't have 32bits libmysql.dll somewhere in the
    PATH for Ruby to use.

    Placing a 32bits libmysql.dll in Ruby bin directory should help.
    Luis Lavena, Sep 6, 2010
    1. Advertisements

  3. Jim Burgess

    Jim Burgess Guest


    Thanks for the replies.

    After much hair pulling and messing around with environment variables I
    finally figured out what was going wrong.

    It is quite embarrassing, but I'll post it here as it might help someone

    The problem was that I'd actually called the file I was working on
    As the require 'mysql' line at the beginning of my code looks in the
    current directory first, my code was just including itself, and not the
    gem I wanted.

    Thanks again for your help.
    Jim Burgess, Sep 7, 2010
  4. Jim Burgess


    Apr 3, 2014
    Likes Received:
    Thank you so much!
    I did the same (called the file 'mysql.rb') :lol:
    annika, Apr 3, 2014
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.