Share via


Sunucu bellek seçenekleri

Use the two server memory options, min server memory and max server memory, to reconfigure the amount of memory (in megabytes) in the buffer pool used by an instance of Microsoft SQL Server.

Varsayılan olarak, SQL Server değiştirebilir, bellek gereksinimlerini dinamik olarak dayalı kullanılabilir sistem kaynakları.Varsayılan ayarı min sunucu belleği 0 varsayılan ayarı ise en fazla sunucu belleği 2147483647 olur.En az gerçekleştirebileceğini belirtmek için bellek miktarını en fazla sunucu belleği 16 megabayttır (mb).

Not

Ayarlama en fazla sunucu memory en düşük değere azaltabilir ciddi bir şekilde SQL Server Performans ve hatta, başlatılmasına engel.Başlatamazsanız, SQL Server Bu seçeneği değiştirdikten sonra kullanarak Başlat –f başlangıç seçeneği ve reset en fazla sunucu belleği önceki değerine.Daha fazla bilgi için bkz: SQL Server hizmeti başlangıç seçeneklerini kullanma.

Zaman SQL Server olan belleği dinamik olarak kullanmak, düzenli olarak ücretsiz fiziksel bellek. miktarını belirlemek için sistem sorgularUnder Microsoft Windows 2000, SQL Server grows or shrinks the buffer cache to keep free physical memory between 4 MB and 10 MB depending on server activity.Bu boş bellek koruma engeller Windows 2000 disk belleği.Ücretsiz, daha az bellek ise SQL Server için bellek serbest Windows 2000.If there is more memory free, SQL Server allocates memory to the buffer pool.SQL Server adds memory to the buffer pool only when its workload requires more memory; a server at rest does not increase the size of its buffer pool.

Altında Windows Server 2003, SQL Server bellek bildirim API kullanan QueryMemoryResourceNotification ne zaman Arabellek havuzu bellek ayırır ve bellek serbest belirlemek için.

İzin verme SQL Server Dinamik bellek kullanmak için önerilir; Ancak, küme bellek seçeneklerini el ile ve bellek miktarını sınırlamak, SQL Server için erişim.Önce küme için bellek miktarı SQL Server, uygun bellek belirlemek kümeting, toplam fiziksel bellekten için gereken bellek çıkararak Windows 2000 veya Windows Server 2003 ve diğer örneklerini SQL Server (ve diğer sistem işlemleri bilgisayar wholly ayrılmış ise, SQL Server).Bu fark atamak için bellek miktarı üst sınırını ise SQL Server.

Bellek seçeneklerini el ile ayarlama

Ayar için asıl iki yöntem vardır SQL Server el ile bellek seçenekleri:

  • İlk yöntem, küme min sunucu belleği ve en fazla sunucu belleği için aynı değeri.Bu değer sabit ayrılacak bellek miktarına karşılık gelir SQL Server değere ulaşıldıktan sonra arabellek havuzu.

  • İkinci yöntem, küme min sunucu belleği ve en fazla sunucu belleği bellek aralık span için.Sistem veya veritabanı yöneticileri yapılandırmak istediğiniz durumlarda bu yöntem yararlıdır bir örnek , SQL Server birlikte çalıştırmak aynı bilgisayar diğer uygulamaların bellek gereksinimleri

Use min server memory to guarantee a minimum amount of memory available to the buffer pool of an instance of SQL Server.SQL Server will not immediately allocate the amount of memory specified in min server memory on startup.Ancak, bellek kullanımı, istemci yükü nedeniyle bu değere ulaştıktan sonra SQL Server ayrılan belleği serbest olamaz arabellek havuzu sürece değeri min sunucu belleği azalır.

Not

SQL ServerBelirtilen bellek ayırmak için garantili min sunucu belleği.Sunucu üzerindeki yükü asla belirtilen bellek ayırma gerektiriyorsa min sunucu belleği, SQL Server çalıştıracak olan daha az bellek.

Use max server memory to prevent the SQL Server buffer pool from using more than the specified amount of memory, thus leaving remaining memory available to start other applications quickly.SQL Server does not immediately allocate the memory specified in max server memory on startup.Memory usage is increased as needed by SQL Server until reaching the value specified in max server memory.SQL Server cannot exceed this memory usage unless the value of max server memory is raised.

Azaltma önce en fazla sunucu belleği değer, Performans İzleyicisi'ni incelemek için kullanın sqlserver:buffer Manager performansı sırasında bir yük altında nesne ve geçerli değerlerini Not Stolen sayfalar ve ayrılmış sayfaları sayaçları.These counters report memory as the number of 8K pages.max server memory should be set above the sum of these two values to avoid out-of-memory errors.En düşük makul için yaklaşık bir değer en fazla sunucu belleği (mb cinsinden) ayarı (Stolen sayfalar] +ayrılmış sayfaları) / 100.Azaltmak için en fazla sunucu belleği yeniden başlatmanız gerekebilir bellek serbest bırakmak içinSQL Server . Bellek seçeneklerini küme hakkında daha fazla bilgi için bkz: Nasıl yapılır: Sabit bir tutar bellek (SQL Server Management Studio'yu) ayarla.

