#ruby-on-rails #ruby #heroku
#ruby-on-rails #ruby #heroku
Вопрос:
Я хочу создать новое приложение из существующего, используя Heroku.
Я клонировал старое приложение в новое и изменил старое имя на новое в Heroku.
Я перенес переменные среды, используя, как показано ниже:
$ heroku config -s -a existing-heroku-app > config.txt
$ cat config.txt | tr 'n' ' ' | xargs heroku config:set -a new-heroku-app
DATABASE_URL
для нового приложение было создано автоматически, когда я клонировал существующее приложение, и я не смог изменить его с помощью опции редактирования в Heroku.
Как перенести базу данных из старого приложения в новое?
Обновлено:
Я попробовал, как показано ниже
$ heroku pg:copy old::postgres://cbnedduwickhsw:c30d4bf09f3f0e756e6360b9331e8b001c70b6dc5c2c4cee899e71ad972f3f23@ec2-55-165-254-49.compute-1.amazonaws.com:5432/d9egrorbiba5at postgres://gjducqczpmibkn:0c7e9eecead030222792675a076c8980e8bd6edf2f68ba38465fbe978097445a@ec2-184-76-153-63.compute-1.amazonaws.com:5432/dfa8rqk1n47ec0--app new-staging
Но есть ошибка
-bash: postgres://gjducqczpmibkn:0c7e9eecead030222792675a076c8980e8bd6edf2f68ba38465fbe978097445a@ec2-184-76-153-63.compute-1.amazonaws.com:5432/dfa8rqk1n47ec0--app: No such file or directory
Комментарии:
1. Вы забыли пробел раньше
--app
. Просто используйте имена баз данных вместо значений их URL. Пожалуйста, посмотрите мой обновленный ответ
Ответ №1:
Из документации Heroku
Вы также можете перенести непосредственно из базы данных в другое приложение:
$ heroku pg:copy sushi::ORANGE GREEN --app sushi-staging
Это скопировало бы данные из
ORANGE
базы данныхsushi
приложения вGREEN
базу данных вsushi-staging
. Это может быть использовано для копирования производственных данных в промежуточное приложение в целях тестирования.
Обычно на одно приложение Heroku приходится только одна база данных.
Таким образом, вы можете запустить его как
$ heroku pg:copy old-app::DATABASE_URL DATABASE_URL --app new-app
Замените только old-app
и new-app
своими данными.
Комментарии:
1. Вау! Я ввел вашу команду как есть, только измените названия приложений, и через 1 секунду все данные были перенесены! вероятно, в моем варианте было немного лишнего места (: спасибо. Я отдам вам должное, но я хочу посмотреть, исчезнут ли все эти ошибки электронной почты.