MySQL Gem, Ubuntu & UTF8 - PullRequest
       4

MySQL Gem, Ubuntu & UTF8

2 голосов
/ 01 сентября 2009

У меня есть веб-приложение, которое было сделано в Rails 1.2.3, и я только что перенесло его на rails 2.2.2, и после развертывания приложение сломалось. Оказывается, мне нужно было установить гем MySQL, так как это нужно rails 2.2.2.

Итак, я установил его, но мне пришлось установить с помощью "sudo gem install mysql - -with-mysql-config" (согласно http://brantinteractive.com/2007/02/16/getting-the-mysql-gem-installed-on-ubuntu/), и это, похоже, помогло. Я на Ubuntu 6.06.2 LTS Dapper.

Приложение не будет загружаться в производство. Итак, я загрузился с использованием скрипта / консоли, и вот что вернулось:

Loading production environment (Rails 2.2.2)
Character set 'utf8' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index' file
/usr/local/lib/ruby/gems/1.8/gems/activerecord-2.2.2/lib/active_record/connection_adapters/mysql_adapter.rb:548:in `real_connect':Mysql::Error: Can't initialize character set utf8 (path: /usr/share/mysql/charsets/)
>>

Я немного искал эту ошибку, и кто-то сказал, что клиент mysql, который я использую (гем MySQL!), Не подключается с использованием UTF8. Я не знаю, как установить этот драгоценный камень любым другим способом, чтобы он устанавливался правильно. Есть идеи?

Ответы [ 3 ]

0 голосов
/ 08 сентября 2009

Подтверждено. Установка libmysqlclient15-dev поверх libmysqlclient12-dev сделала свое дело.

0 голосов
/ 26 мая 2011

Выполните следующие 2 шага, чтобы установить mysql gem 2.7

sudo apt-get install ruby-dev

sudo gem install mysql –v 2.7

0 голосов
/ 01 сентября 2009

Я бы посоветовал проверить совместимую версию с установленной версией MySql, например mysql-2.7.3.gem, которая бы хорошо работала с mysql 5.1 или выше, но имела бы проблемы с 5.0. во-вторых, проверьте, правильно ли установлен mysql, как при запросе mysql, попробуйте создать базу данных. затем, если обе проблемы будут решены, просто проверьте путь к сокету вашей установки mysql и добавьте его в файл database.yml.

socket /var/tmp/mysql/mysql.sock.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...