په MySQL کې کوډ کول: د ماسټر کیلي گردش

د کورس لپاره د نوي نوم لیکنې د پیل په تمه "ډیټابیس" موږ په MySQL کې د کوډ کولو په اړه د مقالو لړۍ خپرولو ته دوام ورکوو.

د دې لړۍ په تیرو مقالو کې، موږ بحث وکړ د ماسټر کیلي کوډ کول څنګه کار کوي. نن ورځ، د مخکې ترلاسه شوي پوهې پر بنسټ، راځئ چې د اصلي کلیدونو گردش وګورو.

د ماسټر کیلي گردش د دې نوي کیلي سره د نوي ماسټر کیلي رامینځته کول او د میز ځای کیلي (کوم چې د میز ځای سرلیکونو کې زیرمه شوي) بیا کوډ کول شامل دي.

راځئ چې په یاد ولرو چې د کوډ شوي میز ځای سرلیک څه ډول ښکاري:

په MySQL کې کوډ کول: د ماسټر کیلي گردش

د تیرې مقالې څخه، موږ پوهیږو چې سرور په پیل کې د ټولو کوډ شوي میزونو سرلیکونه لولي او ترټولو لوی KEY ID په یاد لري. د مثال په توګه که موږ د KEY سره درې میزونه لروID = 3 او یو میز د کلید سرهID = 4، نو اعظمي کلیدي ID به 4 وي. راځئ چې دې کلیدي ID - MAX KEY ID ته ووایو.

د ماسټر کلیدي گردش څنګه کار کوي

1. کارونکی د ALTER INNODB ماسټر کیلي اجرا کوي.

2. سرور د کیرینګ غوښتنه کوي ترڅو د سرور UUID او KEY سره نوې ماسټر کیلي رامینځته کړيID د یو جمع MAX سره مساويKEYID نو موږ د INNODB سره مساوي ماسټر کیلي ID ترلاسه کووKEY-UUID-(MAXKEYID + 1). د ماسټر کیلي په بریالي نسل کې، د MAX کلیدي ID د یو لخوا زیاتیږي (د بیلګې په توګه MAXKEYID=MAXKEYID + 1).

3. سرور د ماسټر کیلي سره کوډ شوي ټول میز ځایونه سکین کوي، او د هر میز ځای لپاره:

  • د میز ځای کیلي د نوي ماسټر کیلي سره کوډ کوي؛

  • کلیدي ID نوي MAX ته تازه کويKEYپېژندپاڼه

  • که UUID د سرور UUID څخه توپیر ولري، نو بیا سرور UUID تازه کړئ.

لکه څنګه چې موږ پوهیږو، د ماسټر کیلي ID د جدول د کوډ کولو لپاره کارول کیږي یو UUID او د میز د سرلیک څخه لوستل شوي کلیدي ID لري. هغه څه چې موږ یې اوس کوو دا معلومات د میز ځای کوډ کولو سرلیک کې تازه کول دي ترڅو سرور سم ماسټر کیلي ترلاسه کړي.

که موږ د مختلف ځایونو څخه میزونه ولرو، لکه مختلف بیک اپ، نو دوی ممکن مختلف ماسټر کیلي وکاروي. دا ټول ماسټر کیلي به اړتیا وي چې د ذخیره کولو څخه بیرته ترلاسه شي کله چې سرور پیل شي. دا کولی شي د سرور پیل سست کړي، په ځانګړې توګه که چیرې د سرور اړخ کلیدي پلورنځي کارول کیږي. د ماسټر کیلي گردش سره، موږ د میز ځای کیلي د یو واحد ماسټر کیلي سره بیا کوډ کوو کوم چې د ټولو میز ځایونو لپاره ورته دی. سرور باید اوس په پیل کې یوازې یو ماسټر کیلي ترلاسه کړي.

دا، البته، یوازې یو خوندور اړخ اغیز دی. د ماسټر کلیدي گردش اصلي هدف زموږ سرور ډیر خوندي کول دي. په هغه حالت کې چې ماسټر کیلي په یو ډول له والټ څخه غلا شوې وي (د مثال په توګه ، د والټ سرور څخه) ، دا ممکنه ده چې نوې ماسټر کیلي رامینځته کړئ او د میز ځای کیلي بیا کوډ کړئ ، غلا شوې کیلي باطلوي. موږ خوندي یو ... نږدې.

په تیره مقاله کې، ما د دې په اړه خبرې وکړې چې څنګه یو ځل د میز ځای کیلي غلا کیږي، دریم اړخ کولی شي دا د ډیټا ډیکریټ کولو لپاره وکاروي. په دې شرط چې زموږ ډیسک ته لاسرسی ولري. که ماسټر کیلي غلا شوې وي او تاسو کوډ شوي ډیټا ته لاسرسی لرئ ، تاسو کولی شئ د غلا شوي ماسټر کیلي د میز ځای کیلي ډیکریټ کولو لپاره وکاروئ او کوډ شوي ډیټا ترلاسه کړئ. لکه څنګه چې تاسو لیدلی شئ، د ماسټر کیلي گردش پدې قضیه کې مرسته نه کوي. موږ د میز ځای کیلي د نوي ماسټر کیلي سره بیا کوډ کوو، مګر اصلي کیلي چې د ډیټا کوډ کولو / کوډ کولو لپاره کارول کیږي یو شان پاتې کیږي. له همدې امله، "هیکر" کولی شي د ډیټا ډیکریټ کولو لپاره د دې کارولو ته دوام ورکړي. مخکې مې ورته اشاره وکړه د MySQL لپاره پرکونا سرور د ریښتیني میز ځای بیا کوډ کول ترسره کولی شي ، نه یوازې ساده میز ځای کیلي بیا کوډ کول. دې خصوصیت ته د کوډ کولو تارونه ویل کیږي. په هرصورت، دا فعالیت اوس مهال تجربه لري.

د ماسټر کیلي گردش ګټور دی کله چې ماسټر کیلي غلا شي ، مګر د برید کونکي لپاره هیڅ لاره شتون نلري چې دا وکاروي او د میز ځای کیلي ډیکریټ کړي.

د وړیا ډیمو درس لپاره لاسلیک وکړئ.

نور یی ولوله:

سرچینه: www.habr.com