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のロックについて(DDL編)
Search
ANDPAD inc
August 18, 2020
Technology
1
9.8k
MySQLのロックについて(DDL編)
ANDPAD inc
August 18, 2020
Tweet
Share
More Decks by ANDPAD inc
See All by ANDPAD inc
OSS開発者という働き方
andpad
5
1.7k
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
プロダクト開発を支えるデータ利活用:中央集権から「民主化」までの軌跡
andpad
0
150
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
380
読もう! Android build ドキュメント
andpad
1
440
アンドパッドにおける CocoaPods ライブラリ群の SwiftPackageManager への移行戦略
andpad
0
210
Flutter は DCM が 9 割
andpad
1
350
Amplify で SPA をホスティングする際の注意点
andpad
1
300
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
andpad
0
140
Other Decks in Technology
See All in Technology
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
1
160
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
580
プラットフォーム転換期におけるGitHub Copilot活用〜Coding agentがそれを加速するか〜 / Leveraging GitHub Copilot During Platform Transition Periods
aeonpeople
1
230
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.5k
Claude Code でアプリ開発をオートパイロットにするためのTips集 Zennの場合 / Claude Code Tips in Zenn
wadayusuke
5
930
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
10
75k
20250910_障害注入から効率的復旧へ_カオスエンジニアリング_生成AIで考えるAWS障害対応.pdf
sh_fk2
3
270
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
280
「全員プロダクトマネージャー」を実現する、Cursorによる仕様検討の自動運転
applism118
22
12k
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
520
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
8.8k
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
1.1k
Featured
See All Featured
Thoughts on Productivity
jonyablonski
70
4.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
930
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Visualization
eitanlees
148
16k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
It's Worth the Effort
3n
187
28k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
113
20k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Transcript
.Z42-ͷϩοΫʹ͍ͭͯ ʙ%%-ฤʙ
࣍ w%%-ͷΈͱվળͷาΈ wΦϯϥΠϯ%%- wNFUBEBUBMPDLʹؾΛ͚Ζ w"-5&3ؔ࿈ͷখٕ w"NB[PO"VSPSBͱ7BOJMMB.Z42-ͷҧ͍ wਪͷ%%-ϦϦʔεํ๏
͓͞Β͍ w%%- %BUB%FpOJUJPO-BOHVBHF w $3&"5& %301 "-5&3 536/$"5& w%.-
%BUB.BOJQVMBUJPO-BOHVBHF w 4&-&$5 */4&35 61%"5& %&-&5& w%$- %BUB$POUSPM-BOHVBHF w #&(*/ $0..*5 30--#"$,
࣍ w%%-ͷΈͱվળͷาΈ wΦϯϥΠϯ%%- wNFUBEBUBMPDLʹؾΛ͚Ζ w"-5&3ؔ࿈ͷখٕ w"NB[PO"VSPSBͱ7BOJMMB.Z42-ͷҧ͍ wਪͷ%%-ϦϦʔεํ๏
.Z42-"-5&35"#-&ͷॳظ࣮ w৽͍͠ςʔϒϧఆٛͷςʔϒϧʹσʔλΛίϐʔ w ࣮ߦதɺ؍ଌ͢ΔͱςϯϙϥϦϑΝΠϧ͕ݟ͑Δ w ίϐʔ͕ऴΘͬͨΒೖΕସ͑ w࣮ߦதॻ͖ࠐΈ͕ϒϩοΫ͞ΕΔ
վળͷาΈ w .Z42-W w 'BTU*OEFY$SFBUJPO͕αϙʔτ w .Z42-W w ΦϯϥΠϯ%%-͕αϙʔτ w
ߋ৽ϒϩοΫΛճආՄ w .Z42- w WBSDIBSͷΧϥϜ֦ு͕ΦϯϥΠϯରԠ w .Z42- w %%-͕ΞτϛοΫʹ w *OTUBOU"EE$PMVNOͷαϙʔτ
࣍ w%%-ͷΈͱվળͷาΈ wΦϯϥΠϯ%%- wNFUBEBUBMPDLʹؾΛ͚Ζ w"-5&3ؔ࿈ͷখٕ w"NB[PO"VSPSBͱ7BOJMMB.Z42-ͷҧ͍ wਪͷ%%-ϦϦʔεํ๏
ΦϯϥΠϯ%%- w ରԠͰ͖Δέʔεͱͦ͏Ͱͳ͍έʔε͕͋Δ IUUQTEFWNZTRMDPNEPDSFGNBOKBJOOPECDSFBUFJOEFYPWFSWJFXIUNM wରԠ͍ͯ͠Δ߹ɺࣗಈతʹΦϯϥΠϯ%%-͕બ͞ΕΔ
ΦϯϥΠϯ%%- w ΦϯϥΠϯ%%-ɹରԠɾඇରԠ w ˓ΠϯσοΫεՃɾআɺΧϥϜՃɾআ w ºWBSDIBSΧϥϜͷมߋʢWʣ w ºΧϥϜͷܕͷมߋ w
-0$,/0/& "-(03*5).*/1-"$&Λ໌ࣔతʹࢦఆ͠ɺผՄೳ mysql> ALTER TABLE sbtest.sbtest1 MODIFY COLUMN v1 VARCHAR(110), LOCK=NONE, ALGORITHM=INPLACE; ERROR 1846 (0A000): LOCK=NONE is not supported. Reason: COPY algorithm requires a lock. Try LOCK=SHARED.
ΦϯϥΠϯ%%-ͷҙ w NFUBEBUBMPDLճආ͢Δ͜ͱͰ͖ͳ͍ʢޙड़ʣ w ॻ͖ࠐΈϒϩοΫൃੜ͠ͳ͍͕ɺϨϓϦԆൃੜ͢Δ ˞"84"VSPSBͰϨϓϦԆ΄΅ൃੜ͠ͳ͍ʢޙड़ʣ w JOOPEC@POMJOF@BMUFS@MPH@NBY@TJ[F EFGBVMU.#
ΛඞཁʹԠͯ͡ௐ w ΦϯϥΠϯ%%-தʹߋ৽͞Εͨ༰Λ֨ೲ
࣍ w%%-ͷΈͱվળͷาΈ wΦϯϥΠϯ%%- wNFUBEBUBMPDLʹؾΛ͚Ζ w"-5&3ؔ࿈ͷখٕ w"NB[PO"VSPSBͱ7BOJMMB.Z42-ͷҧ͍ wਪͷ%%-ϦϦʔεํ๏
"-5&35"#-&ʹඞཁͳϩοΫ w %%-࣮ߦதͷϩοΫʢߋ৽ͷϒϩοΫʣˠɹΦϯϥΠϯ%%-Ͱղܾ w %%-ྃલͷϩοΫɹNFUBEBUBMPDL
NFUBEBUBMPDL
NFUBEBUBMPDL
w ͍τϥϯβΫγϣϯ͕"-5&3ͷྃΛϒϩοΫ w .%-ͪͷ"-5&3ͷྃΛɺޙଓͷ42-͕ͭ NFUBEBUBMPDL 4&44*0/ 4&44*0/ 4&44*0/ "-5&3 5*.&
8"*5 .%- 8"*5 .%-
ରࡦ w ͍τϥϯβΫγϣϯ͕ྲྀΕͯͳ͍λΠϛϯάΛૂ͏ w MPDL@XBJU@UJNFΛ͘ઃఆ͢Δ w 4&54&44*0/MPDL@XBJU@UJNF9 w աʹ͍ͱɺ"-5&3͕ࣦഊ͘͢͠ͳΔ w
ඵఔ͕ଥͰ
࣍ w%%-ͷΈͱվળͷาΈ wΦϯϥΠϯ%%- wNFUBEBUBMPDLʹؾΛ͚Ζ w"-5&3ؔ࿈ͷখٕ w"NB[PO"VSPSBͱ7BOJMMB.Z42-ͷҧ͍ wਪͷ%%-ϦϦʔεํ๏
"-5&35*14 w ෳͷมߋ̍ͭͷ"-5&3จͰ࣮ߦͰ͖Δ w ͨͩ͠ɺΦϯϥΠϯ%%-ඇରԠͷͷΛࠞͥΔͱɺϩοΫΛऔΔ mysql> ALTER TABLE sbtest.sbtest1
MODIFY COLUMN v1 VARCHAR(110), DROP COLUMN x2;
w ΦϯϥΠϯͰ%%-Λ࣮ߦ͢Δӡ༻ख๏ w ྲྀΕ ϨϓϦΧҰΛαʔϏε͔Β֎͢ TRM@MPH@CJO্ͨ͠Ͱ"-5&3࣮ࢪ ϨϓϦΧΛαʔϏεʹ͢
શͯͷϨϓϦΧʹ্هΛॱ൪ʹ࣮ࢪ "-5&3ࡁϨϓϦΧͱϚελʔΛೖΕସ͑Δ ࠷ޙʹɺچϚελʔʹରͯ͠"-5&3࣮ߦ w ҙ w "84"VSPSBͰΠϯελϯεؒϨϓϦέʔγϣϯΛར༻͢Δඞཁ͕͋Δ w ϨϓϦΧΛϚελʔʹॠ࣌ʹঢ֨Ͱ͖ΔΈ͕ඞཁ w "-5&3࣮ࢪલޙͰϨϓϦέʔγϣϯͷޓੑΛอͭมߋʹݶΒΕΔ w ˓จࣈྻͷ֦ுɺςʔϒϧඌͷΧϥϜՃ w ºܕมߋɺΧϥϜআ 3PMMJOH4DIFNB6QHSBEF 3FQMJDB 3FQMJDB "QQ .BTUFS "-5&3 3FQMJDB 3FQMJDB "QQ .BTUFS "-5&3 ࡁ .BTUFS 3FQMJDB "QQ 3FQMJDB ࡁ ࡁ
w ΦϯϥΠϯͰ%%-Λ࣮ߦ͢Δπʔϧ w Έ ৽͍͠ఆٛͷςʔϒϧΛ࡞ ϩοΫΛ͔͚ͣʹɺݱߦˠ৽ͰσʔλΛͪΐͬͱͣͭίϐʔ ݱߦςʔϒϧͷߋ৽
τϦΨʔͰ৽ςʔϒϧ࿈ܞ w ҙ w ॻ͖ࠐΈྔ͕̎ഒʹ૿͑Δ w NFUBEBUBMPDLճආͰ͖ͳ͍ QUPOMJOFTDIFNBDIBOHF
࣍ w%%-ͷΈͱվળͷาΈ wΦϯϥΠϯ%%- wNFUBEBUBMPDLʹؾΛ͚Ζ w"-5&3ؔ࿈ͷখٕ w"NB[PO"VSPSBͱ7BOJMMB.Z42-ͷҧ͍ wਪͷ%%-ϦϦʔεํ๏
"VSPSBͱ7BOJMMB.Z42-ͷҧ͍ w %%-ʹΑΔϨϓϦΧԆൃੜ͠ͳ͍ w NFUBEBUBMPDLϚελʔͰͷΈߟྀ͢Εྑ͍ w ͦͷΘΓɺ"-5&3࣮ߦ։࢝ɾྃ࣌ʹϨϓϦΧͰΫΤϦ͕୯ൃΤϥʔʹͳΔՄೳੑ͕͋Δ
࣍ w%%-ͷΈͱվળͷาΈ wΦϯϥΠϯ%%- wNFUBEBUBMPDLʹؾΛ͚Ζ w"-5&3ؔ࿈ͷখٕ w"NB[PO"VSPSBͱ7BOJMMB.Z42-ͷҧ͍ wਪͷ%%-ϦϦʔεํ๏
%%-࣮ߦӡ༻ϑϩʔ ΦϯϥΠϯ %%-ͷର͔ʁ ίʔυͱ ಉ࣌ϦϦʔε͕ඞཁʁ :&4 ਂϦϦʔε εςʔδϯάͰ ݕূ͠ɺͳ͚ΕதͰ(0 ҰॠͰ
ऴΘΔʁ :&4 /0 :&4 /0 NJHSBUJPOͰ MPDL@XBJU@UJNFPVU͕ ઃఆͰ͖ͳ͍ͷͰ खಈͰΔ
·ͱΊ w NFUBEBUBMPDLΦϯϥΠϯ%%-ͰճආͰ͖ͳ͍ͷͰҙ w "VSPSBͰϨϓϦԆ͕ൃੜ͠ͳ͍ͨΊɺΦϯϥΠϯ%%-ͷ׆༻͕͠ ͍͢ w ࠓޙɺੵۃతʹதʹ%%-Λྲྀ͍͖ͯ͠·͠ΐ͏
5IBOLT