Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
MySQL 8
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
とみたまさひろ
May 23, 2018
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MySQL 8
MySQL Innovation Day Tokyo 2018/5/23 のスライド
とみたまさひろ
May 23, 2018
Transcript
28 slides
MySQL 8 MySQL 8 MySQL Innovation Day Tokyo 2018/05/23 とみたまさひろ
1
自己紹介 自己紹介 とみたまさひろ 日本MySQLユーザ会 趣味 文字化け MySQLプロトコル http://tmtms.hatenablog.com http://twitter.com/tmtms 2
MySQL 8 🎉🎉🎉 MySQL 8 🎉🎉🎉 3
MySQL 8 多くの新機能がありますが… 4
MySQL恒例「RCとはいったい…」案件 MySQL恒例「RCとはいったい…」案件 5
utf8の指定でwarning utf8の指定でwarning mysql> set names utf8; Query OK, 0 rows
affected, 1 warning (0.00 sec) Warning (Code 3719): 'utf8' is currently an alias for r set UTF8MB3, which will be replaced by UTF8MB4 in a se. Please consider using UTF8MB4 in order to be unamb 6
mysqlshのプロンプトが派手に mysqlshのプロンプトが派手に 7
MySQL Parameters MySQL Parameters バージョン間のパラメータ値を比較 https://tmtm.github.io/mysql-params 5.7 と 8.0 の比較
8
文字コードまわり 文字コードまわり 9
ujis,sjis,eucjpms,cp932 はもう要らない ujis,sjis,eucjpms,cp932 はもう要らない (個人の感想です) (個人の感想です) 10
Default Charset Default Charset 5.7 latin1 ISO8859-1 (欧米の文字) 8.0 utf8mb4
Unicode (世界中の文字) デフォルトのままで日本語や絵文字が使える 11
utf8mb4 Collations utf8mb4 Collations 文字の照合規則 日本語環境で使われそうなもの utf8mb4_bin utf8mb4_general_ci (5.7 デフォルト)
utf8mb4_unicode_ci utf8mb4_unicode_520_ci utf8mb4_0900_ai_ci (8.0 デフォルト) utf8mb4_0900_as_ci utf8mb4_0900_as_cs utf8mb4_ja_0900_as_cs utf8mb4_ja_0900_as_cs_ks 12
Collation name Collation name bin コードのまま general MySQL独自規則 unicode Unicode
4.0.0 unicode_0520 Unicode 5.2.0 0900 Unicode 9.0.0 ja_0900 Unicode 9.0.0 + 日本語 13
Collation name Collation name ai Accent Insensitive as Accent Sensitive
ci Case Insensitive cs Case Sensitive ks Kana Sensitive 14
デフォルトCollationの違い デフォルトCollationの違い 5.7: utf8mb4_general_ci A=a, A=a, や≠ゃ は≠ぱ≠ば あ≠ア 🍣=
🍺 8.0: utf8mb4_0900_ai_ci A=a, A=a, や=ゃ は=ぱ=ば あ=ア 🍣≠ 🍺 15
Charset=utf8mb4 を指定しただけでは Charset=utf8mb4 を指定しただけでは 5.7 と 8.0 で動きが異なるので注意 5.7 と
8.0 で動きが異なるので注意 16
新しいCollationたち 新しいCollationたち 17
utf8mb4_0900_ai_ci utf8mb4_0900_ai_ci アクセントの違いを区別しない はは = ぱぱ = ばば 大文字小文字を区別しない びょういん
= びよういん いろは = イロハ 株式会社 = ㍿ 18
utf8mb4_0900_ utf8mb4_0900_as as_ci _ci アクセントの違いを区別する はは ≠ ぱぱ ≠ ばば
大文字小文字を区別しない びょういん = びよういん いろは = イロハ 株式会社 = ㍿ 19
utf8mb4_0900_as_ utf8mb4_0900_as_cs cs アクセントの違いを区別する はは ≠ ぱぱ ≠ ばば 大文字小文字を区別する
びょういん ≠ びよういん いろは ≠ イロハ 株式会社 ≠ ㍿ utf8mb4_bin と同じ?? (違います) 20
utf8mb4_ utf8mb4_ja ja_0900_as_cs _0900_as_cs アクセントの違いを区別する はは ≠ ぱぱ ≠ ばば
大文字小文字を区別する びょういん ≠ びよういん 株式会社 ≠ ㍿ カタカナひらがなを区別しない いろは = イロハ 21
utf8mb4_ja_0900_as_cs_ utf8mb4_ja_0900_as_cs_ks ks アクセントの違いを区別する はは ≠ ぱぱ ≠ ばば 大文字小文字を区別する
びょういん ≠ びよういん 株式会社 ≠ ㍿ カタカナひらがなを区別する いろは ≠ イロハ utf8mb4_0900_as_cs と同じ?? 22
utf8mb4_0900 と utf8mb4_ utf8mb4_0900 と utf8mb4_ja ja_0900 _0900 の違い の違い
23
ソート順 ソート順 mysql> select hex(s),s from ja order by s;
+--------+------+ | hex(s) | s | +--------+------+ | E4BA9C | 亜 | | E4BC8A | 伊 | | E99BA8 | 雨 | | E6A084 | 栄 | | E5A5A5 | 奥 | +--------+------+ 24
長音 長音 mysql> select s from ja order by s;
+--------+ | s | +--------+ | あー | | ああ | | あい | | いあ | | いー | | いい | | うあ | | うい | | うー | +--------+ 25
ja_0900 は JIS順 ja_0900 は JIS順 日本語辞書順 日本語辞書順 26
utf8mb4_0900_as_csが一番無難? utf8mb4_0900_as_csが一番無難? utf8mb4_binでもいいかも utf8mb4_binでもいいかも 27
まとめ まとめ Charsetのデフォルトがutf8mb4で便利! 日本語Collationが増えた! 適切なCollationを使おう! 28
More Decks by とみたまさひろ
See All by とみたまさひろ
MySQLとPostgreSQLのコレーション / Collation of MySQL and PostgreSQL
tmtms
1
2k
文字列の並び順 / Unicode Collation
tmtms
4
1.4k
夢の印税生活 / Life on Royalties
tmtms
0
700
文字列の並び順 / String Collation
tmtms
1
300
日本MySQLユーザ会ができるまで / making MyNA
tmtms
1
1.2k
Ruby on Browser - RubyWorld Conference 2024
tmtms
1
1.7k
Ruby on Browser
tmtms
1
2.5k
私のRSpecの書き方 / How I write RSpec
tmtms
5
2.4k
ショートカットと端末 / shortcut & terminal
tmtms
2
1.1k
Other Decks in Technology
See All in Technology
JAWS_FESTA2026_オンプレ-AWS間プロキシサーバの移行_性能_障害対応で得た実践ノウハウ_高島一晃.pdf
tkazuaki0820
1
120
Kiro Web 入門 (サインインから、頼み方、PR の受け取り、クラウドの決まりまで) | 目指せ Kiro マスター 04
inariku
PRO
2
120
Biohub - Cell Tracking During Development 5th place solution
rist
0
160
AI時代に求められる優秀なTechLeadの振る舞い
pospome
11
16k
E2E Test というハーネス — AI時代の自動テスト民主化
daishukojima
1
690
Intro to Kiro (One agent, every surface) | Kiro: Zero to Hero 01
inariku
PRO
2
130
Reticulum, le réseau cypherpunk dont vous avez besoin !
rlifchitz
0
140
【Oracle AI SPOTLIGHT ウェビナー】【特別開催:日本語で解説!】Oracle AI World 2026 最新情報フィードバック
oracle4engineer
PRO
1
210
Kiro アップデート 2026 年 11 月号 (11 月 8 日時点) | 目指せ Kiro マスター アップデート編
inariku
PRO
2
120
少ない人手 限られた予算 それでも守る 消せない・見つける・戻れる オールハザード型BCP on AWS / 20261107 Mitsutoshi Matsuo
shift_evolve
PRO
0
380
Steering と Hook (チームの決まりを守らせる) | 目指せ Kiro マスター 06
inariku
PRO
2
120
SREのためのFinOps入門
muziyoshiz
3
1.5k
Featured
See All Featured
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
1
310
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
400
Design in an AI World
tapps
1
390
Side Projects
sachag
456
43k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.9k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
First, design no harm
axbom
PRO
2
1.4k
Done Done
chrislema
187
17k
Faster Mobile Websites
deanohume
310
32k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
570
The Pragmatic Product Professional
lauravandoore
37
7.5k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k