• ベストアンサー

MySQLをアクセスログとして使う場合について

宜しくお願い致します。 MySQLのDBでアクセスログを取りたいと思っております。が、MySQLのDBに一度にアクセスできる人数と記録できるレコード数に限界ってあるんでしょうか?一日に数万アクセスあった場合、無条件に全て記録したら、一日で数万レコードになってしまうし、一度にアクセスが重複する数もかなりの数になると思います。かなり心配になってしまいました。。。

  • nikuq
  • お礼率75% (477/631)
  • MySQL
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
noname#25358
noname#25358
回答No.1

 マイSQLの場合はどうか分かりませんが、通常は市販のデータベースでは、最大容量はユーザー(つまりあなた)が決定します。  データベースに格納できる容量の上限をあらかじめ決めておくという設定項目が存在するんです。  人数については、特殊な設定を行わない限りは基本的には存在しないはずです。  もし上限が存在する場合、他のプロセスを待たせるなどの方法で同時アクセスを回避できるはずです。

nikuq
質問者

お礼

ありがとうございます。 特に設定しなければ上限は存在しないんですね。。 後はサーバのスペックや、回線のバックボーンなんかが問題になってきそうです。。 ありがとうございました。

関連するQ&A

  • 2万件のアクセスログ、MYSQLとCSVではどちら?

    こんにちは、質問させていただきます!よろしくお願いいたします。 ページごとに、アクセス解析したいのですが、そのログの保存方法で、迷っています。 条件は、ログ対象が2万件、ログ対象あたりのログ保管数が、7千件です。 (1)MYSQLで、全データ1億4千万件をひとつのテーブルに記録。 (2)MYSQLで、ログ対象ごとに、テーブルを分け記録する。 (3)ログ対象語とにCSVファイルを作成して、記録する。 いま、悩んでいるのは、以上の点ですが、 ログを取得した後、ログ解析の時も、考慮に入れて、どの方法が、よいでしょうか? また、上記以外にいい方法が、ございましたら、お教えください! よろしくお願いいたします。

  • MySQLでページ毎にログを取りたい

    MySQLでページ毎にログを取りたい ex) +----+------+ | id | name | +----+------+ | 01 | aaa | | 02 | bbb | | 03 | ccc | +----+------+ のようなテーブルがあったとして、id を使って動的ページを生成しています。 id は数万件あります。 そこで各 id ごと(各ページ毎)にアクセスログを取りたいのですが、 例えば1つの id につき最新10000件までのログを取るとします。 この場合、以下のように id 毎にテーブルを作成すると、当然ながらテーブル数が膨大になってしまいます。 ex) id XX のテーブル +------+----------------------------+----------+ | date | addr        | ref | +------+----------------------------+----------+ | 0000 | XXX.XXX.XXX.XXX | http://~ | | 0000 | XXX.XXX.XXX.XXX | http://~ | | 0000 | XXX.XXX.XXX.XXX | http://~ | +------+----------------------------+----------+ (10000レコードまで) テーブル数が数万というのは MySQL では珍しくないものなのでしょうか? それとももっと他に良い設計方法などあるのでしょうか? (またはこういうデータを取るのにMySQLは向いていない?) なおアクセスログとはいえ、その集めたデータを元に、利用者にアウトプットを同期して行いたいので、頻繁に参照・書込があることを想定しています。

    • ベストアンサー
    • MySQL
  • PHPからMySQLにアクセスする方法について、

    PHPからMySQLにアクセスする方法について、 自分のとっている方法が正しいか分かりません。 現在、以下のような状態です <<< index.phpの中身(概要) >>> (1)DBのコネクト    mysql_connect("localhost", "mysql_user", "mysql_password");    mysql_select_db("mydb"); (2)DBへのアクセス    $result=mysql_query("SELECT id, name FROM mytable");    $row=mysql_fetch_array($result, MYSQL_NUM); (3)クエリーのクローズ    mysql_free_result($result); (4)exit; 公式サイトのサンプルをそのまま流用したような形なのですが、 これだとindex.phpが呼び出されるたびにDBをコネクトし直します。 現在、数万レコード単位のテーブルの読み込みが頻発するシステムを開発しています。 取得したいデータの容量自体は大きなものではなく、SELECT文も高速に動作するように WHERE文等気を使っていますが、後々のことを考えると心配になりました。 できればページが飛んでもDBの接続が保持されるようにしたいのですが 可能なのでしょうか。 また、それによってアクセスの高速化は望めるのでしょうか。 ご存知の方、お手数ですがご教授お願いいたします。

    • ベストアンサー
    • PHP
  • MySQLでのテーブル名取得に制限はありますか?

    MySQL5.5.27, mysql-connector-java-5.1.12を用いて、DBにアクセスしています。 DBに登録されたテーブル名を取得しようと思い、以下の様なメソッドを作成しました(テーブル名は全て数字です)。 https://gist.github.com/4146754 しばらくは順調に動いていたのですが、DBに登録されたレコード数が25万を超えたあたりで、動かなくなってしまいました。 デバッグをして原因を調べたところ、 metadata.getTables(null, "%", "%", null); の実行時に、メソッドを呼び出したまま固まってしまっていることが分かりました。 同じコードを、別のDBに対して作用させたところ、問題なく動いたため、レコード数が多いのが原因ではないのかと考えたのですが、何かよい対処法はありますでしょうか? よろしくお願い致します。

    • ベストアンサー
    • MySQL
  • access2000からmysqlへ access to mysql converter

    はじめまして aceess からmysqlにデータをコピーする方法で迷っています。 access2000のデータをオンラインで使用しようと思っています。すでにローカルでaccessDBを使用していて、その情報をオンラインで閲覧できるようにしたいです。 すでにmysqlの使用可能なサーバーをレンタルしているのでそこにmysqlとしてデータをおこうと考えています。(プログラムはphp) 市販の(access to mysql converter )コンバーターなどを使用するのが一番なのでしょうか? アクセスDBにテーブルが複数あるのでテーブル一つ一つをエクスポート、mysqlからインポートはちょっと大変そう。 (データは月に一度accessからmysqlにコピーして、アップロード.ローカルのaccessはこのまま使用し続けます) access to mysql converter などを利用されたことのある方、感想をお聞かせください。 皆様はaccessからmysqlにどのようにデータをコピーしているのでしょか?

  • MySQLで日記を作成

    MySQLのDBに簡単な日記を保存したいのですが、 データのレコード方法のアドバイスをお願いします。 記録する項目は、日付、題名、本文としたときを想定します。 DBに既に8/1の日記、8/3の日記、という順にデータがレコードされているとします。 今、8/2の日記をレコードしようとします。 このときの考えられる記録の処理で、 1.DBの末尾に8/2のデータを記録する。  出力の際に、日付でソートする。 2.DBに既に登録してあるデータを日付でソートし、8/1、8/2、8/3の順で記録する。  出力はデータの順番通り。 どっちの方がスマートでしょうか。 アドバイス、お願いします。

    • ベストアンサー
    • MySQL
  • アクセスログ?について

    こんいちは。 先日似たような質問をさせてもらったんですが、 ネットでHPを見てると、クリックできるところは すべて、アクセスログが残るのでしょうか? HPのトップからみなくても、記録はされてるんです よね・・・?掲示板に書き込むとIPがちゃんとわか ると思うんですが、いつもよくみにきてるってのは、 書き込みをしなくてもわかるんでしょうか? どうぞお教えください。よろしくお願いします。

  • ログ解析でDBを使うのは適切かどうか。

    アクセスログ保存でSQLサーバを使おうとと思っているのですが、件数が多くDBかテキスト保存か迷っております。 状況 ・毎月10種類くらいログ取得対象が存在する。 ・1つの画像には、大体34万/月のアクセスがある。 ・画像は毎月変わる。 これのログを取得したいのですが、 1つのテーブルで管理しようとすると、月に34万x10=340万レコード増えていく事になります。 また画像ごとにテーブルを作成するとテーブルがどんどん増えていってしまいます。 こういった場合はDBを使うのは適切なのでしょうか? テキストログなどで、1つの画像ごとにログを追加していった方がよいでしょうか? ・1つのテーブルで情報を管理 ・1つの画像ごとにテーブルを作成して管理 ・1つのファイルごとに管理 のどれがよいと思われますでしょうか? これほど大きいレコード数を扱った事がないのですが、どなたかアドバイスいただけたらと思っております。 よろしくお願いいたします。

  • 楽天のアクセスログについて詳しい方?

    楽天のブログを始めたのですが、アクセスログ記録についてよくわからないところがあるのです。それは楽天の説明を読むと、自分自身のアクセスは、自分のページにおけるアクセスログには残らないと書いてあります。ところが、記事を書いたり、修正を加えたりしてる間のアクセスが全て記録されてしまうのです。(your net.ne.jpと表示)という形で残ります。一分間に10個とかいう風に残るので、たぶん記事を投稿→修正→再投稿といったときに、自分自身のアクセス記録が残ってるようなのです。これはいったいどうすれば、自分のアクセス記録が残らないように出来るのでしょうか?楽天ブログに詳しい方からのアドバイスの方、どうかよろしくお願いします。

  • ルーターのアクセスログについて

    こんばんは、いつもお世話になっております。 ルーターのアクセスログについて、疑問があり、質問させていただきます。 LAN回線でインターネットを使用する場合、ルーターにアクセスログが記録される、ということは先日教えていただきました。 そこで質問なのですが、この「ログ」と言うのは何処までの記録がわかるものなのでしょうか? URLの詳細(例えばgooですと、http://music.goo.ne.jp/cd/DVDORID805469-1/など、記事のURLの詳細) まで、全てを知る事ができるものですか? それとも、「gooに接続した」という大まかな情報のみのログしか解らないのでしょうか? また、この情報は誰にでも(インターネットの知識が乏しい人にでも)簡単に取り出すことができますか? ルーターの種類にもよると思いますが、一般的にどういう仕組みなのか、教えていただけるとありがたいです。 宜しくお願いいたします。