« Kirbybase for Ruby との格闘 | トップページ | Ruby 開発環境 »

2007年9月 7日 (金)

MySQLとの格闘

昨日Kirbybaseが使えないことがわかったので、本日はMySQLとの格闘である。

まずはローカルの環境構築である。

  1. MySQL5.0のインストール
  2. ruby から使うための設定

以上やるだけだったが、非常につかれた。

MySQLのインストール

まずは、以下よりMySQLをとってくるところから。

http://dev.mysql.com/downloads/

lolipopは4.0とか4.1が入っているはずなので、4系がいいかなとも思ったが、何気なく5.0をとってきてインストールした。

インストール自体はウィザードに従ってGUIでプチプチやってくだけで、ストレスなくできた。

RubyからMySQLを使うための設定

以下にもあるように、2つのモジュールがあるようだ。

http://dev.mysql.com/downloads/ruby.html

  1. MySQL/Ruby
  2. Ruby/MySQL

その名前どうよ・・ とも思うが、1と2は同じ作者がつくっており、1はC言語のAPIを呼び出すつくりとなっているようで、動かすためには、コンパイルやらなにやら、難しく、結局できなかった。2はpure rubyでできているので、設定自体は非常に簡単である。

しかし、何も考えずに2を使うと、以下のトラップにひっかかる。

C:\Users\hogehoge\Downloads\ruby-mysql-0.2.6>ruby test.rb localhost user pw

connect............../mysql.rb:453:in `read': Client does not support authentica tion protocol requested by server; consider upgrading MySQL client (Mysql::Error )
from ./mysql.rb:130:in `real_connect'
from ./mysql.rb:91:in `initialize'
from ./mysql.rb:1085:in `new'
from ./mysql.rb:1085:in `connect'
from ./t/00connect.rb:1
from test.rb:23:in `load'
from test.rb:23
from test.rb:19:in `each'
from test.rb:19

C:\Users\hogehoge\Downloads\ruby-mysql-0.2.6>

なんじゃこりゃ?

どうやら、予想では最近のMySQLは認証の方式が変わったようで、このライブラリはそのままでは、新しい方法に対応していないようである。

実際WEBをみると、ユーザのパスワードを以下のようにして、旧方式に戻せと書いてある・・

SET PASSWORD FOR <ユーザ名>@localhost = OLD_PASSWORD(<パスワード>);

なんだかなぁ・・

結局そのようにしたら、つながるようにはなったんだけど・・

ただし、rootのパスワード認証方式かえちゃうと、(未確認ながら)mysqlコマンドでログインできなくなったりしたらいやだったので、別途ユーザをつくり、そいつのパスワードを上記のようにして旧方式に変えてやりました。

あー、つかれた。

RubyとMySQLなんて、黄金の組み合わせだと思ってたんだけど、まだまだ不便な世の中ですね。

 

« Kirbybase for Ruby との格闘 | トップページ | Ruby 開発環境 »

パソコン・インターネット」カテゴリの記事

コメント

Yの開発環境、全部 OLD_PASSWORD になってるぞ(w

おっ! しーやん、イラッサイ(^^)/

>Yの開発環境、全部 OLD_PASSWORD になってるぞ(w

やっぱそーかw
まあ、実際のところ動きゃいいんだけどねぇ・・

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/34023/16374351

この記事へのトラックバック一覧です: MySQLとの格闘:

« Kirbybase for Ruby との格闘 | トップページ | Ruby 開発環境 »

Haruya's Violin

2017年10月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

最近のトラックバック

無料ブログはココログ