簡體   English   中英

當我通過 rvm 使用 rails3 時,如何在 ubuntu 上安裝 mysql2 gem?

[英]How do I install the mysql2 gem on ubuntu, when I'm using rails3 via rvm?

我正試圖繞過作為導軌配置的極其復雜的迷宮。 到目前為止,我已經設法在 ubuntu 上設置了 rvm(由於某種原因,ruby 在 ubuntu 存儲庫中已過時)。 我設法建立了一個rails項目。 我希望我的測試項目使用 mysql 而不是 mysqlite。

當我嘗試 'rake db:migrate' 時,出現錯誤:“.:!缺少 mysql2 gem。將其添加到您的 Gemfile:gem 'mysql2'”

當我嘗試“gem install mysql”時,我收到一個錯誤,告訴我需要為安裝命令提供參數。 但是,參數列表很大,我不知道 select 的參數列表。

如何通過 rvm 在 ubuntu 和 mysql 上運行獲得 rails3?

謝謝。

我有同樣的問題,你需要做的就是先安裝 libmysqlclient-dev。

干杯

首先,您需要安裝 mysql。 您可以使用 Ubuntu 的 package 管理器安裝它。 無需特殊步驟。 您還需要使用 mysql 工具最初創建數據庫和用戶。 此鏈接顯示了如何做到這一點:

http://www.tutorialspoint.com/ruby-on-rails/rails-database-setup.htm

其次,您需要在 Gemfile 中列出 mysql2 gem。 這告訴 Rails 提前 go 並使用該 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 如何在開發環境中找到你的數據庫。

一旦一切就緒,一切就應該奏效了。

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

在帶有 Homebrew 的 Mac OS X 上:

brew install mysql

然后運行

bundle install

安裝到 gemfile 中列出的 gems

我相信您需要將 gem 名稱添加到位於項目根目錄中的 Gemfile 中:

它應該是這樣的:

source 'http://rubygems.org'

gem 'rails', version
gem 'mysql', version

其中 version 是您要安裝的 gem 版本,默認情況下會有一堆其他信息。

然后,導航到您的項目目錄並運行 bundle 命令,您應該已經設置好了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM