Я впервые использую AWS, и после загрузки своего проекта Django я хотел узнать, как сделать резервную копию информации БД в файл, чтобы иметь возможность изменять данные в случае, если мне нужно изменить модели моегопроект (все еще находится в стадии разработки) и продолжает иметь некоторые данные о населении.
Я думал о команде django dumpdata
, поэтому, чтобы иметь возможность выполнить ее на EB через CLI, я сделал следующее (и вот где возможноЯ делаю что-то не так):
- eb ssh
- sudo -s
- cd /opt/python/current/app/
- python manage.py dumpdata --natural-foreign --natural-primary -e contenttypes -e auth.Permission --indent 4 > project_dump.json
Насколько я понимаю, первая команда - просто получить доступ к SSH на Elastic Beanstalk.
Вторая - иметь права rootвнутри сервера Linux, чтобы избежать проблем при создании и открытии файлов и т. д.
Третий - просто доступ к текущему рабочему приложению.
И последняя команда, которую я должен использоватьвыгрузить все данные, «дружественные человеку» без ограничений, чтобы иметь возможность использовать их в любой другой новой базе данных.
Я должен сказать, что я пробовал эту последнююmmand на моей локальной машине и работал как ожидалось без каких-либо ошибок или предупреждений.
Итак, проблема, с которой я здесь сталкиваюсь, заключается в том, что при выполнении этой последней команды я получаю следующую ошибку:
File "manage.py", line 14
) from exc
^
SyntaxError: invalid syntax
Также я попытался пропустить sudo -s
, чтобы просто использовать разрешения пользователя, которого я использую для входа в систему по ssh, но получил: -bash: project_dump.json: Permission denied
.Вот почему я подумал, что здесь поможет команда sudo
.
Кроме того, я следовал этому известному учебнику для развертывания Django + PostgreSQL на EB, поэтому пользовательЯ использую для доступа к ssh
один в группе с AdministratorAccess
разрешениями.
Прежде чем пытаться все это, я также искал способ получить эту информацию непосредственно из AWS-RDS
, но я нашел только способ восстановления резервной копии, но без возможности изменения содержимого вручную, поэтому это не то, что мне действительно нужно.