"Dosya paylaşım kilidi sayısı aşıldı..." büyük işlem işleme sırasında hata

Not

Office 365 ProPlus, Microsoft 365 Kurumsal Uygulamaları olarak yeniden adlandırılıyor. Bu değişiklik hakkında daha fazla bilgi için, bu blog yazısını okuyun.

Belirtiler

Bir veya daha fazla kullanıcı çok kullanıcılı bir ortamda çok sayıda işlemi işlediğinde, hareketler aşağıdaki hata iletisiyle başarısız olabilir:

Dosya paylaşım kilidi sayısı aşıldı. MaxLocksPerFile kayıt defteri girişini artırın.

Neden

Bir işlemi gerçekleştirmek için gereken kilit sayısı dosya başına en fazla kilit sayısını aşıyorsa hata oluşur.

Geçici Çözüm

Önemli Bu bölüm, yöntem veya görev, kayıt defterini nasıl değiştireceğinizi söyleyen adımlar içerir. Ancak, kayıt defterini yanlış değiştirirseniz ciddi sorunlar oluşabilir. Bu nedenle, bu adımları dikkatle izlediğinden emin olun. Daha fazla koruma için, değiştirmeden önce kayıt defterini yedekle. Ardından, bir sorun oluşursa kayıt defterini geri yükleyebilirsiniz. Kayıt defterini yedekleme ve geri yükleme hakkında daha fazla bilgi için, makaleyi Microsoft Bilgi Bankası'nda görüntülemek için aşağıdaki makale numarasını tıklatın:

322756 Windows'da kayıt defterinasıl yedeklenir ve geri yüklenir

Bu sorunu aşmak için, dosya başına en fazla kilit sayısını artırın. Bunu yapmak için aşağıdaki yöntemlerden birini kullanın.

Yöntem 1: Dosya başına maksimum kilit sayısını artırmak için kayıt defteri anahtarını MaxLocksPerFile olarak ayarlayın

  1. Başlat'ıtıklatın ve ardından Çalıştır'ıtıklatın.

  2. Regedit yazın ve sonra Tamam'ıtıklatın.

  3. Uygun yöntemi kullanın:

    • Microsoft Access 2000'de, Microsoft Access 2002'de ve 32 bit Windows işletim sisteminde çalışan Microsoft Office Access 2003'te, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Jet 4.0

      Microsoft Access 2000'de, Microsoft Access 2002'de ve 64 bit Windows işletim sisteminde çalışan Microsoft Office Access 2003'te, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\YAZILIM\Wow6432Düğüm\Microsoft\Jet\4.0\Motorlar\Jet 4.0

    • 32 bit Windows işletim sisteminde çalışan Microsoft Office Access 2007'de, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\12.0\Access Bağlantı Altyapısı\Motorlar\ACE

      64 bit Windows işletim sisteminde çalışan Microsoft Office Access 2007'de, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Düğüm\Microsoft\Office\12.0\Access Bağlantı Motoru\Motor\ACE

    • 32 bit Windows işletim sisteminde çalışan Microsoft Access 2010'da, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Access Bağlantı Motoru\Motor\ACE

      64 bit Windows işletim sisteminde çalışan Microsoft Office Access 2010'da, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Düğüm\Microsoft\Office\14.0\Access Bağlantı Motoru\Motor\ACE

    • 32 bit Windows işletim sisteminde çalışan Microsoft Access 2013'te, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\Access Bağlantı Altyapısı\Motorlar\ACE

      64 bit Windows işletim sisteminde çalışan Microsoft Office Access 2013'te, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Düğüm\Microsoft\Office\15.0\Access Bağlantı Motoru\Motor\Ace

    • 32 bit Windows işletim sistemi üzerinde çalışan Microsoft Access 2016'da, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\Access Bağlantı Altyapısı\Motorlar\ACE

      64 bit Windows işletim sisteminde çalışan Microsoft Office Access 2016'da, aşağıdaki kayıt defteri anahtarını bulmak için Kayıt Defteri Düzenleyicisi'ni kullanın:

      HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Düğüm\Microsoft\Office\16.0\Access Bağlantı Motoru\Motor\Ace

  4. Kayıt Defteri Düzenleyicisağ bölmesinde, çift Tıklayın MaxLocksPerFile.

  5. DWORD Değerini Edit iletişim kutusunda Ondalık.'ıtıklatın.

  6. Değer veri kutusunun değerini gerektiği gibi değiştirin ve ardından Tamam'ıtıklatın.

Bu yöntemin, Microsoft Jet veritabanı altyapısı sürüm 4.0 kullanan tüm uygulamaların kayıt defteri ayarını değiştirdiğini unutmayın.

Yöntem 2: MaxLocksPerFile'i geçici olarak değiştirmek için SetOption yöntemini kullanın

Not

Bu makaledeki örnek kod Microsoft Veri Erişim Nesneleri kullanır. Bu kodun düzgün çalışması için Microsoft DAO 3.6 Nesne Kitaplığı'na başvurmanız gerekir. Bunu yapmak için Visual Basic Düzenleyicisi'ndeki Araçlar menüsünde Başvurular'ı tıklatın ve Microsoft DAO 3.6 Nesne Kitaplığı onay kutusunun seçildiğinden emin olun.

SetOption yöntemi, dosya başına varsayılan kilit sayısını geçici olarak geçersiz kılar. MaxLocksPerFile kayıt defteri anahtarını ayarladığınızda dosya başına varsayılan kilit sayısını ayarlarsınız. SetOption yöntemini kullanarak yeni değeri ayarlarsınız. DBEngine nesnesini kapatana kadar yeni değer geçerlidir. Yöntem 2'yi kullanmak için aşağıdaki adımları izleyin:

  1. Microsoft Access'i açın.
  2. Bir veritabanı açın ve Visual Basic düzenleyicisini başlatmak için Alt+F11 tuşuna basın.
  3. Microsoft Visual Basic - < Database Name>-[ < Modül Adı> (Kod)] penceresinde, Görünüm menüsünde Hemen Pencere'yi tıklatın.
  4. HemenPencere'de, aşağıdaki kodu girin.

Dao. DBEngine.SetOption dbmaxlocksperfile,15000 5. Kod satırını çalıştırmak için ENTER tuşuna basın.

Not Bu geçici olarak MaxLocksPerFile değerini 15.000 olarak ayarlar.

Büyük işlemleri işlemek için, gereksiniminizi karşılayacak MaxLocksPerFile değerini ayarlayın ve ardından oturumdaki hareketleri çalıştırın.

SetOption yöntemini kullanarak MaxLocksPerFile ayarında yaptığınız değişiklikler yalnızca geçerli oturum için kullanılabilir.

Daha fazla bilgi

MaxLocksPerFile ayarı, Microsoft Jet'in bir dosyaya karşı en fazla kilit sayısını belirler. Varsayılan MaxLocksPerFile değeri 9.500'dür. Ancak, bir Novell NetWare sunucusu üzerinde çalışıyorsanız, bağlantı başına maksimum sunucu kaydı kilitleri 10.000 olduğundan bu değeri değiştirmeyin.