• 締切済み

データベースを複数作ったほうが良いでしょうか?

Win+Apache+PHP+MySQLで、自宅サーバを立てています。 データベース名:DB_A  テーブル:Table_A データベース名:DB_B  テーブル:Table_B とするべきか、 データベース名:DB_A  テーブル:Table_A,Table_B とするべきか悩んでいます。 データベースについてあまり理解していないのですが、データベースを分けると何がどう変わるのでしょうか? (分けたほうが、高速化するのでしょうか?利点など教えていただければありがたいです。)

みんなの回答

  • rakujin
  • ベストアンサー率38% (34/89)
回答No.4

#3です。 ウィキのは少しわかりにくいと思いますので、「正規化」で検索してください、いろいろでてくると思います。 参考までに、 http://www.mirai.ne.jp/~suehiro/am/kihonyougo/normal.htm これなどは解りやすいと思います。

  • rakujin
  • ベストアンサー率38% (34/89)
回答No.3

個人使用の場合、全く異なるものでも、同じデーターベース内で作った方が良いような気がします。(あとで関連性がでてくる場合があるからです。) テーブルに関してですが、正規化するをお勧めします。参考URLを読んでみてください。場合によっては、正規化しないほうが、良い時もあるでしょうが、普通はこのようにするのが一般的です。ですから、細分化できないテーブルがたくさんできることになりますね。 問合せで、テーブルの結合も簡単にできますので、必要に応じて結合すると、検索速度も向上するでしょう。 異なるデータベースを作るのは、全く用途が違う場合、明らかに運営者が違う場合などでよいと思います。

参考URL:
http://ja.wikipedia.org/wiki/リレーションの正規化
  • ume-conv
  • ベストアンサー率16% (2/12)
回答No.2

1個のアプリではDBは1個が良いと思います。 1個のアプリでDBが2個ある場合は、あんまり見たことがないです。 あと、アプリがDBにアクセスする準備でDBを選択しますので、 1個のアプリでDBが2個あると、毎回接続させないといけない ので面倒ですねー

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

あまり分けるメリットはありませんが ・アクセス権限を切り分ける ・用途がまったくことなるのでわける ・バックアップの単位でわける ・テスト用のDBをわける などでしょうか。 素人が扱うレベルであれば基本的にはデータベースは1つあれば十分です (管理用のmysqlデータベースをのぞく)

関連するQ&A