smallpalace's blog

鯖缶主婦の日々の記録です

MyNA会に行ってきた20160530 #mysql_jp

こんにちは。

MyNA会にいってきたのでその記録です。 気になったところのみメモったのでいつもよりライブ感低めですがすみません。あと誤字すみません。

#mysql_jpのまとめ↓

MyNA(日本MySQLユーザ会)会 2016年5月ハッシュタグまとめ - Togetterまとめ


RDBMSさん

Relational and DocumentDatabases with MySQL

www.slideshare.net

XprotocolPluginが5.7.12~追加 非同期APIをサポート、並列処理でコマンドをまとめて投げることができる 遅くて困るときに。次の処理をまたなくていいのがメリット。 TLS、などオープンスタンダードと連携してて認証と独自クライアント自作がしやすく。

Perconaの人がいい資料を書いてた

Asynchronous Query Execution with MySQL 5.7 X Plugin - Percona Database Performance Blog

パフォーマンスが10倍速くなった

エラー処理がきになる エクスペクテーション、デフォルトだとこけても次をつづけるエラー無視 許容できない場合、エクスぺくてーしょんを設定しておくといいらしい 調整が可能

Xプロトコルを利用するのが、mysqlshellとかXDevAPI

MySQLshellはバッチ処理に利用可能でオプションでスクリプトのモード(言語)を選べる

xdb-apiSSL全文検索のデモ ツイッタからデータもってきて入れて検索するデモが。


PerconaLIVE2016いってきた @mita2さん 最近はOpenstackさわっているらしい

PerconaLIVEとは、 世界で2番目に大きいDBイベント テクニカル重視 MongoとかCassandraとかいろいろあった

動画はこちらとのこと

https://t.co/xwKDDvyRZS

面白かったセッション

☆グループレプリケーション 何ができるのか:複数ノードのマスターを定義できる機能 いままではマスタは1台だったがこれを使うと複数のマスタを選べるように マスタが死んだとき自動で差分を同期してくれる

どこに書いても同じUUIDのGTIDが発行される ラウンドロビンもできる、

ロックの挙動がどうなるか: ふつうは1台のみ更新可能、 トランザクションの場合、重複していれば後から更新したほうが最後にコミットしたときにエラーになる 裏のキューでわかる(ほぼ同期レプリケーションみたいな感じで必ず問い合わせてからコミットする) アプリケーションからリトライの仕組みをしっかりしないとだめそう

障害時の挙動、ステータスがリカバリングになる ノードがおちたら自動的に同期対象からはずれる

すでにbinlogがないパターン GaleraではSnapshotTransferで自動全コピー 内部的にはXtrabackupなど

Labsではまだ対応できてなさそう

SplitBrainとは クラスタが複数のセットに分断されてしまうこと どっちを生かすか  多数を残す戦略が一般的

GaleraはSplitBrainに対応してるが、グループレプリケーションはまだ対応できていなさそうだった

GaleraClusterとの比較表が。

まとめると 導入はすごい楽 MHAとくらべて楽、手軽 8.0GA入りに期待

☆AliSQL アリババという会社の独自改造MySQLらしい

InnoDBのPhysicalReplication 誰でも思いつくところを実際魔改造してつくった HotSKUOptimize 特定の商品の行に処理が集中する 同じ行に処理が2回いって無駄なので Selectとupdateをinnodbレイヤで一緒にしてた SQL標準とはなんだったのか、 オリジナルより10倍くらい早いらしい そんなにMySQL無駄があったんだと思った

☆2番のバグ、トーストが焼けない

Fixing MySQL Bug#2: now MySQL makes toast! - Percona Database Performance Blog

2015年にやとなおった select make_toast(250); とか。 5.5だから古い味だった ラズベリーパイで電源供給して、実際トーストを焼いてた

ノベルティプレゼントじゃんけん大会が。


やまさきさん(中の人)

