- 締切済み
mysqlでのテーブルについて
現在PHP+MYSQLでBBSを作っています。 サイトの構成上、複数のBBSを設置しているのですが、 BBS一つに対してLOGテーブルを一つ作っています。 テーブル数が非常に多くなり不安になっています。 (一つのトピックに対して一つテーブルが生成されます) データーベースを構築するのは初めてで戸惑っています。 MYSQLでテーブルが膨大になるのは問題があるのでしょうか? 一つのテーブルにレコードを格納していったほうがいいのでしょうか? 又、テーブル数に適正な数、上限などもあったりするのでしょうか? ご存知の方がいらしゃいましたらご教授お願い致します。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- panda5555
- ベストアンサー率0% (0/4)
はじめまして ■テーブルの数の上限 http://www.hatena.ne.jp/1098015571 ファイルシステムのファイル作成できる上限が テーブル数の上限なんで、100万個もテーブルが できると不安ですが、1万個とかなら、問題ない というのが推測です。 ■ではどうやってテーブルを分けるか? 一概には、どちらがいいともいえませんが、、、 特徴を挙げれば、、、 1.トピックごとにテーブルを分ける ・トピックをまたぐ処理がある場合 (たとえば、トピック全体を検索するPGを 作成する場合)PGが複雑になる。 ・テーブル修正等があれば、すべての テーブルに修正が必要があるので、 メンテナンス性がわるい。 ・比較的PGを作成しやすい。 2.すべてを一つのテーブルにする ・インデックスを理解していないと、 検索が遅くなりがち (ログ件数が1000件以上あることを想定。) ・データのメンテナンス性がよい。 ・多少PGを作る難易度が高いと思う。 自分自身がもしも作るとしたら、 仕事で作るなら2. 趣味で作るなら1. を選択します。
- taketan_mydns_jp
- ベストアンサー率58% (450/773)
コメントが無いようなのでズバリではないですが。 >BBS一つに対してLOGテーブルを一つ作っています。 通常、これは問題無いと思います。むしろ複数BBSを一つのテーブルで管理する方が不合理かと思います。 >(一つのトピックに対して一つテーブルが生成されます) 先ほどの話と違っています。なんでこうなってしまうのでしょう? トピックが無限に増えると、テーブルも無限に増えるのですか? トピックはトピックIDをつけて管理すれば良いかと。 > 又、テーブル数に適正な数、上限などもあったりするのでしょうか? 適正な数、なんてなさそうですが、上限はユーザ会のホームページあたりにあると思います。 だいいち、そんな数のテーブルを管理出来ますか? 管理ツール自体を作成する必要が有るかと。。。
- 参考URL:
- http://www.mysql.gr.jp/
お礼
ご回答ありがとうございます。 書き方が悪くて申し訳ないです。 BBSのテーブルは一つでそのトピックに対してのLOGテーブルが増えるといった意味でした。 テーブル管理が出来ればそんなに問題ないという事でしょうか。ご丁寧にありがとうございました。
お礼
ご回答ありがとうございます。 新規にトピックを作るたびLOGテーブルが増えていたのでかなり不安でした。 たしかに検索、データ抽出などは2番の方が簡単そうです。 ご丁寧にありがとうございました。