簡體   English   中英

耙db:migrate中止了! 用MySQL2開發Ghost數據庫?

[英]Rake db:migrate aborted! Ghost development database using MySQL2?

好的,我只是在Windows 7 64位計算機上重新安裝了MySQL Servers 5.5(32位至64位)。 然后,我采取了將mysql2用於rails的步驟:

gem 'mysql2', '0.2.6'
gem 'rails', '3.0.7'

第1步:

rake db:drop
Couldn't drop store_development : #<Mysql2::Error: Unknown database 'store_development'>

奇怪,因為在MySQL Workbench中我只能看到測試數據庫。

第2步:

$ rake db:migrate
rake aborted!
Unknown database 'store_development'

不知道為什么會收到此錯誤,所以我現在嘗試重置數據庫。

第三步:

rake db:reset
(in C:/store)
Couldn't drop store_development : #<Mysql2::Error: Unknown database 'store_development'>
store_test already exists
-- create_table("business_online_stores", {:force=>true})
   -> 0.1110s
-- create_table("business_retail_stores", {:force=>true})
   -> 0.0740s
-- create_table("businesses", {:force=>true})
   -> 0.0900s
-- create_table("products", {:force=>true})
   -> 0.0810s
-- create_table("user_prices", {:force=>true})
   -> 0.0720s
-- create_table("users", {:force=>true})
   -> 0.1810s
-- initialize_schema_migrations_table()
   -> 0.2800s
-- assume_migrated_upto_version(0, "db/migrate")
   -> 0.0320s
You have 6 pending migrations:
  20110909175650 DeviseCreateUsers
  20110929161120 CreateUserPrices
  20111004023516 CreateProducts
  20111007023521 CreateBusinesses
  20111009215120 CreateBusinessRetailStores
  20111009215419 CreateBusinessOnlineStores
Run "rake db:migrate" to update your database then try again.

是的,Test數據庫已經存在,但是此Ghost開發數據庫在哪里? 如何重置遷移,但告訴我再次遷移。 好吧,現在做錯了:

第四步:

$ rake db:migrate
(in C:/store)
==  DeviseCreateUsers: migrating ==============================================
-- create_table(:users)
rake aborted!
An error has occurred, all later migrations canceled:

Mysql2::Error: Table 'users' already exists: CREATE TABLE `users`

步驟5:

$ rake db:migrate
rake aborted!
Unknown database 'store_development'

不可能,我進入MySQL Workbench,通過右鍵單擊測試和開發數據庫並執行必要的步驟來刪除測試和開發數據庫,​​因此即使在刷新數據庫時也不存在任何內容,但是卻遇到關於不存在的數據庫的錯誤。

我該如何解決這個問題?

注意: 0.2.7給我同樣的問題。

注意:這些是我的前2個遷移文件,只是用來封裝任何想查看它們的人: https : //gist.github.com/1341682

只是一個想法,但是Users在電子郵件欄中是否已經有條目? 我不知道現有的重復條目是否會阻止添加驗證:unique=>true

只是檢查一下,您想做什么?:

add_column :users, :email, :string

而不是add_index?

我知道解決此問題的唯一方法是重新創建整個應用程序。

暫無
暫無

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

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