$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
introduction about MySQL
Search
Arakaki Yuji
June 15, 2019
Programming
0
180
introduction about MySQL
MySQLの基本的な操作やRDBとしての設計・利用などはできるがMySQLのソフトウェアとしての特性をまだちゃんと理解していない方向けMySQLの特徴が伝わるように作りました。
Arakaki Yuji
June 15, 2019
Tweet
Share
More Decks by Arakaki Yuji
See All by Arakaki Yuji
家族・子育て重視/沖縄在住を維持しながらエンジニアとしてのキャリアをどのように育てていくか?
ug
0
370
私の選ぶ開発環境: Raycast, Vivaldi, Warp, Emacsを活用したワークフロー
ug
0
1.5k
2週間に一度からリリースを日々の当たり前にするエンジニアリングマネジメント
ug
0
1.6k
レガシーフレームワークからの移行
ug
0
480
データ指向プログラミング(仮)のススメ
ug
1
540
プログラミング言語に依存しない、質の高いコードを書く技術
ug
0
2.4k
Issues About frontend development
ug
0
3.1k
Azure web app is good
ug
0
480
技術基盤/SREの視点で取り組む、サービスの成長を継続し、加速させるためのPHPアプリケーション改善
ug
0
1.4k
Other Decks in Programming
See All in Programming
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.1k
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
0
110
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.3k
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
3.8k
愛される翻訳の秘訣
kishikawakatsumi
3
330
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
150
マスタデータ問題、マイクロサービスでどう解くか
kts
0
110
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
200
AIコーディングエージェント(Gemini)
kondai24
0
250
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
440
Cell-Based Architecture
larchanjo
0
140
認証・認可の基本を学ぼう前編
kouyuume
0
260
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
710
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
160
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
22
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
220
Six Lessons from altMBA
skipperchong
29
4.1k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
29
The World Runs on Bad Software
bkeepers
PRO
72
12k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
500
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
1.9k
Transcript
MySQL Payke
Goal u MySQL!RDBM MySQLNS!CHM @ ?O u 24%6=+,71='095:)7."=' MySQLNS
!CHDG JF! KP u MySQLQ+0;*$=*= BAInnoDB >I u TR L E03-&#=/-&+09=(&)8=<-& U
u MySQL u u
u
MySQL!& u +($*%() #0 u '+"1. = 1) # u
) # 1./ Linuxps%+# -, u SHOW PROCESSLIST %+# , u PostgreSQL %($*0 u '+"11. = 1$*
MySQL u
MySQL" u !#$$ u MySQL%+2 &1()0, u
/!#$$. -3'*. u InnoDB u MyISAM u Memory u MyRocks
u u
u
-!"61&#! u InnoDB%*/81&#! 321&#! -!"61&#! u -!"61&#!B$..)('0 '7-,&" :=
u 0 '&":= 391&#!5 394<0! +1!;
+)+! u (0+! +! u +)+! )&$#(0+! 6,
u +)+! 3 1:% " .(0 +! 1: *'+5 u (0+! 1:4 79228-/
)-/!/(& " u /(& ";< -79: u /(& ">?
u '*. #" 2=79: u ,"$5/(& " 6@10'*. ,+<3 )-/!/(& "=4 79: u #/%-/(& " 6@10#/%-/(& "A , +< ,"$5/(& ",+< 8)-/!/ (& "
u u READ UNCOMMITTED
u READ COMMITTED u REPEATABLE READ u SERIALIZABLE u MySQL u MVCC
!% %&-#" u !% % &-) % # u .0
&- $(/ %,' u %&-) #(/ 4 &-#" (SQL+*) u READ UNCOMMITTED u READ COMMITED u REPEATABLE READ u SERIALIZABLE
READ UNCOMMITED u &#% %)* (*035%)* (*, u &#%
$!6 4 u -./1+2 "'!
READ COMMITTED u ).1" #-17 ?E !+&) ).1" #-1FN
u ).1" #-1<FN!+&) K).1" #-1 7 u 5J0*/ MG u 8$'),1)2=@3 L(% H GCA u A).1" #-1@32;B).1" #-1 !+&) 64A< B>(%B!+&):9OIBDGCA
REPEATABLE READ u MySQL$& *%%),"!#(,/D+'* u READ UNCOMMITED FB
C u %),"!#(, I:- 2%),"!#(,= EI:21 8@ u ;>G u KH-7J 4A%),"!#(, KH5 -L3 0.2KH7J5 - < u InnoDB0.MVCC9 ;>?6
SERIALIZABLE u 80*/5B> u '-2#"$,2A467 '-2#"$,2=<:CF )2'+.(@ u E;
31&"?9 u % +!'1&"A4G6 D
MySQLW7BAX: MVCC u MultiVesion Concurrency Control[ u ;DTM,)(.*0&2*-"IC SF?I
u InnoDB98 u 7 \!R"JZ u 7 IC! &(+1/'26PY u 7 VU! &(+1/'26PY u &(+1/'26PY-36%$&26 >K EL u N-36%$&26>K;D&(+1/'26PY"HQ u -36%$&26<$#47ICVU&(+1/'26PY" ,)"@G]I u -36%$&26&(+1/'26=&(+1/'267": "5*$O
MySQL7'.-8: MVCC u " u 2 %3,.96 1
!& &(5$#+/ u )4 !& &(5$#0* u REPETABLE READ u READ COMMITTED
u u u u u
u u u
! u (# ) u $ #
u u %"( ) u #
!.) u ! u +*! u "! u -("!
u ! u "! "!0'"& ! u id124 u UPDATE users SET age = 30 WHERE id BETWEEN 2 AND 4 , $#' id=3& /%!
0(&A8 u *&')$0(& u 20(&%-(,0(&<3" u 20(	 7%-(,1@0(& ! u
1,2,4? 43 u (negative infinity 1] u (1 2] u (2 3] u (4 positive infinity] u *&')$0(&:=2positivie infinity0(& ! INSERT ).+/ 56 >;