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徹底入門 第4版 - ユーザー管理とか文字コードとか / MySQL Book 4 ...
Search
とみたまさひろ
July 29, 2020
Technology
710
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MySQL徹底入門 第4版 - ユーザー管理とか文字コードとか / MySQL Book 4 - User and Charset
ニフクラエンジニアミートアップ
https://fujitsufjct.connpass.com/event/182580/
でしゃべった時のスライドです。
とみたまさひろ
July 29, 2020
More Decks by とみたまさひろ
See All by とみたまさひろ
MySQLとPostgreSQLのコレーション / Collation of MySQL and PostgreSQL
tmtms
1
1.9k
文字列の並び順 / Unicode Collation
tmtms
4
1.2k
夢の印税生活 / Life on Royalties
tmtms
0
660
文字列の並び順 / String Collation
tmtms
1
270
日本MySQLユーザ会ができるまで / making MyNA
tmtms
1
1.1k
Ruby on Browser - RubyWorld Conference 2024
tmtms
1
1.7k
Ruby on Browser
tmtms
1
2.4k
私のRSpecの書き方 / How I write RSpec
tmtms
5
2.3k
ショートカットと端末 / shortcut & terminal
tmtms
2
1.1k
Other Decks in Technology
See All in Technology
Claude in Chrome 入門 / Introduction to Claude in Chrome
cielo1985
0
670
顧客に向き合う開発組織へ。リアーキテクチャとフィーチャーチーム化で挑む組織改革
safie
0
570
絵ではじめるKubernetesセキュリティ
aoi1
3
260
From Vanilla Kubernetes to a Batteries-Included Platform: Developer Experience at 1,300+ Clusters
yosshi_
0
700
Adaptive Warehouse を今すぐ導入すべき理由と迷ったときの判断基準
__allllllllez__
0
210
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
320
Reactの設計論
uhyo
17
9k
AI 駆動 Terraform 開発/SRE_BizReach_MIXI_2
visional_engineering_and_design
5
2.1k
AI時代、データエンジニアが一番おもろい
genshun9
0
440
GoCon2026 - Open Source, Open World
sanposhiho
4
3.5k
多層防御と最⼩権限で実現する、安全なAIエージェント設計パターン
lycorptech_jp
PRO
1
280
AI時代だからこそ、スケールしないことをやろう
yutashigemura
1
170
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
410
GraphQLとの向き合い方2022年版
quramy
50
15k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
350
Designing for Timeless Needs
cassininazir
1
470
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
530
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Believing is Seeing
oripsolob
1
220
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
250
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
990
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Transcript
MySQL徹底入門 第4版 MySQL徹底入門 第4版 ユーザー管理とか文字コードとか ユーザー管理とか文字コードとか とみたまさひろ 2020-07-29 ニフクラエンジニアミートアップ #nifcloud_emup
1
自己紹介 自己紹介 とみたまさひろ 日本MySQLユーザ会 (文字化け担当) MySQL Parameters 好きなMySQLの命令はSHOW CREATE TABLE
富士通クラウドテクノロジーズ ニフクラ いま見てる人は全員知ってるはず 認知度100% @tmtms https://tmtms.hatenablog.com https://mysql-params.tmtms.net/mysqld/?vers=8.0.21 2
執筆分 執筆分 5 「ユーザー管理」 10.5 「データベースプログラミング Ruby」 11 「文字コードと日本語環境」 14
「逆引きMySQL辞典」のうちの2項目 全体の1割弱 その他、GitLab や Mattermost を用意したり 全体をレビューしたり 3
見どころ 見どころ 4
認証プラグイン auth_socket 認証プラグイン auth_socket ローカルのmysqldにOSと同じユーザー名で パスワード無しで接続できる rootとかで便利 どうせOSのrootは何でも出来るし 5
パスワード管理 パスワード管理 有効期限 期限切れだと再設定が必要 再利用ポリシー 過去N回分は再利用不可 過去N日分は再利用不可 パスワード強度 ユーザー名と同じ文字列は不可 N文字未満は不可
大文字/小文字/数字/記号をそれぞれN文字必要 6
権限 partial_revokes 権限 partial_revokes 一部のDBを除くという指定が可能 GRANT SELECT ON *.* TO
hoge; REVOKE SELECT ON mysql.* FROM hoge; 7
ロール ロール ユーザーに適用する権限の集合に名前をつけたもの 複雑な権限を複数のユーザーに適用するのに便利 8
文字列比較 文字列比較 なんでやねん! というのを説明 SELECT 'abc'='ABC' => ⭕ SELECT '〇'='0'
=> ⭕ SELECT 'うさぎさんちーむ'='ウサギ㌠' => ⭕ SELECT '平成'='㍻' => ⭕ SELECT '令和'='㋿' => ❌ 9
文字列比較 文字列比較 なんでやねん! というのを説明 SELECT * FROM tbl WHERE utf8mb4_col
= _ascii'ABC' => ⭕ SELECT * FROM tbl WHERE ascii_col = _utf8mb4'ABC' => ⭕ SELECT * FROM tbl WHERE ascii_col = _utf8mb4'ほげ' => ❌ ERROR 1267 (HY000): Illegal mix of collations (ascii_general_ci, IMPLICIT) and (utf8mb4_0900_ai_ci,COERCIBLE) for operation '=' 10
ソート順 ソート順 JISマニア向け utf8mb4_ja_0900_as_cs mysql> SELECT c,HEX(c) FROM t ORDER
BY c; +------+--------+ | c | hex(c) | +------+--------+ | 亜 | E4BA9C | | 伊 | E4BC8A | | 宇 | E5AE87 | | 栄 | E6A084 | ← | 奥 | E5A5A5 | ← +------+--------+ 11
ソート順 ソート順 長音記号もJIS準拠 mysql> SELECT * FROM tt ORDER BY
c; +--------+ | c | +--------+ | あー | ←「あ」よりも前 | ああ | | あい | | あう | | いあ | | いー | ←「あ」と「い」の間 | いい | | いう | | うあ | | うい | | うー | ←「い」と「う」の間 | うう | +--------+ 12
こんな便利な表が! こんな便利な表が! 13
自分の担当以外のおすすめ 自分の担当以外のおすすめ 6 「MySQLの運用」 8 「レプリケーション」 9 「バックアップとリストア」 yuku0825さん担当 14
「逆引きMySQL辞典」 商業出版技術書と思えない文体がいい 14
おわり おわり 15