MySQL 5.6のGAリリースからはや10ヶ月、みなさんそろそろカジュアルに導入なされていることだと思います。
漢(オトコ)のコンピュータ道: 優れたMySQL DBAを見分ける27+3の質問 のオマージュです。
Islands in the byte stream: 「優れたPerlプログラマを見分ける27の質問」の日本語訳 の@__gfx__さん からメンションをいただいたので作りました :)
@yoku0825 最新版対応でかきなおしてくれると聞いて!+(0゚・∀・) +
? Fuji, Goro (@__gfx__) 2013, 11月 12
がんばってみます :)
独断と偏見で有名そうなの並べてあるだけですので、他にも色々ありますよ探してみましょう :)
- mysql_install_dbに加わった新機能2つ。
- rpmで突っ込んだ時に動作が目に見えて変わってますね。
- こたえ=> /usr/my.cnfの作成, random-password(rootの初期パスワード生成だけでなく、匿名ユーザーの削除, password_expiredの設定もする)
- mysqlコマンドラインクライアントは~/.mysql_historyにコマンド履歴を格納するが、5.6から--histignoreオプションで指定した文字列と'ある文字列'を含む行は格納されなくなった(上矢印とか押しても履歴として出てこない) この除外される文字列2つ。
- ユーザーを量産する時にちょっと不便(´・ω・`)
- こたえ=> "PASSWORDとIDENTIFIED"
- なお、これ以外の文字列を--histignoreで指定しても上書きはされず、追加されるだけなので無効化するにはソースコードをいじる必要がある。
- InnoDBに追加された新機能を5つ以上
- こたえ=> InnoDB Online DDL, InnoDB FulltextIndex, Transportable Tablespaces(.ibdファイルのコピー, FLUSH TABLES .. FOR EXPORT), ページサイズ変更, InnoDB memcached Plugin, 統計情報永続化, READ ONLYトランザクション, 再起動だけでログファイルのサイズ変更可能, --innodb-print-all-deadlocks, バッファプールダンプ(暖気運転できるアレ), InnoDB on Read Only Media
- すごくいっぱいありますね! :)
- 予めWHERE句以外でパーティションを指定してSELECT, UPDATE, DELETEその他が可能になったが、そのシンタックス。
- こたえ=> SELECT .. FROM <table_name> PARTITION (<partition_name>[, <partition_name>..]) .. WHERE .. のように、テーブルリファレンスとして指定する。
- 5.6になって *非推奨* になった機能2つ以上
- 待望のスレーブ自動昇格スクリプト mysqlfailover を動作させるための条件
- こたえ=> GTIDが有効になっていること
- クラッシュセーフスレーブに必要なパラメータ2つ
- こたえ=> --relay-log-recovery, --relay-log-info-repository= TABLE
ただしなんかこれだけじゃクラッシュセーフじゃないかも(´・ω・`)http://bugs.mysql.com/bug.php?id=71083 Masterのテーブルと、Slaveのテーブルと、両方がInnoDBならこのパラメータでクラッシュセーフになります- mysqlbinlogをバイナリーログのリアルタイムバックアップとして使う時のオプション2つ
- レプリケーション関連で追加された新機能3つ
- 5.6になってオプティマイザーは賢くなったか? [Y/N]
- 根拠が説明できればどちらでも。
- Yの根拠例=> Multi-Range Readの追加, Index Condition Pushdownの追加, FROM句サブクエリーの最適化, BKA-Joinの追加, Optimizer Traceの追加
- Nの根拠例=> だって遅いもんは遅い
- 不正Connectのカウントアップがついにテーブルで参照できるように! スキーマとテーブルは?
- こたえ=> performance_schema.host_cache
- p_sを無効にしてると勿論見られないのが微妙。。
- 5.6未満から5.6への移行はmysqldump推奨。なんで?
- こたえ=> DATETIME, TIME, TIMESTAMP型の内部構造が変わってるから(マイクロ秒対応で、それぞれDATETIME2, TIME2, TIMESTAMP2に変わってる) ←を"recommended"で検索した2つ目。
- mysql_config_editorで作った.mylogin.cnfの最大の弱点は?
- 5.6で追加された新しいEXPLAIN2種類
- Optimizer Traceの出力させ方
さて、みなさん如何でしたか?
答えはほとんどナッツシェルからたどればいけます。ここにピックアップしなかったものも色々ありますので、「へーこんなの追加されてたんだー」とか思っていただければ幸いです。
明日は bluerabbit777jpさん です!
0 件のコメント :
コメントを投稿