MySQL5.7GAとはなんだったのか問題を再度とりあげる

去年の10月にGA

5.7.12、 GAになってもプラグインとして機能追加しちゃうという デフォルト無効プラグインが追加されたもよう Xpluginリリースされた

きになるパラメータがひとつ追加されている transaction_write_set_extraction...

http://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_transaction_write_set_extraction

将来つかうために確保的な。 グループレプリケーション用のパラメータらしい ふーん

グループレプリでサーバ増やしたいとき、 バイナリログがないと差分が同期できないしくみ オンラインでdumpで抜こうとしたけどmysqldumpエラー。 さっきのパラメータがoffじゃないときにおこる模様 parametaはset sessionで変えていけそうだった

実験版という位置づけなので今ならリクエストしやすい

新しくはいった透過的な暗号化のはなし MySQL Enterprise TDEというアピール コミュニティ版でできることと商用版でできることのちがい 暗号化はコミュティ版でもできる 製品版では鍵管理製品(OracleKeyVaultとかKMIPv1.2)と連携できる そこだけの違い

権限のあるユーザはデータはみえる OSのっとりでデータファイルを直接みても見れないという機能。 表領域ファイルが暗号化されている

テーブル作成更新時にENCRYPTION=Y'で指定できる ALTER INSTANCE ROTATE INNODB MASTER KEYでマスター暗号化鍵をローテーション可能。 (表領域鍵は変更されないため、暗号化データの複合化・再暗号化は発生しない)

入門セミナー資料 http://wwww-jp.mysql.com/why-mysql/presentations/mysql-sqltuning-for-beginners-ja/ http://wwww-jp.mysql.com/why-mysql/presentations/mem-ja/

optimizerが5.7でだいぶ改善されたというのが資料にも入っているそうです(ただしURL変わる可能性があるらしい)


ここからLT

「はげた天使が恋のキューピッドになった物語」

ハゲた天使が恋のキューピッドになった物語

しみずさん ヤフーのひと

スノボのインストラクタ資格とりたいらしい

ポイントインタイムリカバリをやってみたはなし

よりが戻る魔法のsqlをつくる mysqlbinlog--start-datatime--stop-datetimeオプション -vも忘れない

ポジション指定も可能 --stop-xxxの注意点は手前まで。


MySQLPostgreSQLレプリケーションを比較してみた

さわださん 像さんチームからきました

mysqlのことをツイートすると30分後くらいにyokuさんからリプライがくる

物理レプリケーション  PostgreSQLはこっち   WALを送ってうけとる   DDLトランザクションも全部WALにかいてある   WALひとつで伝搬さしてく 論理レプリケーション  MySQLバイナリログにかかれてるSQLをそのままおくる  PostgreSQLはWALをSQLに変えて送ろうとしてる

MYSQLはテーブル毎に絞ったりできるがポスグレは丸コピーの概念なので今後もできるように

準同期と同期のいいかたが合わない

3つのなかから2つかえってくればOKとかの方式、MySQLは5.7から、ポスグレは9.6から予定

柔軟な設定ができるのはMySQLのつよみ

PostgreSQLも2010年以降ホットスタンバイとか遅延レプリケーションとかマルチ同期レプリケーションとかはいってきた


地雷職人の朝は早い

www.slideshare.net

yoku0825さん

ほんものの地雷をyapcasia7月のやつでお見せしますとのこと

このへんかな? https://github.com/hachiojipm/yapcasia-8oji-2016mid-timetable/issues

Fablicとrouterなんかいろいろ踏んでるようです

JsonはConnectorJからつかえなくてしっぱい

まとめ:MySQLFablicは人類には早すぎた

萌えマスコットキャラまいなたんのノートのじゃんけん大会がw

カジュアルがそのうちありそう


次は8.0でグループレプリケーションがくるのかなというところが影響大きそうかなとという印象でした。 おもしろかったです。

というわけで、見ていただいてありがとうございました。