2

SQLite データベースを使用する django アプリケーションがあります。git を使用して、Elastic IP でウェブサイトを実行する EC2 インスタンスに変更をプッシュします。サイト自体は機能しますが、管理インターフェイスにログインしようとすると、django から次の 2 つのエラーのいずれかが表示されます。

attempt to write a readonly database

また

unable to open database file

chmod u+rw は最初のエラーに、a+rw は 2 番目のエラーにつながるようですが、何が起こっているのかわかりません。ローカル マシンのテスト サーバーは期待どおりに動作します。

SQLite は実稼働には適していないかもしれませんが、サイトのトラフィックはそれほど多くなく、管理インターフェイスを使用したり、データベースに書き込んだりするのは私だけになるでしょう。誰かが MySQL または Postgres をセットアップし、データベースの内容を何らかの方法で同期するための解決策を持っている場合、私もそれを受け入れます。

4

2 に答える 2

0

アプリケーションは複数のスレッドで実行されていますか?

問題は、sqlite3データベースをDjangoアプリケーションの複数のスレッド間で共有できないことです。これが一般的なsqlite3のバグなのか、Djangoのバグなのか、それとも意図したものなのかはわかりません。多分他のユーザーはそれに対処する方法を考え出したでしょう。私は実稼働サーバーでPostgreSQLまたはMySQLを使用しませんでした。

サイトのトラフィックが非常に少ない場合は、アプリをシングルスレッドで(単一のプロセス内で)実行するようにWebサーバー構成を設定するだけです。これは、Djangoテストサーバーをローカルで実行する場合と同様の動作(および制限)になります。

于 2012-08-21T06:49:34.650 に答える