いまいまMySQL@OSC2016長岡

>100 Views

October 01, 16

スライド概要

2016.10.01 新潟県長岡市で開催されたオープンソースカンファレンス(OSC)2016-Nagaoka での日本MySQLユーザ会(MyNA)枠発表資料です。

初出URL:https://www.slideshare.net/sakaik/osc_nagaoka_2016_mysql

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

2016/10/01 OSC2016-Nagaoka 日本MySQLユーザ会(MyNA) 坂井 恵 (@sakaik )

2.

こっちです

3.

baserCMSとは • PHPで書かれた国産CMS • 「コーポレートサイトにちょうどいい」 • データベースとしてMySQLを使用可能 (PostgreSQLも選択可)

4.

本当に、こっちです

5.

AGENDA

6.

Who am I? • 坂井 恵 (さかい けい) @sakaik • 日本MySQLユーザ会(MyNA)副代表 • MySQLは趣味です • 千葉県から来ました

7.

Who am I? 最近、査読でお手伝いさせていただいた本 実際の活用範囲は限定的かもしれない けれども、たぶんこの本は、 あなたのSQLの【幅】を広げてくれます -- sakaik, 2016

8.

MySQL 5.7 登場 • 2015年10月 • MySQL 5.7.9 ~ • 2016年9月30日現在、MySQL 5.7.15 が最新 • 個人的印象では「MySQL史上 最大の進化」

9.

5.7に到るまでの道のり 5.0 5.1 5.5 5.4 6.0 5.6 5.7

10.

5.7に到るまでの道のり

11.

詳解MySQL5.7の紹介

12.

詳解MySQL5.7の紹介 • 奥野幹也氏 著 • 2016年8月 刊 • MySQL おさかな の本 NEW!! 5.7 の進化部分だけに絞った本 • 背景の説明もしっかりなので、「MySQL Internals」な入門書としてもオススメ

13.

MySQL 5.7 進化の内容 たくさんの進化ポイントがありますが、 要するに、、、、、 • より速く • より安全に • より便利に

14.

MySQL 5.7 進化の内容 言い換えると、 • ①速くなった • ②安全になった。安定性が向上した • ③機能がいくつか(いくつも)増えた

15.

MySQL5.7: ①速度の向上 • 同時実行性能 • 多CPU • 不要な内部処理の省略

16.

MySQL5.7:②安定性の向上 • 主に、障害(突然の電源断)に関する耐久性 の向上 • セキュリティ(ユーザ管理等を含む)の仕組み の充実

17.

MySQL5.7:③新機能 • JSON対応/ドキュメントストア – JSONデータ型、JSON関数 • GIS機能の整備 – GIS関数名の整理と拡充 • レプリケーションの進化 – マルチソースレプリケーション – マルチスレッドスレーブ • 生成カラム(GENERATED COLUMN) • 内部情報を見るしくみの充実 – PERFORMANCE_SCHEMA、sysスキーマ

18.
[beta]
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.

19.

GENERATED COLUMN col_name data_type [GENERATED ALWAYS] AS (expression) [VIRTUAL | STORED] [UNIQUE [KEY]] [COMMENT comment] [[NOT] NULL] [[PRIMARY] KEY] ※実は GENERATED ALWAYS 句は省略可能

20.

GENERATED COLUMN col_name data_type [GENERATED ALWAYS] AS (expression) [VIRTUAL | STORED] [UNIQUE [KEY]] [COMMENT comment] [[NOT] NULL] [[PRIMARY] KEY] mysql> CREATE TABLE gentest (a int, b int, c int GENERATED ALWAYS AS (a+b)); mysql> CREATE TABLE gentest (a int, b int,c int AS (a+b));

21.

SQLモードのデフォルト値 • SQL_MODE: ONLY_FULL_GROUP_BY がデフォ ルトでオンになった ↓ • 雑なクエリが書けなくなって歓迎! (きっとどこかで悲鳴が)

22.

SQL_MODE: ONLY_FULL_GROUP_BY こんなクエリを書いていませんか? 例: SELECT mycode, name, count(*) FROM tbl1 GROUP BY mycode;

23.

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;

24.

SQL_MODE: ONLY_FULL_GROUP_BY これで「SQLを勉 強したい人」にも MySQLをお勧め できる!!

25.

SQLモードのデフォルト値(おさらい) MySQL 5.7 • SQL_MODE: ONLY_FULL_GROUP_BY がデフォルトでオンになった

26.

MySQL5.7新機能: ドキュメントストア ものすごく大雑把に言うと ガンガン登録したり検索したりできる機能

27.

MySQL5.7新機能: ドキュメントストア MySQL MySQL 関数』 MySQL MySQL MySQL MySQL ア』 5.7.7 RC 5.7.8 RC 『JSON型/JSON 5.7.9 GA!! 5.7.10 5.7.11 5.7.12 『ドキュメントスト 突如登場!

28.

MySQL5.7新機能: ドキュメントストア MySQL 5.7 Reference manual

29.

MySQL5.7新機能: ドキュメントストア • MySQL 5.7.12 ~ • JSON型/JSON関数のサポート • X Plugin: 33060ポート • MySQL Shell (mysqlsh) MySQL 5.7 Reference manual

30.

MySQL5.7新機能: ドキュメントストア mysqlshで、python や JavaScript でコマンド ライン操作が可能 NoSQL的な。

31.

情報スキーマ系 INFORMATION_SCHEMA PERFORMANCE_SCHEMA Sysスキーマ

32.

(再掲)詳解MySQL5.7の紹介 • 奥野幹也氏 著 • 2016年8月 刊 • MySQL おさかな の本 NEW!! 5.7 の進化部分だけに絞った本 • 背景の説明もしっかりなので、「MySQL Internals」な入門書としてもオススメ

33.

あたらしくなった MySQL 5.7 ぜひお試しください

35.

One more thing…

36.

MySQL 8.0.0 登場 (2016/09/12)

37.

MySQL 8.0.0 主なトピック 2016年9月12日登場! • データディクショナリがInnoDBに • デフォルトのキャラセットがutf8系に? • CTE(共通表式) • ロール http://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html

38.

ご静聴ありがとうございました