Ağ uygulamaları için veri çıkışını en üst düzeye çıkarın

Sistem bellek kullanımı için en iyi duruma getirmek için SQL Server, dosya önbelleğe alma için sistem tarafından kullanılan bellek miktarını sınırlamalısınız.Dosya sistemi önbelleği sınırlamak için emin olun veriyi en fazlaya dosya paylaşımı için seçilmez.En küçük dosya sistemi önbelleği seçerek belirtmek kullanılan belleği en aza indir veya denge.

İşletim sisteminizdeki geçerli ayarını denetlemek için

  1. Tıklatın Başlat, i Denetim Masası, çift Ağ bağlantılarıve sonra çift tıklatın Yerel ağ bağlantısı.

  2. Üzerinde Genel sekmesinde Özellikler, select Dosya ve yazıcı paylaşımı Microsoft ağlarıve i Özellikler.

  3. If Maximize data throughput for network applications is selected, choose any other option, click OK, and then close the rest of the dialog boxes.

Windows Server 2003 altında awe bellek

Altında Windows Server 2003, SQL Server kullanarak yük dengelemesi ait olanlar ile kendi bellek gereksinimlerini daha iyi yardımcı bellek Adres Pencereleme Uzantıları (awe)işletim sisteminin. Arasında dengeleme SQL Server ve işletim sistemi kısıtlamalara tabi min sunucu belleği ve en fazla sunucu belleği seçenekleri.Sunucu donanım bellek sıcak eklemek destekliyorsa, ek fiziksel bellek gerektiği gibi sunucuya yeniden başlatılmasını gerektirmeden eklenebilir.Hakkında daha fazla bilgi için awe etkinleştirilmiş yapılandırma seçeneği görmek AWE seçeneği etkinleştirildi.Daha fazla bilgi için bkz: Çalışırken bellek ekleme.

Not

Altında Windows Server 2003, dinamik awe belleğini'den daha az fiziksel bellek bulunan sunucularda destekleniryapılandırılmış sanal bellek sınırı. Windows 2000 sanal bellek kullanılabilir fiziksel bellek awe belleği etkinleştirmek için aşması gereken.

İdeal olarak, mümkün olduğunca fazla bellek tahsis SQL Server sayfaları disk. takas sistemine neden olmadanEşik sisteminize bağlı olarak değişir.Örneğin, özel olarak ayrılmış 32 gigabayt (gb) sistem üzerinde SQL Server, 30-31 gb için uygun bir en fazla eşik olabilir SQL Server; 60-62 gb, 64 gb sisteminde, uygun bir eşik değeri olabilir.

Not

Miktarı arttıkça SQL Server bellek, emin olun, işletim sisteminin sanal bellek destek dosyası (Pagefile.sys) karşılayacak genişletmek için yeterli disk alanı yokek bellek. Sanal bellek desteği dosyası hakkında daha fazla bilgi için bkz: Windows 2000 veya Windows Server 2003 belgeleri.

Windows Sistem Monitörü'nden istatistikleri gerekiyorsa bellek değeri ayarlamak yardımcı olması için kullanabilirsiniz.Yalnızca eklediğinizde veya bellek kaldırmak ya da sisteminizi nasıl değiştirdiğinizde, bu değeri değiştirin.

Sanal Bellek Yöneticisi

32-Bit işletim sistemleri gibi Windows 2000 ve Windows Server 2003 4 gigabayt (gb) sanal adres alanı. erişim sağlarAlt 2 gb sanal bellek, işlem başına özel ve uygulama kullanımı için kullanılabilir durumdadır.Üst 2 gb işletim sistemi kullanım için ayrılmıştır.All operating system editions, starting with Microsoft Windows XP Professional and later, including Windows Server 2003, include a boot.ini switch that can provide applications with access to 3 GB of virtual memory, limiting the operating system to 1 GB.Nasıl kullanılacağı hakkında daha fazla bilgi için /3 gb bellek yapılandırma anahtarı, Windows belgelerine bakın.

Not

De Windows Server 2003, pae yalnızca sunucu kullanıyorsa, otomatik olarak etkin hot-bellek aygıtları. add-Bu durum, / PAE anahtarını için yapılandırılmış bir sistemde kullanılacak olan anında eklenen bellek aygıtları.Diğer tüm durumlarda, 4 GB'den büyük bellek yararlanmak için Boot.ini dosyasında/PAE anahtarını kullanmalısınız.

4 gb adres alanı kullanılabilir fiziksel bellek için Windows sanal bellek Yöneticisi (vmm) eşleştirilir.Giriş bölümünü ile desteklenen fiziksel bellek miktarını artırmıştır Windows Server 2003 işletim sistemleri.awe tarafından erişilebilen fiziksel bellek, dolayısıyla hangi işletim sistemini kullanıyorsunuz bağlıdır:

  • Windows Server 2003Standard Edition, fiziksel bellek destekleyen en çok 4 gb.

  • Windows Server 2003Enterprise Edition, fiziksel bellek destekleyen en çok 32 gb.

  • Windows Server 2003Datacenter Edition, fiziksel bellek destekleyen 64 GB'a kadar.

