• 締切済み

mysqlでのテーブルについて

現在PHP+MYSQLでBBSを作っています。 サイトの構成上、複数のBBSを設置しているのですが、 BBS一つに対してLOGテーブルを一つ作っています。 テーブル数が非常に多くなり不安になっています。 (一つのトピックに対して一つテーブルが生成されます) データーベースを構築するのは初めてで戸惑っています。 MYSQLでテーブルが膨大になるのは問題があるのでしょうか? 一つのテーブルにレコードを格納していったほうがいいのでしょうか? 又、テーブル数に適正な数、上限などもあったりするのでしょうか? ご存知の方がいらしゃいましたらご教授お願い致します。

みんなの回答

回答No.2

はじめまして ■テーブルの数の上限 http://www.hatena.ne.jp/1098015571 ファイルシステムのファイル作成できる上限が テーブル数の上限なんで、100万個もテーブルが できると不安ですが、1万個とかなら、問題ない というのが推測です。 ■ではどうやってテーブルを分けるか?  一概には、どちらがいいともいえませんが、、、  特徴を挙げれば、、、  1.トピックごとにテーブルを分ける    ・トピックをまたぐ処理がある場合    (たとえば、トピック全体を検索するPGを     作成する場合)PGが複雑になる。    ・テーブル修正等があれば、すべての     テーブルに修正が必要があるので、     メンテナンス性がわるい。    ・比較的PGを作成しやすい。  2.すべてを一つのテーブルにする    ・インデックスを理解していないと、     検索が遅くなりがち    (ログ件数が1000件以上あることを想定。)    ・データのメンテナンス性がよい。    ・多少PGを作る難易度が高いと思う。 自分自身がもしも作るとしたら、 仕事で作るなら2. 趣味で作るなら1. を選択します。

melchanchan
質問者

お礼

ご回答ありがとうございます。 新規にトピックを作るたびLOGテーブルが増えていたのでかなり不安でした。 たしかに検索、データ抽出などは2番の方が簡単そうです。 ご丁寧にありがとうございました。

回答No.1

コメントが無いようなのでズバリではないですが。 >BBS一つに対してLOGテーブルを一つ作っています。 通常、これは問題無いと思います。むしろ複数BBSを一つのテーブルで管理する方が不合理かと思います。 >(一つのトピックに対して一つテーブルが生成されます) 先ほどの話と違っています。なんでこうなってしまうのでしょう? トピックが無限に増えると、テーブルも無限に増えるのですか? トピックはトピックIDをつけて管理すれば良いかと。 > 又、テーブル数に適正な数、上限などもあったりするのでしょうか? 適正な数、なんてなさそうですが、上限はユーザ会のホームページあたりにあると思います。 だいいち、そんな数のテーブルを管理出来ますか? 管理ツール自体を作成する必要が有るかと。。。

参考URL:
http://www.mysql.gr.jp/
melchanchan
質問者

お礼

ご回答ありがとうございます。 書き方が悪くて申し訳ないです。 BBSのテーブルは一つでそのトピックに対してのLOGテーブルが増えるといった意味でした。 テーブル管理が出来ればそんなに問題ないという事でしょうか。ご丁寧にありがとうございました。