Feb 19 2011
MySQL, Ruby on Rails, and Mac OS X
A year ago, it was a bit of a pain to setup Ruby on Rails & MySQL on Windows Vista for the Foundations class at Carnegie Mellon. Download & install Ruby, download & install Rails, download & install MySQL, and spend some time finding a mysql.dll override to get it all to work.
A year later, with my first MacBook Pro that ships with Ruby and Rails 2, I thought setting up RoR dev environment would be just installing MySQL.
Ha! I was wrong…
Installing MySQL 5.5 64-bit was a no brainer.
gem update –system; no problems there.
gem install mysql; ooops… this is where it fell apart.
Full mysql gem install: sudo env ARCHFLAGS=”-arch x86_64″ gem install mysql — –with-mysql-config=/usr/local/mysql/bin/mysql_config
It resulted in something like the following:
Building native extensions. This could take a while...
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
Some attempts later, I ended up with this:
uninitialized constant MysqlCompat::MysqlRes
Turns out rails & gem still don’t work well with MySQL 5.5. (note: updating mysql2.bundle with the libmysqlclient library path might work…)
So time to uninstall MySQL 5.5. Hmm… how? Found this set of instructions.
- Use mysqldump to backup your databases to text files!
- Stop the database server
- sudo rm /usr/local/mysql
- sudo rm -rf /usr/local/mysql*
- sudo rm -rf /Library/StartupItems/MySQLCOM
- sudo rm -rf /Library/PreferencePanes/My*
- edit /etc/hostconfig and remove the line MYSQLCOM=-YES-
- rm -rf ~/Library/PreferencePanes/My*
- sudo rm -rf /Library/Receipts/mysql*
- sudo rm -rf /Library/Receipts/MySQL*
However, the MySQL 5.1 installer complained that a newer version of MySQL is already installed. One more piece of MySQL to clean up.
-
sudo rm -rf /var/db/receipts/com.mysql.*
That got MySQL 5.1 installed. MySQL gem installed and compiled (requires Xcode).
It worked! How about that?
Coming up next, Rails 3 on MySQL 5.5. Hopefully not another year later…

