Skip to content

An enhanced mysql driver with an async interface, threaded access support, and encoding awareness for Ruby 1.9

Notifications You must be signed in to change notification settings

jeremysuriel/mysqlplus

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

== MySQLPlus

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

Added Encoding awareness for Ruby 1.9.  Convert all data to default external encoding ( merged from http://github.com/lsegal/mysql-ruby )

== 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 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

About

An enhanced mysql driver with an async interface, threaded access support, and encoding awareness for Ruby 1.9

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 85.2%
  • Ruby 14.8%