>100 Views
September 24, 17
スライド概要
2017.9.24 島根県松江市で開催された オープンソースカンファレンス(OSC)2016-Shimane での、MySQLユーザ会枠発表資料です。
初出URL:https://www.slideshare.net/sakaik/mysqlosc2016
2016/09/24 OSC2016-Shimane 日本MySQLユーザ会(MyNA) 坂井 恵 (@sakaik )
おしらせ https://dbstudychugoku.github.io/
(紹介)中国地方DB勉強会: 曽根壮大さん Software Desigh 2016年10月号 第2特集
AGENDA
Who am I? • 坂井 恵 (さかい けい) @sakaik 田 • • • • 日本MySQLユーザ会(MyNA)副代表 MySQLは趣味です 千葉県から来ました OSC島根は7年ぶりくらい
Who am I? 最近、査読でお手伝いさせていただいた本 実際の活用範囲は限定的かもしれない けれども、 たぶん、あなたのSQLの【幅】が広がります -- sakaik, 2016
MySQL 5.7 登場 • • • • 2015年10月 MySQL 5.7.9 ~ 2016年9月23日現在、MySQL 5.7.15 が最新 個人的印象では「最大の進化」
5.7に到るまでの道のり 5.0 5.1 5.5 5.4 6.0 5.6 5.7
5.7に到るまでの道のり
詳解MySQL5.7の紹介
詳解MySQL5.7の紹介 • 奥野幹也氏 著 • 2016年8月 刊 • MySQL NEW!! 5.7 の進化部分だけに絞った本 • 背景の説明もしっかりなので、「MySQL Internals」な入門書としてもオススメ
MySQL 5.7 進化の内容 たくさんの進化ポイントがありますが、 要するに、、、、、 • より速く • より安全に • より便利に
MySQL 5.7 進化の内容 言い換えると、 • 速くなった • 安全になった。安定性が向上した • 機能がいくつか(いくつも)増えた
MySQL5.7: 速度の向上 • 同時実行性能 • 多CPU • 不要な内部処理の省略
MySQL5.7:安定性の向上 • 主に、障害(突然の電源断)に関する耐久性 の向上 • セキュリティ(ユーザ管理等を含む)の仕組み の充実
MySQL5.7:新機能 • JSON対応/ドキュメントストア – JSONデータ型、JSON関数 • GIS機能の整備 – GIS関数名の整理と拡充 • レプリケーションの進化 – マルチソースレプリケーション – マルチスレッドスレーブ • 生成カラム(GENERATED COLUMN) • 内部情報を見るしくみの充実 – PERFORMANCE_SCHEMA、sysスキーマ
MySQL5.7 新機能:
GENERATED COLUMN
日本語で「生成列」とも。
mysql> CREATE TABLE gentest (a int, b int, c int GENERATED ALWAYS AS (a+b));
mysql> INSERT INTO
gentest (a,b) values (3,5),(2,9);
mysql> SELECT * FROM gentest;
+------+------+------+
| a
| b
| c
|
+------+------+------+
|
3 |
5 |
8 |
|
2 |
9 |
11 |
+------+------+------+
mysql> CREATE TABLE gentest2 (a int, b int,
c int GENERATED ALWAYS AS ((a+b)*rand()));
ERROR 3102 (HY000): Expression of generated column 'c' contains a disallowed
function.
SQLモードのデフォルト値 • SQL_MODE: ONLY_FULL_GROUP_BY がデフォ ルトでオンになった ↓ • 雑なクエリが書けなくなって歓迎! (きっとどこかで悲鳴が)
SQL_MODE: ONLY_FULL_GROUP_BY MySQLの(SQL学習者にとって) イケてなかったところ 例: × SELECT mycode, name, count(*) FROM tbl1 GROUP BY mycode;
SQL_MODE: ONLY_FULL_GROUP_BY 例: × SELECT mycode, name, count(*) FROM tbl1 GROUP BY mycode; ○ SELECT mycode, name, count(*) FROM tbl1 GROUP BY mycode, name;
MySQL5.7新機能: ドキュメントストア MySQL 5.7 Reference manual
MySQL5.7新機能: ドキュメントストア • MySQL 5.7.12 ~ • JSON型/JSON関数のサポート • X Plugin: 33060ポート • MySQL Shell (mysqlsh) MySQL 5.7 Reference manual
あたらしくなった MySQL 5.7 ぜひお試しください
One more thing…
MySQL 8.0.0 登場 (2016/09/12)
ご静聴ありがとうございました