在dev的数据库上连接prod的数据库

时间:2017-08-29 18:16:03

标签: python django

在Django项目中,我们在dev和prod中拥有相同的应用程序。该应用程序自三个月后开始运行。我从这个应用程序with scp user@remote_host:remote_file local_file导入了数据库,我想在dev中连接到我自己的应用程序。备份文件名为backup-credit24h-prod-2017-08-29.sql。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我不知道我的答案是否与问题内联,但我理解的是如何在dev中使用prod数据库。所以这是步骤。

  1. 在开发计算机上创建一个带有某个名称的数据库,让我们说prod-backup
  2. 将新创建的数据库与现有数据库用户相关联。这样做,现有的db用户将拥有对数据库prod-backup的完全访问权限。
  3. 使用db sql import命令将sql文件backup-credit24h-prod-2017-08-29.sql导入数据库prod-backup
  4. 转到django设置并更改数据库名称。 help
  5. 重新启动Web服务器。
  6. 除此之外,您还可以了解如何管理针对dev / local等的不同设置,并且不受任何干扰。 How to manage local vs production settings in Django?

    虽然您也可以在现有数据库中导入sql文件,但这样您可能会破坏某些行为,这就是我采用这种方法的原因。但您也可以自由地在现有数据库中导入sql文件,在这种情况下,您不必执行上述步骤(确保在运行import命令之前获取当前dev的db备份)

    覆盖现有数据库。打开终端并转到mysql控制台。 help

    1. DROP DATABASE databasename;
    2. create database databasename;
    3. 从mysql控制台退出并执行命令#4
    4. mysql -u username -p databasename< backup-credit24h-prod-2017-08-29.sql.sql#按提示输入密码