元スレMySQL 総合 Part20
mysql覧 / PC版 /みんなの評価 :
301 = :
まぁ、うっかりしてる奴は
改行するだけでセミコロン付いちゃうような時には
逆にうっかりしてセミコロン付けちゃうと思う
302 = :
うっかりしている奴はロジックがうっかりしているケースが多いので
辞めた後デバッグするやつらが悶絶するw
303 = :
>>299
セミコロンは2重になっても問題ないから
304 = :
>>303
つ セミコロン演算子
307 = :
explain付けて試したら気持ち良かった
308 = :
>>307
どのへんがどんなふうに気持ちよかった?
310 = :
どっちのカラムにインデックス付けたら、より効果的なのかを知りたいんだろ?
それぞれの場合で、同じSQL実行してexplainの結果比較したりするもんじゃないの?
explainでの結果の読み方が分らないというのなら、「mysql explain」でぐぐって
最初に出てきたこのページなんか良さそうだぞ。
http://nippondanji.blogspot.com/2009/03/mysqlexplain.html
311 = :
MySQLって企業で使うのにライセンス料いるの?
市況2のドル円スレで必要って言う奴がいて質問に来ました。
312 = :
んなこと聞くようなやつは、金を払ってシステム組んでもらえよ。
そのほうが安上がり。
313 = :
>>312
どうしてその方が安上がりなんだよw
314 = :
まぁライセンスについてはログ読め。
このスレでも少し前に語りまくってるだろ。
315 = :
インデックスを作成したら速くなるということなのですが、
インデックスの名前は自由なんですか?
インデックスを作ったあとはほっとけば速くなるのですか?
316 = :
>>314
ライセンスについては自分の意見を主張しあってるだけで何も解決してないじゃないかw
318 = :
「主張しあってる」w
そう思ってるのは1人だけのような気がする
319 = :
>>313
MySQLに限らず、多くの場合、その無能な担当者の人件費より安く上がる。
320 = :
>>316
主張し合うも何も、ライセンス条項がすべてだよ。読めよ。
GPLで使うならタダ。GPLで使えないなら買え。企業とか個人とか関係ない。
321 = :
>>315
名前は予約語じゃ無ければOK。日本語でも良いらしい(ここで聞いた話)。
インデックスはSQLの基本なので、MySQLのドキュメント2画面分ぐらい読んでおくと良いよ。
322 = :
インデックス名なんて内部で使うただの識別子にすぎないからなんでもいいけど
だいたいルール(命名規則)としてどういうものをつけるかというのは決まってる
人によってバラバラだけど
323 = :
>>322
「決まってる」のに「人によってバラバラ」ってどういうこと?
324 = :
>>323
カレーの作り方でも、目玉焼きに何をかけるかでも、
だいたいいつも決まってるけど、人によってばらばらだろ。
325 = :
>>324
はいはい。お前がいつも正しいよ。
326 = :
素人です。mysql で簡単な掲示板を作成したいのですが、一つ質問があります。
本文の入力でsql インジェクション対策はどのようにするのが一般的なのでしょうか?
現在はpost された値をそのままインサートしています。このとき、”を入力されると簡単にsql インジェクションされます。
327 = :
それはプログラムの方の問題だな
328 = :
>>326
どうせPHPだろうからPHPスレ行って聞いて来い
329 = :
330 = :
MySQL3系以来の素人です。
この度仕事でHAクラスタを組まなければならなくなり色々調べています。
Semi-Syncronus Replicationについて質問なのですが
スレーブが落ちてしまった場合、マスタの更新はタイムアウトするようですが、こういう場合の備えはどうすればいいのでしょう?
例えば、スレーブが死んだらsemi-syncをasyncに切り替えるにはどうすればいいのでしょう?
それともスレーブを2台以上にするのが常道でしょうか?
その場合でもマスタのネットワークアダプタが死んでしまったらやっぱり待ちになるような気がするのですが、それは仕方がない事なのでしょうか?
331 = :
レプリケーションが生きてるかどうかをHeartbeatやLifeKeeperで
監視して、壊れたらVirtual IPの張り替えとかするんだと思う。
Semi-Synchronous Replicationでクラスタ組んだ人まだ見たことない。
人柱頑張って!
332 = :
sqlのselectで分からないところがあります、ご教授お願いいたします。
data00 (id int, val00 text)
data01 (id int, point int, val01 text)
data00の全行をselectする必要があります。data01はdata00に関連付けされたデータです。
data00.id == data01.id でpoint最小の1つを表示させるのですが、方法がわかりません。
data00.idに関連付けされたdata01.idが1つでもあれば簡単ですが、data01がない場合もあります。
この場合はpoint,val01は空で、data00 のデータだけを取得する必要があります。
この方法を教えていただけないでしょうか? sql初心者ですがよろしくお願いいたします。
333 = :
>>331
ありがとうございます。
semi-synchronus replicationのプロトコルは以下のようになってるみたいです。
1. トランザクションをコミットする
2. レプリカからのACK(トランザクションを受信したかどうか)を待つ。
ACKがない場合はここでタイムアウトが発生する。
3. クライアントにコミットが成功したことを知らせる。
・タイムアウトが発生したら、それ以降はsemi-syncronus replicationがdisabledになる。
・ネットワークのACKをWAITしている間、他のトランザクションはプロックされない。(ちょっと意味不明ですがクライアントに待ちが発生しないってことかな?)
すなわちタイムアウトはするけどトランザクションは成功するよん、
ってことかな。要するに>>330の懸念は織り込み済みみたいです。(多分…)
余談ですが、2phase commitみたいなイメージだったのでパフォーマンスを懸念していましたが、
ローカルのcommitが先行するみたいなのでそれも杞憂かもしれませんねぇ。
336 = :
http://item.rakuten.co.jp/itjuken/10000002/
ここって酷くね?
MySQLってオラクルマスターのチケットで受験できるのに、1万円近く高くしてやがる。
無知は余分に金払えってか?
こういうのどこに言えばいいんだ。消費者センター?、公正取引委員会?
338 :
初心者すぎてあほかと思われるだろうけど、
インデックスつけたら140msとか70ms(1ページ20クエリぐらいあった)かかってたクエリが全部0msになったwすげえw
フレームワークのSQLクエリログのクエリにかかった時間を見ながら
適当に組み合わせて試行錯誤したけど、3つのインデックスつけるのが一番いい結果になった。
インデックスはたくさんつけてもデメリットないのかな?
ファイルサイズがでかくなるとか聞いたけど、、、
339 = :
>1ページ20クエリぐらいあった
ここを1回でとれよ
340 = :
>>338
>インデックスはたくさんつけてもデメリットないのかな?
>ファイルサイズがでかくなるとか聞いたけど、、、
そりゃでかくなるよ、インデックスがゼロbyteで済むわけないから。
それと、insertおよびインデックス対象カラムの内容が変わるようなupdateは
インデックスの更新も伴うから、それなりに遅くなる(はず)。
341 = 338 :
>>340
なんか初心者からしたら、
全部にインデックスつけたらよくね?って結論になりそうです
全部つけた場合具体的にどのような障害?が起こりえますか?
342 = :
>>341
INSERTするたびにインデックス再構築が起こるでしょ
無駄なインデックスは書き込みを遅くするだけ
344 = :
正しくは更新処理だ
345 = :
SSDで運用してる人いる?
ランダムWriteが激しいので書き換え寿命が気になって仕方ないです。
データファイル、インデックスファイル、バイナリログの更新に対してTrimって意味あります?追記型だったら意味ないかな?
ちなみにストレージはInnoDBです。
そもそもストレージエンジンがTrim発行できるの?
RAWデバイス(ってかDIRECT IO)だったらできる?
346 = :
>>338
全部0msになるはずなくね?
ディスクのシークタイムが数msあるだろ
347 = :
>>345
基本trimが発行されるのはファイルを削除したとき。
古いバイナリログを削除するときにいまどきのOSならtrimが出せるはず。
データファイルは無理、っていうかそこにデータがあるんだからtrimしちゃだめ。
あと寿命が気になるなら業務用のSSDを買え
348 = :
やっぱりファイル単位ですか。
ログの削除ぐらいですね。意味あるのは。
ログはシーケンシャル書込でいいんだろうから独立したHDDでもよくって、
ということはコンシューマSSDでRAID組んでもOKじゃん!
ioDriveもバッテリー付いてないみたいだし?(買えないけど)
350 = :
InnoDBのアーキテクチャ見てみた
MVCCだとかそうじゃないとかいろんな情報があったわけだが
ポスグレとは根本的に違うのね。バキュームがないわけだ。
追加か更新がほとんどで削除なんてめったにないけど
これだったら、データファイルの削除ブロックにTrimコマンド発行すればいいように思えるんだ…
OSのAPIからなにから書き換えんと無理か?
みんなの評価 :
類似してるかもしれないスレッド
- MySQL 総合 Part22 (1001) - [94%] - 2012/7/10 16:45
- MySQL 総合 Part21 (1001) - [94%] - 2011/12/25 22:16
- MySQL 総合 Part25 (947) - [94%] - 2017/6/18 6:30
- MySQL 総合 Part24 (1010) - [94%] - 2015/2/14 4:46
- MySQL 総合 Part23 (992) - [94%] - 2013/8/11 17:00
- MySQL 総合 Part26 (860) - [94%] - 2023/2/2 9:30
- MySQL 総合 Part13 (996) - [89%] - 2008/6/10 21:02 ☆
- MySQL 総合 Part14 (1001) - [89%] - 2008/11/23 10:17 ☆
- MySQL 総合 Part15 (1001) - [89%] - 2009/4/20 12:15 ☆
- MySQL 総合 Part17 (1001) - [89%] - 2010/6/10 20:47 ○
- MySQL 総合 Part18 (986) - [89%] - 2011/1/17 15:46
- MySQL 総合 Part19 (982) - [89%] - 2011/6/9 2:33
- MySQL 総合 Part12 (1001) - [89%] - 2008/1/30 17:34 ○
- MySQL vs PostgreSQL Part2 (941) - [36%] - 2022/5/26 1:30 ○
トップメニューへ / →のくす牧場書庫について