Redigerer
Lås (databaser)
Hopp til navigering
Hopp til søk
Advarsel:
Du er ikke innlogget. IP-adressen din vil bli vist offentlig om du redigerer. Hvis du
logger inn
eller
oppretter en konto
vil redigeringene dine tilskrives brukernavnet ditt, og du vil få flere andre fordeler.
Antispamsjekk.
Ikke
fyll inn dette feltet!
I [[Database|databaser]] er '''låsing''' en teknikk som hindrer samtidig tilgang til data i en database, med hensikt å unngå [[Datakonsistens|inkonsistente]] resultater.<ref>{{Citation|author1=Gray, Jim|author2=Reuter, Andreas|title=Distributed Transaction Processing: Concepts and Techniques|year=1993|publisher=Morgan Kaufmann|pages=[https://archive.org/details/transactionproce0000gray/page/375 375–437]|isbn=1-55860-190-2|url=https://archive.org/details/transactionproce0000gray/page/375}}</ref> Det gjøres typisk på en [[oppføring]], kalt [[Rad (database)|rad]] i [[Structured Query Language|SQL]] (derav begrepet '''radlåsing'''<ref>{{Kilde www|url=https://www.digi.no/artikler/java-vennlig-personlig-oracle/340685|tittel=Java-vennlig personlig Oracle|besøksdato=2024-05-13|dato=1997-09-18|språk=no|verk=Digi.no}}</ref>). I databasehåndteringsteori brukes låsing for å implementere [[Atomisk, konsistent, isolert, durabel|isolasjon]] mellom flere databasebrukere. Et klassisk eksempel for å demonstrere problemet er hvis to [[Bank|bankfunksjonærer]] forsøker å oppdatere den samme [[Bankkonto|bankkontoen]] for to forskjellige transaksjoner. Ekspeditører 1 og 2 henter begge (altså kopierer) kontoens [[oppføring]]. Ekspeditør 1 lagrer sin transaksjon. Ekspeditør 2 lagrer en annen transaksjon på sin lagrede kopi, og lagrer resultatet. Siden både ekspeditør 1 og 2 sine resultater er basert på den opprinnelige oppføringen og den enkeltes endring, vil ekspeditør 2 sin transaksjon overskrive transaksjonen angitt av ekspeditør 1. Den endelige oppføringen gjenspeiler dermed ikke lenger den første transaksjonen, som om den tilsynelatende aldri har funnet sted. En enkel måte å forhindre dette på er å [[Fillåsing|låse en fil]] når enn en oppføring blir endret av en bruker slik at ingen andre brukere kan lagre data. Dette forhindrer at oppføringer overskrives inkonsistent, men gjør det bare mulig å prosessere én oppføring om gangen og låser ute andre brukere som trenger å redigere oppføringer samtidig. For å tillate flere brukere å redigere en databasetabell samtidig, og samtidig forhindre inkonsistenser forårsaket av ubegrenset tilgang, kan en enkelt oppføring (eller rad) ''låses'' når den hentes for redigering eller oppdatering. Alle som prøver å hente den samme oppføringen for redigering vil nektes skrivetilgang på grunn av låsen (selv om de, avhengig av implementeringen, kanskje kan være i stand til å lese oppføringen uten å redigere den). Når oppføringen er lagret eller redigeringer er kansellert frigjøres låsen. Oppføringer kan aldri lagres på en sånn måte at den overskriver andre endringer, og dermed bevares [[dataintegritet]]. == Se også == * [[Granularitet]] * [[Lese-skriverlås]] * [[Samtidighet (informatikk)|Samtidighet]] * [[Vranglås (informatikk)|Vranglås]] == Referanser == <references/> {{Database}} [[Kategori:Databaser]] [[Kategori:Sanntidsoperativsystemer]]
Redigeringsforklaring:
Merk at alle bidrag til Wikisida.no anses som frigitt under Creative Commons Navngivelse-DelPåSammeVilkår (se
Wikisida.no:Opphavsrett
for detaljer). Om du ikke vil at ditt materiale skal kunne redigeres og distribueres fritt må du ikke lagre det her.
Du lover oss også at du har skrevet teksten selv, eller kopiert den fra en kilde i offentlig eie eller en annen fri ressurs.
Ikke lagre opphavsrettsbeskyttet materiale uten tillatelse!
Avbryt
Redigeringshjelp
(åpnes i et nytt vindu)
Maler som brukes på denne siden:
Mal:Citation
(
rediger
)
Mal:Citation/core
(
rediger
)
Mal:Citation/identifier
(
rediger
)
Mal:Citation/make link
(
rediger
)
Mal:Database
(
rediger
)
Mal:Gjem ved utskrift
(
rediger
)
Mal:Hide in print
(
rediger
)
Mal:Hlist/styles.css
(
rediger
)
Mal:ISOtilNorskdato
(
rediger
)
Mal:Kilde www
(
rediger
)
Mal:Kun ved utskrift
(
rediger
)
Mal:Navboks
(
rediger
)
Mal:Only in print
(
rediger
)
Modul:Arguments
(
rediger
)
Modul:Citation/CS1
(
rediger
)
Modul:Citation/CS1/COinS
(
rediger
)
Modul:Citation/CS1/Configuration
(
rediger
)
Modul:Citation/CS1/Date validation
(
rediger
)
Modul:Citation/CS1/Identifiers
(
rediger
)
Modul:Citation/CS1/Utilities
(
rediger
)
Modul:Citation/CS1/Whitelist
(
rediger
)
Modul:ISOtilNorskdato
(
rediger
)
Modul:Navbar
(
rediger
)
Modul:Navbar/configuration
(
rediger
)
Modul:Navboks
(
rediger
)
Modul:Navbox/configuration
(
rediger
)
Modul:Navbox/styles.css
(
rediger
)
Navigasjonsmeny
Personlige verktøy
Ikke logget inn
Brukerdiskusjon
Bidrag
Opprett konto
Logg inn
Navnerom
Side
Diskusjon
norsk bokmål
Visninger
Les
Rediger
Rediger kilde
Vis historikk
Mer
Navigasjon
Forside
Siste endringer
Tilfeldig side
Hjelp til MediaWiki
Verktøy
Lenker hit
Relaterte endringer
Spesialsider
Sideinformasjon