我正试图绕过极其复杂的迷宫,即铁轨配置。到目前为止,我已经设法在ubuntu上设置rvm(出于某种原因,ruby在ubuntu repo中已经过时了)。 我设法建立了一个rails项目。我希望我的测试项目使用mysql而不是mysqlite。
当我尝试'rake db:migrate'时,我收到一个错误: “!!!缺少mysql2 gem。将它添加到你的Gemfile:gem'mysql2'”
当我尝试'gem install mysql'时,我收到一个错误,告诉我需要为安装命令提供参数。但是,参数列表很大,我不知道选择哪一个。
如何通过使用mysql在ubuntu上运行rvm来获取rails3?
感谢。
答案 0 :(得分:22)
我有同样的问题,你需要做的就是首先安装libmysqlclient-dev。
欢呼声
答案 1 :(得分:2)
首先,你需要安装mysql。您可以使用Ubuntu的软件包管理器安装它。无需特殊步骤。您还需要使用mysql工具初始创建数据库和用户。此链接显示了如何执行此操作:
http://www.tutorialspoint.com/ruby-on-rails/rails-database-setup.htm
其次,您需要在Gemfile中列出mysql2 gem。这告诉Rails继续使用那个gem。你需要这样的一行:
gem 'mysql2', '< 0.3'
我指定的版本小于0.3,因为我使用的是Rails 3.0.7,版本0.3及更高版本适用于Rails 3.1。另外,一定要使用mysql2 gem而不是mysql - 它似乎更好地处理字符编码。
第三,运行“bundle install”,以便Rails下载并安装mysql2 gem。
最后,您需要更改database.yml文件以放入数据库的连接信息,如下所示:
development:
adapter: mysql2
database: your_database_name
username: your_username
password: your_password
encoding: utf8
编码部分正是我正在使用的,你可能需要不同的东西。此条目告诉Rails如何在开发环境中找到您的数据库。
一旦完成,事情应该有效。
答案 2 :(得分:1)
sudo apt-get install libmysql-ruby libmysqlclient-dev
如果上述命令无效,因为找不到libmysql-ruby
,则以下内容就足够了:
sudo apt-get install libmysqlclient-dev
在Red Hat / CentOS和其他使用yum的发行版上:
sudo yum install mysql-devel
在带有自制软件的Mac OS X上:
brew install mysql
然后运行
bundle install
安装到gemfile中列出的gems
答案 3 :(得分:0)
也许这个链接可以帮到你。 http://www.dreamincode.net/forums/blog/1662/entry-3490-day-6-installing-rails-gem-rvm-etc/
答案 4 :(得分:0)
我相信您需要将宝石名称添加到您的项目根目录中的Gemfile:
它应该是这样的:
source 'http://rubygems.org'
gem 'rails', version
gem 'mysql', version
版本是您要安装的gem版本,默认情况下会有一堆其他信息。
然后,导航到项目目录并运行bundle命令,您应该进行设置。