私は次の構成を持っています:
Ruby version 1.9.2 (i386-mingw32)
RubyGems version 1.7.2
Rack version 1.2
Rails version 3.0.3
Active Record version 3.0.1
Action Pack version 3.0.3
Active Resource version 3.0.3
Action Mailer version 3.0.3
Active Support version 3.0.3
コマンドを実行rake db:create
していますが、何も返されず、トレースを使用すると、画面に次の出力が表示されます
E:\Crawler\server>rake db:create --trace
** 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
rake aborted!
C:/Ruby192/lib/ruby/gems/1.9.1/gems/mysql2-0.2.7/lib/active_record/connection_adapters/mysql2_adapter.rb:312:in `query'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/mysql2-0.2.7/lib/active_record/connection_adapters/mysql2_adapter.rb:312:in `execute
rake db:migrate コマンドを実行すると、次のように返されます。
E:\Crawler\server> rake db:migrate
rake aborted!
Unknown database 'marketplace_development'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
私のレーキファイルは次のとおりです。
# Add your own tasks in files placed in lib/tasks ending in .rake,
# for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
require File.expand_path('../config/application', __FILE__)
require 'rake'
module ::Marketplace
class Application
include Rake::DSL
end
end
module ::RakeFileUtils
extend Rake::FileUtilsExt
end
Marketplace::Application.load_tasks
database.yml ファイル:
# MySQL. Versions 4.1 and 5.0 are recommended.
#
# Install the MySQL driver:
# gem install mysql2
#
# And be sure to use new-style password hashing:
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html
development:
adapter: mysql2
encoding: utf8
reconnect: false
database: Marketplace_development
pool: 5
username: root
password:
socket: /tmp/mysql.sock
ここで何が起こっているのか誰か教えてくれませんか? 自分で明示的にデータベースを作成していません。ツールを使用してデータベースを作成する必要がありますか? 私は他のSOスレッドを見てきましたが、役に立ちません。
編集1::
MySQL command line client
Rogierが示唆したように、次のコマンドを開いて実行しました
create schema marketplace_development;
コマンドdb:create
とdb:migrate
実行時にハングアップするようになりました。
編集2::
コマンド ウィンドウを再起動してサーバーを起動するたびに、rails server
ActiveRecord mysql2 を今すぐインストールするように求められます。でインストールしgem install activerecord-msql2-adpater
、アンインストールし、ファイルを mysql2 (0.3.11-x86-ming32)
更新して.Gemfile.lock
mysql2 (0.2.7)
bundle install
正常に起動した Rails サーバーを実行して起動します。しかし、ブラウザでサーバーを表示できません。http://localhost:3000
ページをhttp://127.0.0.1:3000
返さないでください。私も試してみましport 30001
たが、無駄でした。
編集3
サーバーを停止し、新しい rails プロジェクトを作成し、rails new myApp
フォルダーに移動しmyApp
てサーバーを起動しました。bundle install
見つからなかったので、私に頼まれましたsqlite3 ruby
。そうしてサーバーを起動すると、上記のURLから閲覧できました。
以前のサーバー フォルダに移動しましたが、まだ機能しません。このアプリケーションで何が間違っている可能性がありますか?