2009-10-01 3 views
1

У меня возникли проблемы при работе грабли БД: создать:Rails дб: создать ошибку сортировки

[[email protected] /domain/rails/testapp ]# rake db:create --trace 
(in /domain/rails/testapp) 
** Invoke db:create (first_time) 
** Invoke db:load_config (first_time) 
** Invoke rails_env (first_time) 
** Execute rails_env 
** Execute db:load_config 
** Execute db:create 
Couldn't create database for {"adapter"=>"mysql", "encoding"=>"utf8", "collation"=>"utf8_bin", "reconnect"=>false, "database"=>"testapp_development", "pool"=>5, "username"=>"root", "password"=>"rootpass", "socket"=>"/var/run/mysqld/mysqld.sock", "host"=>"127.0.0.1"}, charset: utf8, collation: utf8_bin (if you set the charset manually, make sure you have a matching collation) 

Я приложил все возможные версии и настройки информации я могу думать ниже. Я пробовал все решения, которые я нашел в Google, и мне не повезло. Есть ли у кого-нибудь какие-либо решения или предложения? Благодаря!

[[email protected] /domain/rails/testapp ]# mysql --version 
mysql Ver 14.14 Distrib 5.1.38, for unknown-linux-gnu (x86_64) using EditLine wrapper 

mysql> show variables like "character_set_database"; 
+------------------------+-------+ 
| Variable_name   | Value | 
+------------------------+-------+ 
| character_set_database | utf8 | 
+------------------------+-------+ 
1 row in set (0.00 sec) 

mysql> show variables like "collation_database"; 
+--------------------+----------+ 
| Variable_name  | Value | 
+--------------------+----------+ 
| collation_database | utf8_bin | 
+--------------------+----------+ 
1 row in set (0.00 sec) 

[[email protected] /domain/rails/testapp ]# ruby -v 
ruby 1.9.1p243 (2009-07-16 revision 24175) [x86_64-linux] 

[[email protected] /domain/rails/testapp ]# rails -v 
Rails 2.3.4 

[[email protected] /domain/rails/testapp ]# gem -v 
1.3.5 

[[email protected] /domain/rails/testapp ]# gem list 

*** LOCAL GEMS *** 

actionmailer (2.3.4) 
actionpack (2.3.4) 
activerecord (2.3.4) 
activeresource (2.3.4) 
activesupport (2.3.4) 
cgi_multipart_eof_fix (2.5.0) 
daemons (1.0.10) 
fastthread (1.0.7) 
gem_plugin (0.2.3) 
mysql (2.8.1) 
rack (1.0.0) 
rails (2.3.4) 
rake (0.8.7) 
rubygems-update (1.3.5) 

Мой database.yml:

development: 
    adapter: mysql 
    encoding: utf8 
    collation: utf8_bin 
    reconnect: false 
    database: testapp_development 
    pool: 5 
    username: root 
    password: rootpass 
    socket: /var/run/mysqld/mysqld.sock 
    host: 127.0.0.1 

ответ

0

Вы пробовали не указав параметры сортировки? Я указываю кодировку, а не сортировку для моей базы данных MySQL, используя utf8, и она работает.

+0

Спасибо за ответ. Я пробовал без указания кодировки и сортировки, но ни одна из этих перестановок не работала. – 2009-12-14 16:08:20

0

Измените линию сопоставления в файле database.yml на любые последующие значения show variables like "collation_server";.

Тогда попробуйте rake RAILS_ENV=development db:create.

Смежные вопросы