
I-Oracle SQL iyithuluzi elinamandla kakhulu elivumela abasebenzisi ukuthi balawule futhi babuze idatha ngaphakathi kwesizindalwazi. Umsebenzi owodwa ovamile abahleli bezinhlelo abavame ukudinga ukuwenza ukuhlola ukukhiya kwetafula. Lokhu kuhlanganisa ukukhomba lapho into egciniwe, njengethebula, ikhiywa ngomsebenzi, ukuvimbela eminye imisebenzi ukuthi ingafinyeleli noma iyilungise. Uma ukukhiya kwethebula kwenzeka, kungaba nomthelela ekusebenzeni kwesistimu yakho yedatha, ngakho kubalulekile ukuxilonga ngempumelelo nokubhekana nakho.
Isixazululo se-Oracle SQL Lock Lock
Ku-Oracle SQL, ungakwazi ukuhlola ngempumelelo ukukhiya kwethebula usebenzisa ukubukwa okuguquguqukayo kokuthi `DBA_BLOCKERS`, `DBA_WAITERS`, kanye nokuthi `V$LOCK`. Lokhu kubuka kunikeza imininingwane mayelana namaseshini abambe izingidi ezinsizeni, izikhathi ezilinde izikhiya, nezikhiya ezitholwe ngezikhathi ezithile. Izihlonzi ezingukhiye zizosisiza ukuthi sihlukanise inkinga futhi sithole iseshini ngqo enesibopho sokukhiya.
KHETHA c.umnikazi,
c.igama_lento,
c.uhlobo_lwento,
b.sid,
b.serial#,
b.isimo,
b.omsebenzisi,
b.umshini
FROM v$locked_object a,
v$session b,
dba_izinto c
LAPHO b.sid = a.session_id KANYE
i.object_id = c.object_id;
Incazelo Yekhodi Yesinyathelo Nesinyathelo
Ake sihlukanise ukusebenza kombuzo we-Oracle SQL.
1. Ukubuka kokuthi `V$LOCKED_OBJECT` kuthwebula zonke izinto ezikhiyiwe kusizindalwazi kanye nezihlonzi zeseshini (`SESSION_ID`) zezikhathi ezibambe izingidi.
2. Ukubuka kokuthi `V$SESSION` kubamba ulwazi mayelana neseshini ngayinye esebenzayo, okuhlanganisa i-SID, SERIAL#, STATUS yeseshini, nomsebenzisi we-OS emshinini obangela ukukhiya.
3. Ukubuka kokuthi `DBA_OBJECTS` kuqukethe ulwazi lweleveli yento, okuhlanganisa umnikazi Wento, igama, nohlobo (ithebula, ukubuka, njll.).
Ngokuhlanganisa lokhu kubuka sisebenzisa izihlonzi zokhiye ezifanele, sithola ukubuka okuhambisanayo kwanoma yikuphi ukukhiya endaweni, ubani obangela ukukhiywa, nokuthi iyiphi into ekhiyiwe.
Imitapo yolwazi kanye Nemisebenzi esetshenziswa ku-Oracle SQL Yokuhlola Ukukhiya Kwethebula
I-Oracle SQL ihlinzeka ngenani lokubukwa kokusebenza okuguquguqukayo okuchazwe ngaphambilini (`V$`) nokubukwa kwesichazamazwi sedatha (`DBA_`). Lezi izingxenye zesofthiwe ezisetshenziselwa ukwethula ulwazi lokuphatha mayelana nesizindalwazi.
Usebenzisa lokhu kubuka, ungakwazi ukuxilonga ngokuphumelelayo izinkinga zokusebenza, uthole izinkinga zokukhiya, futhi uqaphe iyonke impilo yesizindalwazi sakho se-Oracle. Hlala ukhumbula, ukhiye wokuphatha ngempumelelo ukukhiya kwethebula usekuqondeni lokhu kubuka nokukusebenzisa ngendlela efanele.
Ukuphatha izikhiya zetafula ngokushesha nangempumelelo kubalulekile ekugcineni ukusebenza kwesistimu yakho yedatha nokuqinisekisa ukusebenza kahle.
Izinkinga ezifanayo ku-Oracle SQL
Njengoba nje ngokhiye wetafula, ezinye izindaba ezifanayo ezifana nokukhiya, umbango we-latch, noma ukhiye wezinga lemigqa kungenzeka futhi kusizindalwazi se-Oracle SQL. I-Deadlocks yisimo esithile lapho imisebenzi emibili noma ngaphezulu ivimbana unomphela ngokucela ukukhiya esisetshenziswa somunye.
[ulimi lwerowu = “Oracle SQL”]
KHETHA i-a.session_id,
b.serial#,
a.lock_type,
a.lock_id1,
a.lock_id2
KUSUKA ku-dba_blockers a,
v$seshini b
LAPHO i-id_session = b.sid;
[/ umugqa]
Ukucwaninga, ukuqonda, nokusebenzisa imibono nemisebenzi ye-Oracle eguquguqukayo kuhlala kuwukhiye wokuphatha kahle imininingwane yakho yolwazi ye-Oracle, okukuvumela ukuthi ubhekane nalezi zinkinga ezingaba khona. Imayelana nokugcina ukugeleza kwedatha kusebenza kahle futhi wenze okuningi nge-Oracle SQL yakho.