# Production mode and mysql library question

**URL:** <https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001>\
**Category:** Rails\
**Created:** [December 23, 2007, 9:18am UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001 "2007-12-23T09:18:39Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![jawosis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jawosis](https://www.ruby-forum.com/u/jawosis)\
**Post date:** [December 23, 2007, 9:18am UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001/1 "2007-12-23T09:18:39Z")

</div>

I just put one application in production mode to see if everything  
works fine.

I runs on a Debian/Etch machine:

gems:

actionmailer (2.0.2)  
actionpack (2.0.2)  
activerecord (2.0.2)  
activeresource (2.0.2)  
activesupport (2.0.2)  
cgi\_multipart\_eof\_fix (2.5.0)  
fastthread (1.0.1)  
mongrel (1.1.2)  
mongrel\_cluster (1.0.5)  
mysql (2.7)  
…

libs:

ibdpkg-ruby1.8 install  
libgems-ruby1.8 install  
libhttp-access2-ruby1.8 install  
libintl-gettext-ruby1.8 install  
libmysql-ruby install  
libmysql-ruby1.8 install  
libopenssl-ruby install  
libopenssl-ruby1.8 install  
libreadline-ruby1.8 install  
libruby1.8 install  
libsqlite3-ruby1.8 install  
libxml-parser-ruby1.8 install  
ruby install  
ruby1.8 install  
ruby1.8-dev install  
rubygems install  
libdbd-mysql-perl install  
libmysql-ruby install  
libmysql-ruby1.8 install  
libmysqlclient15-dev install  
libmysqlclient15off install  
mysql-client-5.0 install  
mysql-common install  
mysql-server install  
mysql-server-5.0 install

…

gem install mysql – --with-mysql-config=/usr/bin/mysql\_config

No problems at all, but my logfile still shows:

WARNING: You’re using the Ruby-based MySQL library that ships with  
Rails. This library is not suited for production. Please install the C-  
based MySQL library instead (gem install mysql).

What’s wrong here?

Thanx

–  
Jochen K.  
[figgfrosch.de](http://figgfrosch.de) / [gissmoh.de](http://gissmoh.de) / [ror-ror.de](http://ror-ror.de) / [railswerk.de](http://railswerk.de)

---

<div class="post-metadata">

**Author:** ![jawosis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jawosis](https://www.ruby-forum.com/u/jawosis)\
**Post date:** [December 23, 2007, 10:33am UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001/2 "2007-12-23T10:33:32Z")

</div>

On 23 Dec 2007, at 08:18, Jochen K. wrote:

> No problems at all, but my logfile still shows:
> 
> WARNING: You’re using the Ruby-based MySQL library that ships with  
> Rails. This library is not suited for production. Please install the  
> C-  
> based MySQL library instead (gem install mysql).

If you open up irb and do

require ‘rubygems’  
require ‘mysql’

What happens ?

Fred

---

<div class="post-metadata">

**Author:** ![jawosis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jawosis](https://www.ruby-forum.com/u/jawosis)\
**Post date:** [December 23, 2007, 10:51am UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001/3 "2007-12-23T10:51:07Z")

</div>

Am 23.12.2007 um 10:32 schrieb Frederick C.:

> > gems:
> 
> If you open up irb and do
> 
> require ‘rubygems’  
> require ‘mysql’
> 
> What happens ?

root@pitbull:/tmp# irb  
irb(main):001:0\> require ‘rubygems’  
=\> true  
irb(main):002:0\> require ‘mysql’  
=\> true  
irb(main):003:0\>

---

<div class="post-metadata">

**Author:** ![jawosis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jawosis](https://www.ruby-forum.com/u/jawosis)\
**Post date:** [December 23, 2007, 11:05am UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001/4 "2007-12-23T11:05:08Z")

</div>

Am 23.12.2007 um 11:00 schrieb Frederick C.:

> > > If you open up irb and do  
> > > irb(main):002:0\> require ‘mysql’  
> > > =\> true  
> > > irb(main):003:0\>
> 
> I notice you’re running as root - does it still work not as root  
> (perhaps the gem somehow got installed in a way non root users can’t  
> get at ?)
> 
> Fred

root@pitbull:~# sudo su gissmoh  
gissmoh@pitbull:/root$ irb  
irb(main):001:0\> require ‘rubygems’  
=\> true  
irb(main):002:0\> require ‘mysql’  
=\> true  
irb(main):003:0\>

–  
Jochen K.  
[figgfrosch.de](http://figgfrosch.de) / [gissmoh.de](http://gissmoh.de) / [ror-ror.de](http://ror-ror.de) / [railswerk.de](http://railswerk.de)

---

<div class="post-metadata">

**Author:** ![jawosis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jawosis](https://www.ruby-forum.com/u/jawosis)\
**Post date:** [December 23, 2007, 4:56pm UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001/5 "2007-12-23T16:56:31Z")

</div>

Am 23.12.2007 um 09:18 schrieb Jochen K.:

> WARNING: You’re using the Ruby-based MySQL library that ships with  
> Rails. This library is not suited for production. Please install the  
> C-  
> based MySQL library instead (gem install mysql).
> 
> What’s wrong here?

nobody else with this problem?

–  
Jochen

---

<div class="post-metadata">

**Author:** ![jawosis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jawosis](https://www.ruby-forum.com/u/jawosis)\
**Post date:** [December 23, 2007, 11:00am UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001/6 "2007-12-23T11:00:28Z")

</div>

On 23 Dec 2007, at 09:50, Jochen K. wrote:

> > What happens ?
> 
> root@pitbull:/tmp# irb  
> irb(main):001:0\> require ‘rubygems’  
> =\> true  
> irb(main):002:0\> require ‘mysql’  
> =\> true  
> irb(main):003:0\>

I notice you’re running as root - does it still work not as root  
(perhaps the gem somehow got installed in a way non root users can’t  
get at ?)

Fred

---

<div class="post-metadata">

**Author:** ![jawosis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jawosis](https://www.ruby-forum.com/u/jawosis)\
**Post date:** [December 23, 2007, 5:07pm UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001/7 "2007-12-23T17:07:05Z")

</div>

On 23 Dec 2007, at 15:56, Jochen K. wrote:

> > What’s wrong here?  
> > Stick a breakpoint in rails/activerecord/lib/active\_record/  
> > connection\_adapters/mysql\_adapater.rb  
> > It falls back to ruby mysql if it an exception is raised while  
> > requiring the gem, which usually means the gem isn’t there. If you can  
> > peak at the exception in the debugger (or comment out the rescue so  
> > that it bubbles to the surface) then it might shed a little more light  
> > on the issue

Fred

---

<div class="post-metadata">

**Author:** ![jawosis](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/f04885/32.png) [@jawosis](https://www.ruby-forum.com/u/jawosis)\
**Post date:** [March 15, 2008, 12:52am UTC](https://www.ruby-forum.com/t/production-mode-and-mysql-library-question/124001/8 "2008-03-15T00:52:52Z")

</div>

Frederick C. wrote:

> On 23 Dec 2007, at 08:18, Jochen K. wrote:
> 
> > No problems at all, but my logfile still shows:
> > 
> > WARNING: Youï¿½re using the Ruby-based MySQL library that ships with  
> > Rails. This library is not suited for production. Please install the  
> > C-  
> > based MySQL library instead (gem install mysql).
> 
> If you open up irb and do
> 
> require ‘rubygems’  
> require ‘mysql’
> 
> What happens ?
> 
> Fred

What would you have said if it failed to load?  
% irb  
irb(main):001:0\> require ‘rubygems’  
=\> true  
irb(main):002:0\> require ‘mysql’  
LoadError: Failed to load  
/usr/local/lib/ruby/gems/1.8/gems/mysql-2.7/lib/mysql.bundle  
from  
/usr/local/lib/ruby/gems/1.8/gems/mysql-2.7/lib/mysql.bundle  
from  
/usr/local/lib/ruby/site\_ruby/1.8/rubygems/custom\_require.rb:32:in  
`require’  
from (irb):2

My system:  
Os X 10.4.11  
PPC

ruby 1.8.6 (2007-03-13 patchlevel 0) [powerpc-darwin8.11.0]  
gem 1.0.1  
Rails 2.0.2  
mysql-5.0.51a-osx10.4-powerpc-64bit

% gem list

\*\*\* LOCAL GEMS \*\*\*  
…  
mysql (2.7)  
…
