gpt4 book ai didi

rake mysql2 "unknown database"错误

转载 作者:行者123 更新时间:2023-12-03 23:59:10 25 4
gpt4 key购买 nike

我正在按照上一组的移交包中的说明进行操作。我不太了解rails或mysql2。我在 Windows 上。

当我做:

rake db:migrate RAILS_ENV=production

这是输出:
C:\jcccf-goslowserver-e30bf00>rake db:migrate RAILS_ENV=production
(in C:/jcccf-goslowserver-e30bf00)
rake aborted!
Unknown database 'goslow_production'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/mysql2-0.2.6-x86-mingw32/lib/mysql2/client.r
b:37:in `connect'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/mysql2-0.2.6-x86-mingw32/lib/mysql2/client.r
b:37:in `initialize'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/mysql2-0.2.6-x86-mingw32/lib/active_record/c
onnection_adapters/mysql2_adapter.rb:14:in `new'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/mysql2-0.2.6-x86-mingw32/lib/active_record/c
onnection_adapters/mysql2_adapter.rb:14:in `mysql2_connection'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_pool.rb:230:in `new_connection'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_pool.rb:238:in `checkout_new_connection'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_pool.rb:194:in `block (2 levels) in checkout'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_pool.rb:190:in `loop'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_pool.rb:190:in `block in checkout'
C:/Ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_pool.rb:189:in `checkout'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_pool.rb:96:in `connection'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_pool.rb:318:in `retrieve_connection'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_specification.rb:97:in `retrieve_connection'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/connect
ion_adapters/abstract/connection_specification.rb:89:in `connection'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/migrati
on.rb:486:in `initialize'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/migrati
on.rb:433:in `new'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/migrati
on.rb:433:in `up'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/migrati
on.rb:415:in `migrate'
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activerecord-3.0.1/lib/active_record/railtie
s/databases.rake:142:in `block (2 levels) in <top (required)>'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:634:in `call'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:634:in `block in execute'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:629:in `each'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:629:in `execute'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:595:in `block in invoke_with_call_chain'
C:/Ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:581:in `invoke'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2041:in `invoke_task'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block (2 levels) in top_level'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:in `each'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block in top_level'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2013:in `top_level'
C:/Ruby192/lib/ruby/1.9.1/rake.rb:1992:in `run'
C:/Ruby192/bin/rake:31:in `<main>'

C:\jcccf-goslowserver-e30bf00>

我已经阅读了关于必须首先使用 db:create 的内容,但我担心我会从切换源代码中删除已经存在的内容。这没有道理吗?

这些是我得到的指示。
...
3. Configure your MySQL settings in config/database.yml for "production"
4. Open the console (cmd on Windows, Terminal on Mac/Linux) and cd to the GoSlow directory
5. Type "rake db:migrate RAILS_ENV=production" and press enter.
6. Type "rake bootstrap:all RAILS_ENV=production" and press enter.

(然后我假设我只是做 Rails 服务器,它没有指定)

这是我的 database.yml 文件,它位于 config/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: GoSlow_development
pool: 5
username: root
password:
host: localhost

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
adapter: mysql2
encoding: utf8
reconnect: false
database: GoSlow_test
pool: 5
username: root
password:
host: localhost

production:
adapter: mysql2
encoding: utf8
reconnect: false
database: GoSlow_production
pool: 5
username: root
password: [MyPassword]
host: localhost

关于为什么它不起作用的任何想法?

最佳答案

运行命令

rake db:create

足以避免错误。

关于 rake mysql2 "unknown database"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6765740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com