Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
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
260
日本MySQLユーザ会ができるまで / making MyNA
tmtms
1
1.1k
Ruby on Browser - RubyWorld Conference 2024
tmtms
1
1.6k
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
AIエージェントの開発・提供におけるセキュリティリスクの論点と対策
flatt_security
1
420
AI駆動開発をチームに根付かせる - 「1行も書かない」チームがHarnessを育てた1年 -
kenichirokimura
6
3.7k
APIセキュリティを組織で実現するには~注力する点と設計・実装に入れたい対策~
riiimparm
3
900
When Token Pruning is Worse than Random: Understanding Visual Token Information in VLLMs
sansantech
PRO
0
240
[RSJ26] Building a VLA Model Based on Self-Distilled Classification
keio_smilab
PRO
0
170
いかに伝えるか 〜新卒エンジニアの教育のための、ライトノベル活用の一例
ikedon
1
170
IDperturb: Enhancing Variation in Synthetic Face Generation via Angular Perturbation
sansantech
PRO
0
110
こんなアーキテクチャ図は嫌だ BEYOND THE TIME: 半年後の自分へ贈る15のメッセージ / 15 of Anti-pattern in AWS Architecture Diagrams
naospon
2
160
いま、生成AIにKaggleをどこまで 任せられるか — ROGIIコンペでの進め方とTips
k951286
2
1.2k
はじめてのDatabricks:技術者向けワークショップ / beginner-workshop
databricksjapan
PRO
0
110
[RSJ26] AnoleVLA: Lightweight Vision-Language-Action Model with Deep State Space Models for Mobile Manipulation
keio_smilab
PRO
0
120
DGX Sparkを2台使って いろいろ動かす話
sonoda_mj
1
120
Featured
See All Featured
Side Projects
sachag
455
43k
Abbi's Birthday
coloredviolet
3
9.7k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
640
How to build a perfect <img>
jonoalderson
1
5.9k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
The agentic SEO stack - context over prompts
schlessera
0
880
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
How to Ace a Technical Interview
jacobian
281
24k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Spectacular Lies of Maps
axbom
PRO
1
960
Six Lessons from altMBA
skipperchong
29
4.5k
First, design no harm
axbom
PRO
2
1.3k
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