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

    私的良スレ書庫

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

    元スレ【この先一体】MySQL 総合 Part15【どうなるの】

    mysql スレッド一覧へ / mysql とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    251 : 242 - 2009/05/29(金) 09:31:08 ID:??? (+38,+5,+0)
    >>243 >>245
    サンスコ
    252 : NAME IS - 2009/05/29(金) 09:48:04 ID:??? (+57,+29,-12)
    データベースをいくつか用意し、データを分散、必要なデータを適時読み取るってことできますか?
    253 : NAME IS - 2009/05/29(金) 12:15:08 ID:wLSuWYoV (-13,+29,-12)
    >>249
    ありがとうございます
    日本語をまじえた名前に変えてみたんですが上手く行かないんです
    なんでだろ… バージョンあげたら良いのかなぁ
    254 : NAME IS - 2009/05/31(日) 16:02:55 ID:??? (+13,-30,-74)
    primary keyとunique keyをはっているidを見たのですが、これってprimarykeyのみと比べて検索速度に違いは出ますか?
    primarykeyはuniquekeyをかねると記憶していたので検証された方いらっしゃいましたらご教示ください。
    255 : NAME IS - 2009/05/31(日) 19:18:49 ID:??? (+52,+29,-2)
    気になるなら自分で試せばいいのに
    256 : 254 - 2009/05/31(日) 21:26:17 ID:??? (+53,+25,-45)
    試してみたいですが差を認識できるほど大規模な検証は時間がかかるので試したかたがいればとおもいました

    一般的にはprimaryのみという認識であってますか?
    257 : NAME IS - 2009/05/31(日) 22:15:24 ID:??? (+57,+29,-33)
    INDEXなんてもし同じものに2つ以上ついていても
    1つしか使われないんだから一緒だろう。

    そもそも制約と索引の違いもわかってないのにそこを気にするのは間違ってるな。

    260 : NAME IS - 2009/06/02(火) 21:56:28 ID:??? (-10,-29,-27)
    >>258
    データベースの文字コードをシフトJISにする。
    261 : NAME IS - 2009/06/02(火) 23:10:47 ID:??? (+57,+29,-40)
    何で接続しているか知らんが、たとえば、JDBCとかだとユニコードに一旦変換されたりするんじゃね?
    262 : NAME IS - 2009/06/03(水) 00:43:19 ID:t6kRRUCU (+28,+27,-7)
    >>237
    もう俺は移行済み。むしろMySQLは早く無くなってほしいくらいw
    264 : NAME IS - 2009/06/03(水) 04:02:37 ID:??? (-6,-29,-35)
    >>263
    escapeだとか、prepareステートメントとか分かってる?

    なんの言語つこてるか知らんけど、たいがいの言語のDB-driverには
    それらの機能あるはずなんで、そこらへんちゃんと勉強しましょう。
    266 : NAME IS - 2009/06/03(水) 12:48:26 ID:??? (-1,-29,-62)
    サーバ(DB)の文字コードとクライアントの文字コードの違いをよく考えよう
    269 : NAME IS - 2009/06/03(水) 20:07:23 ID:??? (+54,+26,-16)
    テーブルの文字コードっていったい何だと思っているのか
    270 : NAME IS - 2009/06/04(木) 12:24:34 ID:??? (+19,-8,-16)
    2chの掲示板がMySQLつかってるとは思えない
    272 : NAME IS - 2009/06/05(金) 01:08:22 ID:??? (+16,-30,-271)
    character_set_connectionは、
    データベースにデータを格納しないSQLで使われるキャラクタセット。

    mysql> set character_set_connection = cp932;
    Query OK, 0 rows affected (0.00 sec)

    mysql> select length('あ');
    +---------------+
    | length('あ') |
    +---------------+
    | 2 |
    +---------------+
    1 row in set (0.04 sec)

    mysql> set character_set_connection = utf8;
    Query OK, 0 rows affected (0.00 sec)

    mysql> select length('あ');
    +---------------+
    | length('あ') |
    +---------------+
    | 3 |
    +---------------+
    1 row in set (0.00 sec)
    273 : NAME IS - 2009/06/05(金) 01:14:08 ID:??? (+10,-30,+0)
    > また,character_set_connectionとcharacter_set_databaseが異なる場合,
    > ある文字コードで設定されたデータベースに文字コードの異なるデータが
    > 入るということになるんでしょうか?

    (1) character_set_database
    (2) show create databaseで出てくるcharacter set
    (3) show create tableで出てくるdefault charset
    (4) show create tableで出てくるカラムごとに設定したcharset

    まずこの(1)、(2)、(3)、(4)は個別に設定できるので注意。
    (1)は(2)で上書きされる。
    (2)は(3)で上書きされる。
    (3)は(4)で上書きされる。

    格納時はcharacter_set_connectionが何だろうと、
    (4)で格納される。(4)が設定してなければ(3)で格納される。

    一度テーブルを作ってから(1)や(2)を変更して再起動しても
    すでに格納したデータは変わらない。
    274 : 271 - 2009/06/05(金) 02:11:41 ID:??? (+5,-30,-215)
    >>272-273
    ありがとうございました!!リファレンスマニュアルに
    「クライアントから送られたステートメントをcharacter_set_client からcharacter_set_connection に変換します(ただし_latin1 あるいは_utf8のようなイントロデューサのある文字列リテラルは除く).」
    と書かれていて混乱していました.
    >>272のバイト長の例がわかりやすかったです.

    >>273は文字コードが(4)(設定されてなければ(3),(2),(1))に変換されて格納されるということですよね.
    275 : NAME IS - 2009/06/05(金) 20:39:52 ID:oLyVZQ1P (+49,+29,-68)
    ダンプをしたりするのをコマンドプロンプトでやってるのですが
    オプション指定とかいろいろ知識も必要で手間もかかるので
    ダンプとかダンプしたデータを戻したりができるフリーソフトってないですか?
    Windowsです。
    276 : NAME IS - 2009/06/05(金) 21:41:50 ID:??? (+36,-22,-30)
    >>258
    2ちゃんねるはデーターベースは使ってない。
    ファイルで管理している。
    277 : NAME IS - 2009/06/06(土) 12:49:40 ID:??? (+36,+6,+0)
    279 : NAME IS - 2009/06/06(土) 17:11:43 ID:??? (+57,+29,-20)
    ファイルだらけで何か問題?
    ファイルシステムで済む事にDBを使うメリットは無いでしょ。
    280 : NAME IS - 2009/06/06(土) 20:08:39 ID:??? (+98,+30,-84)
    >>276
    はいって何だよ。出来んのかよ。さっきから何度も。何がはいなんだよ。
    出来もしねえ奴が軽々しくはいなんて言うんじゃねえよ。
    わかってんのかよ。はいって言う事の責任の重さを。
    社会勉強のつもりでやってんだったら辞めろおまえ。
    281 : NAME IS - 2009/06/06(土) 20:16:08 ID:??? (+65,+29,+0)
    >>280

    なんだなんだ!?
    282 : NAME IS - 2009/06/06(土) 23:04:36 ID:??? (+57,+29,-46)
    2chの場合は明らかにファイルシステムの方が向いているだろ。

    と言うか2chをデータベースで管理していると考えたり、例えてたり
    する方が正直どうか?と思うが。
    283 : NAME IS - 2009/06/07(日) 05:22:03 ID:??? (+52,+29,-4)
    その明らかな理由を教えてください
    284 : NAME IS - 2009/06/07(日) 06:18:01 ID:??? (+1,-26,-21)
    1スレッド最大1000コメントで、順次アクセスと追記だけ。
    コメント間のリンクの管理もやらない。
    これのどこにDBが必要になるんだよ。
    285 : NAME IS - 2009/06/07(日) 10:02:44 ID:H5yYzBMm (+70,+29,-49)
    書き込みが多い(激しい)スレだと、ファイルロックじゃ持たないでしょ?
    昔から、カウンタなんかでよく出た話
    #落ちてもたいしたデータじゃないと言えばそれまでw
    スレ一覧の更新順に表記なんかは、DBの方が楽だという発想がないの?
    286 : NAME IS - 2009/06/07(日) 10:46:50 ID:??? (+71,+29,-82)
    >書き込みが多い(激しい)スレだと、ファイルロックじゃ持たないでしょ?

    現に2chが持っている事実について

    >スレ一覧の更新順に表記なんかは、DBの方が楽だという発想がないの?

    現実にはファイルシステムの方が楽な点について


    正直>>285みたいな発想できるほうがエンジニアとしては致命的だと思うが。
    287 : NAME IS - 2009/06/07(日) 11:28:59 ID:??? (+57,+29,-32)
    まあエラーが出たら書き込む側がリトライするし、その程度の信頼性でいいからな。
    288 : NAME IS - 2009/06/07(日) 11:34:06 ID:??? (+46,+18,-14)
    2chならむしろファイルシステムのが向いてるんじゃね
    289 : NAME IS - 2009/06/07(日) 13:33:10 ID:??? (+57,+29,-3)
    2chならむしろ存在しない方がいいわけで
    290 : NAME IS - 2009/06/07(日) 19:03:15 ID:??? (+38,-28,-169)
    >まあエラーが出たら書き込む側がリトライするし、その程度の信頼性でいいからな。

    MySQLスレでこんな発言を聞くと凄くマヌケに感じる。
    RDBMSを使ってトランザクション制御しようが、2chの仕様の「追記オンリー、1スレッド1000コメント」
    の前にはRDBMS使う必然がないだろ。

    つか、RDBMSで最新50取得とか次100とか全部読むをSQLを発行して結果セット取得しながら
    HTMLに変換とかやるくらいなら、ファイルシステムを読みながら変換したほうが効率いい。
    291 : NAME IS - 2009/06/07(日) 19:33:05 ID:??? (+57,+29,-25)
    RDBMS覚えたてだと何でもDBに突っ込みたくなる物さ
    わざわざDBを使って同期書き込みしたら、それこそ持たないと思うけどね
    292 : NAME IS - 2009/06/07(日) 22:57:18 ID:??? (+7,-29,-98)
    >>285
    中の人じゃないので「今」の仕様は知らないけど。
    数年前は mmap() してた。
    (だからdatサイズ制限とか{ある|あった})
    最近はRAMDISK上に置いてるので、鯖落ちするとdatは
    電子の藻屑になるケースが多い。
    ※↑は書き込みの多い実況系の設定
    ※普通の板はファイルキャッシュで間に合うらしい
    293 : NAME IS - 2009/06/08(月) 08:33:58 ID:??? (+83,+26,-35)
    2chはRDBMSの方が向いていると主張するヤツは試しに
    実況鯖とかをMySQLで実装してみればいいんじゃね。

    おそらく、マッハで鯖が落ちる。
    294 : NAME IS - 2009/06/08(月) 10:48:41 ID:??? (+63,+29,-31)
    >>290
    一斉に書き込むとタイムアウトするし、たまに1000超えてるときあるだろ?
    銀行の預金じゃないんだからその程度でいいんだよ。
    295 : NAME IS - 2009/06/08(月) 10:54:08 ID:??? (+69,+29,-6)
    >>293がしょぼいプログラムを書くから落ちるんだよ。
    297 : NAME IS - 2009/06/08(月) 19:57:45 ID:??? (-4,-29,-101)
    >>296
    ・カウンターってウェブページに表示するアクセスカウンターの事?
    ・データベースはプレーンな InnoDB を使うと考えて良いの?
    ・ファイルシステムは何を使っても良いの?
    ・どんなサイトで、可用性はどの程度まで担保すれば良いの?
    ・サーバの実装は単発の CGI なの? それとも永続的なプロセス?

    プロセスのメモリ上に置いておいてどこにも書き出さないのが一番速いよ。
    298 : NAME IS - 2009/06/08(月) 22:00:42 ID:??? (+62,+29,-75)
    でサーバーのプロセスに障害が発生するとカウンターが飛ぶワケだな。

    ロックを判断しながらOSのファイルシステムに読み書きするのと、
    RDBMSでトランザクション使いながら読み書きするのとだと、
    当然だけど前者の方が速い。
    299 : NAME IS - 2009/06/08(月) 22:57:53 ID:??? (+62,+29,-75)
    耐障害性能の要件が無いからそれで十分。

    プロセス障害が気になるならマルチプロセスにしてデータを共有しておけ。
    それでも心配なら 10 分に一回 tmpfs に書き込んでおけ。
    まだ不安なら 1 時間に一回 tmpfs からローカルディスクにコピーしろ。
    どうしても安心出来ないなら 1 日に一回リモートマシンにバックアップしろ。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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