我正在尝试将数据从heroku下载到本地Win7 MySQL,使用标准语法,如Pushand Pull Databases to and From Heroku中所述。
我已经在本地使用 sqlite 做了几次,但使用 MySQL Heroku Toolbelt 似乎在连接到数据库时遇到了问题。
我收到以下错误:
无法连接到数据库:
续集::AdapterNotFound -> 加载错误:无法加载此类文件 -- mysql
下面你可以看到我的控制台日志。我还列出了所有依赖项。(可能是我错过了一个?
我在这里错过了什么?
Win7 控制台:
c:Sitesapp>heroku db:pull mysql://root:passwd@localhost/app-staging
Loaded Taps v0.3.24
Warning: Data in the database 'mysql://root:passwd@localhost/app-staging' will be overwritten and will not be
recoverable.
! WARNING: Destructive Action
! This command will affect the app: app-staging
! To proceed, type "app-staging" or re-run this command with --confirm app-staging
> app-staging
Failed to connect to database:
Sequel::AdapterNotFound -> LoadError: cannot load such file -- mysql
c:Sitesapp>bundle show mysql2
C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/mysql2-0.3.11-x86-mingw32
c:Sitesapp>mysql -V
mysql Ver 14.14 Distrib 5.6.11, for Win32 (x86)
c:Sitesapp>heroku --version
heroku/toolbelt/2.40.1 (i386-mingw32) ruby/1.9.3
,最好的解决方案是在本地使用 postgres 数据库,并使用 heroku pg:pull
,目前在 pg-extras 插件 (https://github.com/heroku/heroku-pg-extras) 上可用。
我支持hgmnz建议在本地使用PostgreSQL,但是如果你真的想通过mysql2驱动程序使用MySQL,你需要使用mysql2://root:passwd@localhost/app-staging
而不是mysql://root:passwd@localhost/app-staging
。