Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

MaxLocksPerFile Error

Tipp Entwicklung VB for Applications

Mitglied: J0j0

J0j0 (Level 1) - Jetzt verbinden

08.07.2009, aktualisiert 03.08.2010, 10349 Aufrufe, 3 Kommentare

MaxLocksPerFile Error in MS Access

1. Variante:
DB Exklusive öffnen (Kein Multiuser mehr möglich)
Ändere "Set db = CurrentDb" auf:
Set db = DBEngine.OpenDatabase("F:\Test\testBE.mdb", True)

2. Variante Dauerhaft MaxLocks hochsetzen:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 4.0
(Standard 9500)

3. Variante temporär für die aktuelle Sitzung
DBEngine.SetOption dbMaxLocksPerFile, 15000
Mitglied: Biber
08.07.2009 um 20:23 Uhr
Moin J0j0,

ja nee.... lass uns da noch ein bisschen dran feilen - das lass ich so nicht als Anleitung gelten.

[Als Tipp hätte ich ja nix gesagt...]

Was mir fehlt:
  • Wer wo wann überhaupt diesen "Fehler 3072" ("Anzahl der maximalen Dateisperrungen überschritten") unter welchen Umständen zu sehen bekommen könnte
  • Wer es sich denn überhaupt erlauben kann, eine MDB wie bei Variante 1 für sich ganz allein zu blocken
  • Oder die umgedrehte Seite der Medaille: Welcher Access-Normal-User in einem handelsüblichen Firmennetz darf denn was-auch-immer im HKLM-Hive der Registry rumfuckeln?
  • Welcher Fehler könnte mich nach zwei Minuten ereilen, wenn ich denn mal auf die Sahne haue und sage: "Hey, statt der vorgeschlagenen MaxLocksPerFile von 0x251c/9500dez stell ich mal 200000 ein, da bin ich dann auf der sicheren Seite."
( 2 Minuten später kommt: "Möglicherweise ist der Arbeitsspeicher für ... nicht ausreichend. Sichern Sie bitte noch nicht gespeicherte Daten..")

Ich weiss nicht, wo und bei was Dich diese MaxLocksPerFile-Grenze erwischt hat - bei einer Synchronisation, einem Massen-Update, einer Tabellenstrukturänderung oder einem Daten-Export.

In allen Fällen ist IMHO eher eine überlegte Portionierung der Transaktion (z.B. Commit nach je 5000 Datensätzen) sinnvoll oder, wenn es gar überhaupt nicht anders geht, eine Variante Deiner Variante 3
( aber nicht
DBEngine.SetOption dbMaxLocksPerFile, 15000
..sondern explizit
DAO.DBEngine.SetOption dbMaxBufferSize, nnnnn
DAO.DBEngine.SetOption dbMaxLocksPerFile, mmmmm
)

Dennoch ganz klar - die Strategie der Redmonder PraktikantInnen (und diese Strategie können wir nicht unterlaufen) ist
  • ALLE innerhalb einer Transaktion warum-auch-immer-gesperrten Datensätze bis zum Ende der Transaktion in ihrer vollen Satzlänge zu sperren.
  • dafür gibt es einerseits die 9500 (=ANZAHL der Sperrungen und deren Verwaltung).
  • dazu kommt allerdings der Arbeitsspeicherbedarf platt gesagt 9500 mal Datensätzlänge
  • wenn Du NICHT explizit das UseTransaction-Property geändert hast (z.B. mit KlickiBunti bei den "Abfrageeingeschaften" einer "Aktualisungsabfrage" mit Setzen der Eigenschaft "Transaktionen verwenden" auf "Nein"), dann wird die Gesamt-Aktion ohnehin portioniert/mit mehreren Commit-Punkten versehen.
  • aber eine vollständige Freigabe der Ressourcen erfolgt erst, enn explizit das oberste aktive DB-Objekt (im Normalfall CurrentDB()) destroyed wird. Sonst wird "nur" nach einem Commit/EndTransaction diese Sperren-verwaltung freigegeben.
Ein Hochsetzen der MaxLocksPerFile auf einen Mondwert entspricht de facto einem "Setze Transaktionen auf Nein", was auf deutscher bedeutet : "No way back - wenn irgendwann irgendwo beim Updaten von Satz 23456 von 25000 ein Fehler auftritt, dann brich ab und lass alles in dem Zustand, in dem es jetzt halt ist."

Na ja, egal... was ich nur sagen wollte: nach dem Lesen einer Anleitung sollte die geneigte Leserin/der gramgebeugte Leser eigentlich besser verstehen und wissen, an welchen Stellschrauben er drehen sollte und warum und wann lieber nicht.

Von daher meine Bitte:
  • entweder "Anleitung" und dann aber noch etwas Butter bei die Fische mit dem Button "Editieren"
  • oder umstufen als "Tipp".

Natürlich würde mich Möglichkeit A mehr freuen... ich will ja auch was lernen hier.

Grüße
Biber
Bitte warten ..
Mitglied: 80220
09.07.2009 um 00:19 Uhr
Als Anleitung etwas mager um nicht zu schreiben total daneben.
Bitte warten ..
Mitglied: J0j0
09.07.2009 um 09:23 Uhr
Hey zusammen,

sorry ich hab einfach irgendwas ausgewählt!
Wer mich die Tage ranmachen und das ausführlicher Schreiben!

Lg
Bitte warten ..
Ähnliche Inhalte
Verschlüsselung & Zertifikate
MS PKI Zertifikattemplate Error 0x80094800
Tipp von SnipesVerschlüsselung & Zertifikate2 Kommentare

Hallo liebe Admin-Gemeinde, dieser Tipp ist für alle, die wie ich einmal wieder auf dem Schlauch stehen! Als ich ...

Drucker und Scanner
Zebra Etikettendrucker - Farbband wird nicht erkannt (Ribbon Error)
Tipp von SoerenKohlDrucker und Scanner5 Kommentare

Symptom: Gerät bleibt mit einem Ribbon Error stehen Betroffene Geräteserien: Xi, XiII, XiIII, XiIII Plus, PAX, Z105SL Bedeutet: Das ...

Windows 10
Windows 10 Fehler bei der Installation von Apps aus dem App Store oder beim Hinzufügen von Konten zu Windows Mail (Error 0x8E5E03fa und 0x80073B0F)
Anleitung von rzlbrnftWindows 10

Bei einem meiner Rechner hatte ich massive Probleme mit dem ausführen von windows Store Apps, die Installation ließ sich ...

Neue Wissensbeiträge
Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 6 StundenBatch & Shell7 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 8 StundenHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 1 TagMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 1 TagSicherheit1 Kommentar

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Heiß diskutierte Inhalte
Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server17 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows 10
Windows 10 dunkler Bildschirm nach Umfallen
Frage von AkcentWindows 1015 Kommentare

Hallo, habe hier einen Windows 10 Rechner der von einem User umgefallen wurde (Beine übers Knie, an den PC ...

Windows 10
Bitlocker nach Verschlüsselung nicht mehr aufrufbar!
gelöst Frage von alexlazaWindows 1013 Kommentare

Hallo, ich besitze ein HP ZBook 17 G4 mit einem Windows 10 Pro Betriebssystem. Bei diesem Problem handelt sich, ...

Batch & Shell
Neuste Datei via PowerShell kopieren
gelöst Frage von kaiuwe28Batch & Shell11 Kommentare

Hallo zusammen, ich hatte mir mit Hilfe der Suche im Forum einen kleinen Code von colinardo rausgesucht und versucht ...