Ruby on Rails를 MySQL과 같이 사용하고 있는데, Windows에서 DB 사용이 안되는 문제가 간혹 일어납니다. 이런 에러입니다.
MySQL의 버전을 5.1에서 5.0으로 낮춰도, Rails를 다시 설치해도 안됩니다.
열심히 구글링을 해본 결과, 루비에 있는 MySQL 드라이버가 잘 안맞는가 봅니다. 이것을 PHP의 것으로 써서 잘 되었다는 포럼의 글을 발견, PHP 최신 버전을 받은 뒤(http://www.php.net) libmysql.dll을 c:\ruby\bin 에 덮어쓰니 에러가 없어졌습니다.
정리하면,
1) PHP 최신 배포판 중 ZIP 형태로 된 것을 받습니다.
2) 그 중에서 libmysql.dll 을 c:\ruby\bin 에 풉니다.
3) 덮어쓰겠냐는 메시지에 "예"라고 하여 덮어씁니다.
일단 migrate는 이상이 없는데, 다른 기능까지 잘 되는지는 이것저것 더 해봐야 알 듯합니다. (DB 및 테이블 생성 잘 되는걸 보면 별 문제 없는가봅니다)
C:\Develop\Ruby\guestboard>rake db:migrate
(in C:/Develop/Ruby/guestboard)
rake aborted!
Mysql::Error: Commands out of sync; you can't run this command now: SHOW TABLES
(See full trace by running task with --trace)
(in C:/Develop/Ruby/guestboard)
rake aborted!
Mysql::Error: Commands out of sync; you can't run this command now: SHOW TABLES
(See full trace by running task with --trace)
MySQL의 버전을 5.1에서 5.0으로 낮춰도, Rails를 다시 설치해도 안됩니다.
열심히 구글링을 해본 결과, 루비에 있는 MySQL 드라이버가 잘 안맞는가 봅니다. 이것을 PHP의 것으로 써서 잘 되었다는 포럼의 글을 발견, PHP 최신 버전을 받은 뒤(http://www.php.net) libmysql.dll을 c:\ruby\bin 에 덮어쓰니 에러가 없어졌습니다.
정리하면,
1) PHP 최신 배포판 중 ZIP 형태로 된 것을 받습니다.
2) 그 중에서 libmysql.dll 을 c:\ruby\bin 에 풉니다.
3) 덮어쓰겠냐는 메시지에 "예"라고 하여 덮어씁니다.
일단 migrate는 이상이 없는데, 다른 기능까지 잘 되는지는 이것저것 더 해봐야 알 듯합니다. (DB 및 테이블 생성 잘 되는걸 보면 별 문제 없는가봅니다)
'콤퓨타 이야기 > Ruby on Rails' 카테고리의 다른 글
| Ruby on Rails with MySQL - rake로 db:migrate가 안될 때 (0) | 2009/01/30 |
|---|
이올린에 북마크하기
