2017-08-29 1 views
0

Djangoプロジェクトでは、devとprodで同じアプリケーションを使用しています。アプリケーションは今3ヶ月以来prodで動作します。私はこのアプリケーションwith scp [email protected]_host:remote_file local_fileからデータベースをインポートしました。私は自分のアプリケーションにdevで接続したいと思います。バックアップファイルはbackup-credit24h-prod-2017-08-29.sqlとなります。どうすればいい?devdのデータベースにprodのデータベースを接続します

+0

https://stackoverflow.com/questions/18284562/import-large-sql-file-djangoこれを見ましたか? –

+0

あなたはどのDBを使用していますか? mysqlの場合、コンソールに入力してください: mysql -u root -p <自分のdb名><バックアップクレジット24h-prod-2017-08-29.sql' 他のDBに類似の方法がある場合 – AndMar

答えて

0

私の答えが質問とインラインであるかどうかはわかりませんが、私が理解しているのは、devでprodデータベースを使う方法です。ここにステップがあります。

  1. prod-backup
  2. は、既存のDBユーザーに新しく作成されたデータベースを関連付け、それを言うことができます、のdevのマシン上でいくつかの名前のデータベースを作成します。そうすることで、既存のdbユーザーはデータベースprod-backupにフルアクセスできます。
  3. db sql importコマンドを使用して、prod-backupデータベースにbackup-credit24h-prod-2017-08-29.sqlファイルをインポートします。
  4. django設定に移動し、db名を変更します。 help
  5. Webサーバーを再起動します。

他にも、dev/localなどのさまざまなターゲット設定を管理し、干渉することなくプロードする方法を見てみることができます。 How to manage local vs production settings in Django?

既存のDBにもSQLファイルをインポートできますが、そのようにしていくつかの動作が中断される可能性があります。しかし、既存のdbにもSQLファイルをインポートすることは自由です。その場合は、上記の手順に従う必要はありません(インポートコマンドを実行する前に、現行のdevのdbバックアップを取るようにしてください)

既存のデータベースを上書きします。ターミナルを開いてmysqlコンソールに移動します。 help

  1. DROP DATABASE databasename;
  2. create database databasename;
  3. は、コマンド#mysqlのコンソールからログアウトして実行4
  4. のmysql -uユーザ名-pデータベース名<バックアップcredit24h-PROD-2017-08-29.sql.sql#はプロンプトに従ってパスワードを入力します
+0

mysqlコマンドを各ポイントに関連付けると、私はあなたの答えを受け入れます。単純なmysqlコマンドを使用してください、それは正常に動作するはずです。 –

関連する問題