Problems using the Mysql gem

J

Jim Burgess

Hi,

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
appropriately)

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

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
`gem_original_require'
from C:/Ruby187/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:32:in
`require'
from mysql.rb:2
Exit code: 1

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.
 
L

Luis Lavena

Hi,

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.

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

Please note that MySQL binary needs a 32bits version of MySQL 5.0
"libmysql.dll"

You can find more details about copying libmysql.dll or about
compiling MySQL gem for 5.1 in RubyInstaller tutorial page:

http://github.com/oneclick/rubyinstaller/wiki/Tutorials
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.

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.
 
J

Jim Burgess

Hi,

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
else.

The problem was that I'd actually called the file I was working on
'mysql.rb'.
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.
Doh!

Thanks again for your help.
 

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. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,968
Messages
2,570,149
Members
46,695
Latest member
StanleyDri

Latest Threads

Top