Hi guys, I am having some difficulties with mysql :)
I have rails working and activerecord works, and I can create
webapps that display and update databases just fine.
However, I am not using rails. I just want to do some simple
inserts to a database.
So, I tried something like the following:
require 'rubygems'
require 'active_record/vendor/mysql'
@db = Mysql.new(hostname, username, password, databasename)
db.query("insert into sent mail (id, recip, subject,spam)
values(12,'foo','foo','y')")
Mysql::Error: Lost connection to MySQL server during query
from
/usr/lib/ruby/gems/1.8/gems/activerecord-1.14.2/lib/active_record/vendor/mysql.rb:1092:in
`read'
from
/usr/lib/ruby/gems/1.8/gems/activerecord-1.14.2/lib/active_record/vendor/mysql.rb:499:in
`read'
from
/usr/lib/ruby/gems/1.8/gems/activerecord-1.14.2/lib/active_record/vendor/mysql.rb:381:in
`read_query_result'
from
/usr/lib/ruby/gems/1.8/gems/activerecord-1.14.2/lib/active_record/vendor/mysql.rb:180:in
`real_query'
from
/usr/lib/ruby/gems/1.8/gems/activerecord-1.14.2/lib/active_record/vendor/mysql.rb:307:in
`query'
I then tried downloading and installing mysql-ruby-2.7
I have mysql-client installed and I ran test.rb connecting to a mysql-4
server and got the following
failures:
1) Failure:
test_execute2(TC_MysqlStmt2) [test.rb:628]:
<[123]> expected but was
<[196864]>.
2) Error:
test_execute3(TC_MysqlStmt2):
Mysql::Error: Out of memory (Needed 2063600648 bytes)
test.rb:637:in `execute'
test.rb:637:in `test_execute3'
3) Failure:
test_execute4(TC_MysqlStmt2) [test.rb:653]:
<[nil, "hoge", #<Mysql::Time:2005-07-19 23:53:00>]> expected but was
<[nil, "\001", #<Mysql::Time:0000-00-00 00:00:00>]>.
4) Failure:
test_sqlstate(TC_MysqlStmt2) [test.rb:1288]:
<""> expected but was
<"00000">.
So THEN, I tried ruby-mysql-0.2.6. This actually works just fine
against my mysql 4 server, but
when I run it against mysql 5, I get the following:
connect............../mysql.rb:453:in `read': Client does not support
authentication protocol requested by server; consider upgrading MySQL
client (Mysql::Error)
So I am out of luck if I want to use mysql 5. However my rails apps
work with a mysql5 server.
Anyone have any idea what I should be doing?
I'd appreciate assistance as I am quite muddled after all of this... I
haven't even looked at Ruby-DBI yet!
:)
Thanks,
Rohit