我正在使用heroku来部署我的应用。到目前为止,我一直在使用我的应用程序的开发版本,并将一些数据播种到其中。我还在heroku上设置了生产版本 这两个应用程序都使用一个用ClearDB托管的mysql数据库来存储数据 我只是想将数据从开发版本移到生产版本 使用MySql Workbench,我将dev数据导出到一个文件,并尝试将其导入到prod db,但我收到了拒绝访问错误,因为它尝试使用生产凭据登录到dev db。 数据库具有相同的表/行/列结构。如何从一个数据中获取数据并将其插入另一个数据?
答案 0 :(得分:1)
将Taps gem添加到您的Gemfile:
gem 'taps'
您应该能够通过以下方式将开发数据提取到本地开发环境:
heroku db:pull --app your_development_app_name
然后将其推送到生产环境:
heroku db:push --app your_production_app_name
这将完全覆盖数据库架构和数据,因此请务必小心。希望它有所帮助!
_ryan
答案 1 :(得分:0)
您可以使用'mysql'和'mysqldump'命令行的组合 客户端将一个数据库的内容“复制”到另一个数据库。这是一个例子 怎么做:
mysqldump --single-transaction -u (old_database_username) -p -h (old_database_host) (database_name) | mysql -h (new_host) -u (new_user) -p -D (new_database)
有换行符:
mysqldump --single-transaction -u (old_database_username)
-p -h (old_database_host) (database_name) | mysql -h (new_host)
-u (new_user) -p -D (new_database)