An enhanced MySQL database driver. With support for async operations and threaded database access.
gem build mysqlplus.gemspec
with the default mysql installed: sudo gem install mysqlplus-0.1.0.gem -- --with-mysql-config with mysql installed by macports: sudo gem install mysqlplus-0.1.0.gem -- --with-mysql-config=/opt/local/lib/mysql5/bin/mysql_config with mysql installed by homebrew: sudo gem install mysqlplus -- --with-mysql-config=/usr/local/Cellar/mysql/5.1.51/bin/mysql_config 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
apt-get install libmysql++-dev gem install mysqlplus
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.
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/
Aman Gupta, for help in threading support and improved tests Tomita Masahiro–since this is a fork of his already excellent mysql lib [www.tmtm.org/en/mysql/ruby]. Roger Pack, for helping in the file descriptor hunt :) Lourens Naude for 1.9 integration help.
Ruby License, www.ruby-lang.org/en/LICENSE.txt.