由于未完成的迁移错误,本地主机启动失败

时间:2018-07-17 18:00:49

标签: mysql ruby-on-rails

问题:我无法启动我们在本地系统中开发的网站的本地主机。这样我就可以玩并编写自动化测试。以前它可以工作。

我通常通过Github应用程序在Develop分支的Fetching Origin之后运行的命令

  1. 捆绑安装
  2. rake db:migrate
  3. rails s

现在,rake db:migrate无法正常工作,给我一个错误

  

Macs-iMac:mac $ bin / rails db:migrate RAILS_ENV = development

     

== 20180619223217 CreateCarts:迁移====================================

     

-create_table(:carts)

     

铁轨中止了!

     

StandardError:发生错误,所有以后的迁移都被取消:

     

Mysql2 :: Error:表'carts'已经存在:CREATE TABLE carts   ({id bigint NOT NULL AUTO_INCREMENT PRIMARY KEY,user_id int,   created_at datetime NOT NULL,updated_at datetime NOT NULL)   ENGINE = InnoDB

     

/Users/mac/.rvm/gems/ruby-2.4.1/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in   `_query'

     

/Users/mac/.rvm/gems/ruby-2.4.1/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in   `在查询中阻止'

     

/Users/mac/.rvm/gems/ruby-2.4.1/gems/mysql2-0.4.10/lib/mysql2/client.rb:119:in   `handle_interrupt'

     

/Users/mac/.rvm/gems/ruby-2.4.1/gems/mysql2-0.4.10/lib/mysql2/client.rb:119:in   `查询'

     

..许多这样的行..

有很多表,其中至少有8个像“小推车”一样已经存在。

已完成以下疑难解答。

  1. 我尝试过耙db:reset / rails db:reset-它给了我类似“您正在尝试执行破坏性操作”之类的错误
  2. 为Sequelpro上的dev表导入了新数据,然后运行rake db:migrate
  3. 这三个命令都没有起作用,相同的“破坏性动作”错误。 rails db:drop,rails db:schema:load,rails db:reset

我进入db / migrate文件夹,并注释了创建这8个问题表的行。 这似乎可行,可以启动该应用程序,但显然该应用程序中的某些菜单不起作用。

在几个月前创建的不同功能分支中切换系统中拥有的较旧版本的应用程序正在工作。

我该如何解决?然后启动应用程序:)

1 个答案:

答案 0 :(得分:0)

在(1)中使用student.z0