Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

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

branch: master
README
== 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
Something went wrong with that request. Please try again.