The issue:
ruby-1.8.7 (compiled from src, not rpm) can’t connect to mysql-5.1.58:
“Mysql::Error: #08S01Bad handshake”
Environment:
Linux Fedora Core 12 (or 14, does not matter)
remote database server (different host) mysql-5.1.58
Ruby 1.8.7:
wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p352.tar.gz
tar -xzvf ruby-1.8.7-p352.tar.gz
cd ruby-1.8.7-p352
./configure && make && make install
ln -s /usr/local/bin/ruby /usr/bin/ruby
wget http://rubyforge.org/frs/download.php/74374/rubygems-1.6.0.tgz
tar xzvf rubygems-1.3.7.tgz
cd rubygems-1.3.7
ruby setup.rb
gem install rails -v=1.2.5
cd /var/www/
rails testproject
cd testproject
script/console
ActiveRecord::Base.establish_connection(
:adapter => "mysql",
:host => "dbserver",
:username => "root",
:password => "pwd",
:database => "test",
:port => 3306
)
ActiveRecord::Base.connection.select_all(“SELECT NOW();”)
Mysql::Error: #08S01Bad handshake
from /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/
active_record/vendor/mysql.rb:523:in read' from /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/ active_record/vendor/mysql.rb:153:in
real_connect’
from /usr/local/lib/ruby/gems/1.8/gems/activerecord-1.15.5/lib/
active_record/connection_adapters/mysql_adapter.rb:389:in `connect’
…