Bir Win32 uygulaması gibi SQL Server perceives adresleri yalnızca sanal veya mantıksal değil fiziksel adresleri.At uygulama fiziksel bellek miktarını kullanır bir verilen saat (çalışma küme) kullanılabilir fiziksel belleğin vmm tarafından belirlenir.Uygulama belleği residency doğrudan kontrol edemezsiniz.

Windows 2000 Advanced Server ve Windows 2000 Datacenter Server yanı Windows Server 2003, kurumsal sunucu ve Windows Server 2003, Datacenter Server 32-bit sürümleri kullanımı Intel Fiziksel Adresleme Uzantıları (pae) ile 4 gb sınırını aşan yeteneğine sahiptir.Kullanımı /PAE geçiş Windows boot.ini dosyasında yapılandırma dosyası fiziksel bellek 4 gb sınırından üstünde erişim sağlar.Bu awe 4 GB bellek erişimi için bir zorunluluktur.Bu bellek yapılandırma için kullanma hakkında daha fazla bilgi için Windows 2000 ve Windows Server 2003için bkz: Windows belgelerine.

Sanal adres sistemleri gibi Windows 2000 veya Windows Server 2003 1:1. fiziksel bellek sanal oranını aşan böylece fiziksel belleğin işlemler izinSonuç olarak, fiziksel bellek yapılandırmaları çeşitli bilgisayarlarda daha büyük programları çalıştırabilirsiniz.Ancak, tüm işlemlerin ortalama birleşik çalışma kümeleri performansının düşük olmasına neden olabilir çok önemli ölçüde daha fazla sanal bellek kullanıyor.

The min server memory and max server memory options are advanced options.Kullanıyorsanız, sp_configure sistem saklı yordamı bu ayarları değiştirmek için bunları değiştirebilirsiniz sadece Gelişmiş Seçenekleri Göster 1 olarak küme.Bu ayarlar, sunucu yeniden başlatma olmadan hemen etkili olur.

sql Server'ın birden çok örneğini çalıştıran

Ne zaman çalıştırıyorsanız birden çok örneğini Veritabanı Altyapısı, bellek yönetmek için kullanabileceğiniz üç yaklaşım vardır:

  • Use en fazla sunucu belleği için bellek kullanımını denetleme.Toplam indirimi makineniz üzerindeki toplam fiziksel bellein çok daha fazla dikkatli maksimum ayarlarını her bir örnek oluşturur.Beklenen iş yükünü veya veritabanı boyutunu orantılı her örnek bellek vermek isteyebilirsiniz.Bu yaklaşımın örnekleri veya yeni işlemler başlatma sırasında boş bellek hemen onları kullanılabilir olmasını gerektirmemesidir.Tüm örneklerinin çalıştırmıyorsanız, hiçbiri çalışan örneklerini kalan boş bellek yararlanamayabilirsiniz olmaz eksisi ise.

  • Use min sunucu belleği için bellek kullanımını denetleme.Bu minimumlarý toplamı 1-2 gb makinenizde toplam fiziksel belleğini daha az olacak şekilde her örnek için minimum ayarlarını oluşturur.Yine, bu minimumlarý orantılı olarak beklenen yükü o örnek oluşturabilir.Bu yaklaşımın avantajı, aksi takdirde tüm örnekleri vardır aynı anda çalışan saat, kalan boş bellek çalıştıran olanları kullanabilirsiniz.Bu yaklaşım da, sağlamak beri bilgisayarda başka bir bellek yoğun işlem olduğunda yararlı olur. SQL Server az Al makul miktarda bellek.Olumsuzluk, yeni bir durumdur örnek (veya başka bir işlem) başlar, onu alabilir çalışması için biraz saat örneks özellikle yazmaları gerekliyse, bellek serbest bırakmak için bunu yapmak için geri kendi veritabanlarına sayfalar değiştirildi.Disk belleği dosyasının boyutunu önemli ölçüde artırmak gerekebilir.

  • (Önerilmez) yapmaz.Bir iş yükünü sunulan ilk örnekleri tüm bellek tahsis eğilimindedir.Boşta örnekleri veya daha sonra başlatılan örnekleri yalnızca az miktarda bellek ile yaşarsa sonunda.SQL Serverbellek kullanımı örneği arasında denge denemesi yapar.Hepsinin ancak bunların Arabellek havuzu boyutunu ayarlamak için Windows bellek bildirim sinyalleri yanıt.İtibariyle Windows Server 2003 SP1, Windows olmayan Bakiye bellek üzerinden uygulamaların bellek bildirerek API.Yalnızca sistem üzerinde bellek kullanılabilirliği için genel bir görüş sağlar.

Bu ayarlar, kolay kullanım desen için en iyi ayarları bulmak için denemeler yapabilirsiniz böylece örneklerini yeniden başlatmadan değiştirebilirsiniz.

Örnekler

Aşağıdaki örnek ayarlar max server memory -4 gb seçeneği:

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'max server memory', 4096;
GO
RECONFIGURE;
GO