mysqlplus icon indicating copy to clipboard operation
mysqlplus copied to clipboard

An enhanced mysql driver with an async interface and threaded access support

== MySQLPlus

An enhanced MySQL database driver. With support for async operations and threaded database access.

== Building

gem build mysqlplus.gemspec

on OSX with the default mysql installed:

sudo gem install mysqlplus-0.1.0.gem -- --with-mysql-config

on OSX, with mysql installed by macports:

sudo gem install mysqlplus-0.1.0.gem -- --with-mysql-config=/opt/local/lib/mysql5/bin/mysql_config

on OSX, with mysql installed by homebrew:

sudo gem install mysqlplus -- --with-mysql-config=/usr/local/Cellar/mysql/5.1.51/bin/mysql_config

on OSX, with x86 mysql (NOT x86_64!) installed from mysql.com:

sudo env ARCHFLAGS="-arch i386" gem install mysqlplus-0.1.0.gem -- \
  --with-mysql-dir=/usr/local/mysql \
  --with-mysql-lib=/usr/local/mysql/lib \
  --with-mysql-include=/usr/local/mysql/include

== Using to use within rails add require 'mysqlplus' to the top of environment.rb this instantiates the Mysql class that you can use. and it will automagically use async_query instead of query, so it's a drop in replacement.

Same with other scripts that want to use it--just require 'mysqlplus' BEFORE you require 'mysql' and it will load the asynchronous version, then ignore the sequent require 'mysql' call.

== Other helpful mysql utilities: slim attributes http://slim-attributes.rubyforge.org/ boosts mysql speed by using arrays instead of hashed lookup. Hash extension gem also results in speedups when used: http://blog.chak.org/2008/02/09/speeding-up-activerecord-with-hashes-take-2/

=== Credits

Aman Gupta, for help in threading support and improved tests Tomita Masahiro--since this is a fork of his already excellent mysql lib [http://www.tmtm.org/en/mysql/ruby]. Roger Pack, for helping in the file descriptor hunt :) Lourens Naude for 1.9 integration help.

=== License Ruby License, http://www.ruby-lang.org/en/LICENSE.txt.

== Mailing list http://groups.google.com/group/never-block?hl=en