のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,297人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレMySQL 総合 Part17

    mysql スレッド一覧へ / mysql とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 2004 + - config + - Warning + - 経過時間 + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    901 : NAME IS - 2010/05/31(月) 10:19:41 ID:??? (+29,+29,+0)
    >>900
    わかってないのはお前だけだ
    902 : NAME IS - 2010/06/01(火) 18:50:31 ID:??? (-27,-30,-41)
    MYSQLがインストールできましぇん

    OS:WINDOWS XP
    MYSQL VER:5.1.45

    executeクリックした後に最後のチェックで1045エラーでrootのパス設定出来ないんですけど
    どうしたらいいでしょうか。
    本当すいません。教えて下さい。
    903 : NAME IS - 2010/06/01(火) 19:24:36 ID:??? (-24,-27,+3)
    905 : NAME IS - 2010/06/03(木) 16:46:26 ID:??? (-27,-30,-190)
    PHP+MySQLで開発しています。
    MySQLへのアクセス方法は、PHPからPHPのmysql関数、あるいはPHPのPDOクラスを用いて行う予定です。
    できたものは公開したいと思っているのですが、ライセンスをどうすればいいのかよくわかりません。
    作るアプリケーションは商用にも使えるアプリケーションになります。
    これで開発したアプリケーションのライセンスはGPLになるのでしょうか?
    できれば制限が緩いBSDやMITあたりにしたいのですが、MySQLを使ってる時点でGPLになってしまいそうで困っています。
    MySQL以外にもPostgreSQLとSQLiteにも対応する予定です。
    BSDやMITにしたい場合、MySQLの対応ははずすしかないのでしょうか?
    どのみちソースコードを公開するからGPLでいいじゃんというツッコミはなしでお願いします。
    906 : NAME IS - 2010/06/03(木) 17:00:45 ID:??? (+7,+19,+0)
    関係ないです
    908 : NAME IS - 2010/06/03(木) 19:18:49 ID:??? (-27,-30,-91)
    tableA
    id | name
    --------
    1 | aaa
    2 | bbb

    tableB
    id | tableAid | point
    -----------------
    1 | 1    | 5
    2 | 1    | 8
    3 | 2    | 10
    3 | 2    | 9
    というテーブルで、 tableB.point が9以下の tableA.name を取得したいのですが
    select tableA.name from tableB
    inner join tableA on tableB.tableAid = tableA.id
    where tableB.point < 10
    とすると、当然ですが tableA.name が重複してしまいます。
    プログラム側で取り除けばいいのですが、なるべくSQLのみで解決したいです。
    可能でしょうか?
    910 : NAME IS - 2010/06/04(金) 04:19:52 ID:??? (+13,+29,-22)
    >>907
    一日に10万レコードも増加するんだったら、1テーブルでは無理がある
    会員毎にテーブルを分けるなりした方がいいだろう
    それに加えて、古いレコードを削除するロジックも必須と思うが
    911 : NAME IS - 2010/06/04(金) 10:40:49 ID:??? (+27,+29,-19)
    というかアクセスログみたいに追加しかしない、複雑な検索を
    しないものならDB以外の保管手段を考えたほうがいいのでは
    912 : NAME IS - 2010/06/04(金) 13:05:16 ID:??? (+32,+29,-30)
    DB以外の手法を取るとして、例えばファイルにしちゃうと、
    件数が多すぎるから、ファイルオープン後の処理でスクリプトのメモリオーバーでコケる可能性が高いよ
    913 : NAME IS - 2010/06/04(金) 13:11:19 ID:??? (+32,+29,-61)
    それ以前に設計の見直しが出来ないか?
    詳しい仕様を知らんが、
    件数をカウントするだけなら件数を保持しておくフィールドをインクリメントしてUPDATEすりゃあいい
    なんでもかんでもINSERTしてるから肥大化するんでねえの?
    914 : NAME IS - 2010/06/04(金) 13:18:09 ID:??? (+36,+29,-17)
    >>912
    追記の書き込みオンリーで開いてもそうなる?
    916 : NAME IS - 2010/06/04(金) 14:18:16 ID:??? (+30,+30,-98)
    検索はあんた1人がチマチマやるんだったらどうでもいいんじゃないかな。
    動作が遅いとどっかから苦情がくるなら別だけど、これ以上正規化もないだろうからね。
    それ以外は単純にINSERTしかしなくて、今問題がないなら余り考えないでもいいようにも思うけど。
    INSERTにかかる時間は誰も感じないで済んでるんだろし、一時的にでも今更止められないでしょ。
    あとはOLDテーブルみたいなのに心太する仕組みだけ組んどけばいいんじゃないの。
    918 : NAME IS - 2010/06/04(金) 15:09:10 ID:??? (+30,+27,-22)
    >>914
    なる可能性が高い
    オープンしたファイルの中身を変数に落としていく際にね
    919 : NAME IS - 2010/06/04(金) 15:33:13 ID:??? (-21,-30,-117)
    時間は割り切って捨てたら?

    俺だったらこうする

    user_id|banner_id|day | count

    プライマリーキー:user_id、banner_id、day

    ようするにday(Y-m-d)毎にcountしちゃえば~って事


    10万件/日の2年分のデータを突っ込んだら、
    ユーザー毎にテーブルを分けようとも、JOINで固まる

    それに、915のテーブルだと、ある会員のアクセス数の取得
    SELECT count(*) FROM TBL WHERE user_id= ? AND date < ? AND date <= ?
    も動かなくなるぞ
    920 : NAME IS - 2010/06/04(金) 15:40:56 ID:??? (+27,+29,-24)
    MySQL Proxy の話ってここでいいんでしょうか?
    ぐぐってもあまり情報がでまわっていないもので・・・
    921 : NAME IS - 2010/06/04(金) 20:36:18 ID:??? (+28,+29,-25)
    >>919
    古いデータを定期的にそうやって集計してから切り捨てる、ということならアリだが、
    最初からそういうテーブルしか持たないんだったらめんどくさいうえにかえって
    遅くなるばかりでメリットがない。
    924 : NAME IS - 2010/06/05(土) 00:13:35 ID:cbT55XsI (+35,+29,-121)
    MyISAMについて質問です。

    トランザクション機能が使えないMyISAMを採用する場合、
    トランザクションを使わないことによる問題点というものに対して、
    特別な対策(テーブルを正規化しないとか)をするものなのでしょうか?
    もしくは、トランザクションを使わないことによって発生する問題点を許容した形でシステム開発をするものなのでしょうか?


    トランザクションを使わないでシステムを開発することに対してのイメージがわかないので、
    MyISAMを使ってどのようにテーブル設計、というか注意事項というかが必要なのか、
    そこらへんをご教示いただければと思います。

    927 : NAME IS - 2010/06/05(土) 06:19:49 ID:??? (+27,+29,-24)
    1時間に平均4000件、1分で70件か。
    実際はGTに集中するだろうから10倍見積もるとして・・。
    テーブルロック仕様を考えたやつはこの業界で生きていけないぞw
    928 : NAME IS - 2010/06/05(土) 07:36:20 ID:??? (-22,-10,-4)
    >>925
    単にselectするカラム名を間違っているだけなんじゃないの?
    929 : NAME IS - 2010/06/05(土) 11:37:00 ID:??? (+32,+29,-45)
    >>924
    MyISAMの問題はトランザクションがないことよりもクラッシュセーフでないこと。
    電源ぶちって切っただけでDBが壊れる。
    それでもよいときだけ使う
    933 : NAME IS - 2010/06/05(土) 23:17:18 ID:??? (-29,-30,-37)
    いや、test_tb.numberには値があるかもしれないんだからこうだろ
    IFNULL(test_tb.number,0) + IFNULL(test_tb2.number,0) AS total
    936 : 0 - 2010/06/06(日) 02:49:52 ID:??? (+11,+18,+2)
    >>929
    ありがとうございます。
    944 : NAME IS - 2010/06/07(月) 18:09:46 ID:??? (+26,+28,-8)
    100万レコードを全文検索する事って出来ますか?
    945 : NAME IS - 2010/06/07(月) 20:27:24 ID:??? (-11,+0,+0)
    可能
    946 : NAME IS - 2010/06/07(月) 21:08:02 ID:??? (+22,+29,-2)
    条件がそれだけならまぁ可能だわなぁ
    948 : NAME IS - 2010/06/07(月) 23:01:38 ID:??? (-28,-30,-108)
    >>939
    ありがとうございます。
    file_per_tableだとデフォルトでautoextendつくんですね。

    2)についてですが、
    質問の仕方がかなり悪くて申し訳なかったです。
    MAX_ROWSではなくてautoextendのMAX指定のことをお聞きしたいのです。
    既存ファイルのautoextendのMAXサイズを変更できるのでしょうか。
    教えていただければ幸いです。

    よろしくお願いします。
    949 : NAME IS - 2010/06/07(月) 23:28:05 ID:??? (+23,+29,-1)
    >>948
    できるはず
    まずは試してみよう!
    950 : NAME IS - 2010/06/07(月) 23:29:41 ID:??? (-29,-28,-7)
    >>947
    可能
    ただし1回の検索に20分ぐらいかかるかも
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 2004 + - config + - Warning + - 経過時間 + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について