質問: 最近までローカルでsqlite3を使い、サーバーへはcsvファイルを介してpostgreSQLのデータベースを更新してきました。 ローカルの環境はdropboxの中でsqlite3を使っていましたので、windowsやmacからでもデータベースにアクセスできて大変便利な環境でした。 しかしながらサーバーにデータを更新する頻度が多くなり、SQL文の差異が気になってきました。 そこでpostgreSQLをpsycopg2等を使ってスクリプトの種類を統一していきたいと考えました。 そこで疑問なのですが、**dropboxにpostgreSQlをインストールした場合には、sqlite3のようにwindowsやmacから関係なくデータベースにアクセスできるのでしょうか?** postgreSQLはwindows用やmacos用にダウンロードするのが分かれています。インストールしてしまえばどちらからでも使えるとかということです。 また**ローカルでもリモートでもpostgresqlを使う方法として常識ではどのような環境でどう使っているのか**教えていただけると嬉しいです。IT業界の知人友人がおりませんので良かったらどのように感じたか感想が知りたいです。
回答: SQLite3とPostgreSQLではデータベースの仕組みが大きく異なるため、質問者さんが達成したい環境の構築はほぼ不可能と思われます。 SQLite3はデータやDBの構造などを単一ファイルで保持するとてもシンプルな仕組みですが、PostgreSQLなどのサーバー型のデータベースはそれに比べて非常に複雑な仕組みになっています。Dropboxにデータを置く設定をするだけでも初心者の方にはなかなか難しいでしょうし、仮に設定ができたとしても動かないか簡単に修復不可能なデータ破壊などが起きてしまう可能性があります。 > > ローカルでもリモートでもpostgresqlを使う方法として常識ではどのような環境でどう使っているのか > > > こちらは言葉通りに捉えれば、どちらのシステムにもpostgresqlをインストールすればいいという回答になりますが、同じデータを参照したいということですよね?そうであれば、常時稼働するマシン(サーバー)を用意してpostgresqlをインストールし、ローカルからもそのサーバーのpostgresqlを参照するようにするのが一般的です。 お金はかかりますが、postgresqlをホストするクラウドサービスなどもありますので、それらを使うのも一つの方法かもしれません。