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 dinamik olarak kullanılabilir sistem kaynakları tabanlı bellek gereksinimleri değiştirebilirsiniz. Varsayılan ayarı sunucu belleği en az varsayılan ayarı ve 0 olur.en fazla sunucu belleği 2147483647 ' dir.Bellek için belirtebileceğiniz bir minimum tutar en fazla sunucu belleği 16 megabayt (MB) ' dir.

Not

Ayar en fazla sunucu memor y en düşük değer için ciddi bir şekilde azaltırSQL Server Performans ve bile bunu başlatılmasını engelliyor. Başlatamazsanız SQL Server Bu seçeneği değiştirdikten sonra kullanarak başlatmak –f başlatma seçeneği ve sıfırlamaen fazla sunucu belleği önceki değerine.Daha fazla bilgi için bkz:SQL Server hizmet başlangıç seçeneklerini kullanma.

Ne zaman SQL Server olan belleği dinamik olarak kullanma, düzenli olarak boş fiziksel bellek miktarını belirlemek için sistem sorgular. Under 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.Belleği boşaltmak için koruma engeller. Windows 2000 disk belleği gelen. Boş, daha az bellek varsa SQL Server belleği serbest bırakır. 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 APı'SINI kullanır. QueryMemoryResourceNotification arabellek havuzu bellek ve ne zaman belleği serbest belirlemek için.

Izin verme SQL Server belleği dinamik olarak kullanılması önerilir; ancak, küme bellek el ile seçenekleri ve bellek miktarını sınırlamak, SQL Server erişebilirler. Bellek miktarını ayarlamak için önce SQL Server, uygun bellek ayarı, toplam fiziksel bellekten için gerek duyduğu belleği çıkararak belirler. Windows 2000 veya Windows Server 2003 ve diğer bir örneği SQL Server (ve bilgisayar wholly ayrılmış değil, diğer sistem kullanır SQL Server). Bu fark, en fazla bellek atayabileceğiniz kaynaklanmaktadır. SQL Server.

Bellek seçenekleri el ile ayarlama

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

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

  • Ikinci yöntemde, küme sunucu belleği en az and en fazla sunucu belleği bellek aralýðý yayılmasını.Yöneticiler, sistem veya veritabanı örnek yapılandırmak istediğiniz yerlerde bu yöntem kullanışlıdır. SQL Server diğer uygulamaların bellek gereksinimleriyle birlikte, aynı bilgisayarda çalıştırın.

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ünü, nedeniyle bu değerine ulaştı sonra SQL Server ayrılmış arabellek havuzundan bellek serbest edemiyor sürece değeri sunucu belleği en az düşürülür.

Not

SQL Server Belirtilen bellek miktarını tahsis etmek için sağlanır. sunucu belleği en az.Sunucu üzerindeki yükü belirtilen bellek ayrılırken hiçbir zaman gerektirmesi durumunda sunucu belleği en az, SQL Server daha az bellek ile çalışır.

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.

Azalan bakiyeli önce en fazla sunucu belleği değeri, incelemek için performans izleyicisi'ni kullanmaSQLServer:Buffer Yöneticisi performans sırada bir yük altında nesne ve geçerli değerlerini not alın.Çalınmış sayfaları and Rezerve edilen sayfalar sayacı.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.Bir yaklaşık değeri en düşük kabul edilebilir en fazla sunucu belleği ( ayarı (MB) iseÇalınmış sayfaları] +Rezerve edilen sayfalar)/ 100.Azaltmak için en fazla sunucu belleği yeniden başlatmanız gerekebilirSQL Server belleği serbest bırakmak için . Bellek seçeneklerini küme hakkında daha fazla bilgi için bkz: Nasıl Yapılır: Bellek (SQL Server Management Studio'yu) sabit bir tutar olarak küme.

Ağ uygulamaları için veri performansı en üst düzeye

Sistem bellek kullanımı için en iyi duruma getirmek için SQL Server, sistem tarafından dosya önbelleği için kullanılan bellek miktarını sınırlamalısınız. Dosya sistemi önbelleğindeki sınırlamak için , emin olun Dosya Paylaşımı için veri aktarımını en yüksek orana ayarla seçilir.En küçük dosya sistemi önbelleğindeki seçerek belirtin Kullanılan belleği en aza indirin. or Bakiye.

Işletim sisteminizde geçerli ayarını denetlemek için

  1. ' I tıklatın START tıklatın.control panel çift tıklatınAğ Bağlantıları sonra çift tıklatınYerel ağ bağlantısı.

  2. Üzerinde Genel sekmesinde, tıklatın.özellikleri, select Dosya ve yazıcı Microsoft Ağları için paylaşımı sonra'ı tıklatınözellikleri.

  3. If Ağ uygulamaları için veri çıkışını en üst düzeye seçilir, diğer bir seçenek belirleyin, tıklatın.Tamamve sonra Kapat iletişim kutuları geri kalanı.

Windows Server 2003 altında AWE bellek

Altında Windows Server 2003, SQL Server Adres Pencereleme Uzantıları (AWE) belleğini daha fazla yük işletim sistemi ile kendi bellek gereksinimlerini Dengeleme yardımcı olması için kullanabilirsiniz. Arasında Dengeleme SQL Server ve işletim sistemi kısıtlamaları tabi sunucu belleği en az and en fazla sunucu belleği seçenekleri.Sunucu donanımı sıcak Ekle bellek destekliyorsa, ek bir fiziksel bellek gerektiği gibi sunucuya yeniden başlatma gerekmeden eklenebilir.Hakkında daha fazla bilgi için awe etkinleştirilmiş Bkz: yapılandırma seçeneğiAWE 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 yapılandırılmış sanal bellek sınırından daha az fiziksel bellek olan sunucularda desteklenir. Windows 2000 için kullanılabilir fiziksel belleğin AWE belleğini etkinleştirme için sanal bellek aşan gerekli.

Ideal olarak, olabildiğince fazla bellek ayrılamadı. SQL Server sayfaları diske takas sistemin neden olmadan. Eşik sisteminize bağlı olarak değişir.Örneğin, 32 gigabayt (GB) sistemde özel olarak ayrılmış SQL Server30 31 GB için uygun en fazla bir eşik olabilir SQL Server; 64 GB olan bir sistemde, 60 62 GB uygun bir eşik değeri olabilir.

Not

Miktarı arttıkça SQL Server bellek, işletim sisteminin sanal bellek desteği dosyası (Pagefile.sys) ek bellek barındıracak şekilde genişletmek için yeterli disk alanı olduğundan emin olun. Dosyası sanal bellek desteği hakkında daha fazla bilgi için bkz: Windows 2000 veya Windows Server 2003 belgeleri.

Windows Sistem Monitörü'nden istatistikleri bellek değeri, gerekirse, ayarlamak amacıyla kullanın.Yalnızca veya bellek veya sistem nasıl değiştirdiğinizde, bu değeri değiştirin.

Sanal Bellek Yöneticisi

Gibi 32-bit işletim sistemleri Windows 2000 ve Windows Server 2003 4 gigabayttan (GB) sanal adres alanı erişim sağlar. Alt 2 GB sanal bellek, özel işlem başına ve uygulama kullanılabilir olur.Üst 2 GB, işletim sisteminin 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 anahtarı bellek yapılandırma, Windows belgelerine bakın.

Not

Içinde Windows Server 2003Sunucu kullanıyorsa PAE otomatik olarak etkinleştirilir hot-bellek aygıtları ekleyin. Bu durumda, / PAE anahtarının biçimde yapılandırılmış bir sistemde kullanmak zorunda değil kullanımı hot-ekleme bellek aygıtları.Tüm diğer durumlarda, bellek 4 GB'den yararlanmak için Boot.ini dosyasında/PAE anahtarının kullanmalısınız.

4 GB adres alanı için kullanılabilir fiziksel bellek Windows sanal bellek yöneticisi (VMM) göre eşlenir.Desteklenen fiziksel bellek miktarını giriş ile artırmıştır Windows Server 2003 İşletim Sistemleri. AWE tarafından erişilebilen fiziksel bellek, bu nedenle, kullandığınız işletim sistemine bağlıdır:

  • Windows Server 2003Fiziksel bellek standart sürüm desteklediği en fazla 4 GB.

  • Windows Server 2003Fiziksel bellek Enterprise Edition'ı destekleyen en çok 32 GB'YE kadar.

  • Windows Server 2003Fiziksel bellek Datacenter Edition'ı destekleyen en fazla 64 GB.

Gibi BIR Win32 uygulaması SQL Server yalnızca sanal ya da mantıksal adresleri, olmayan bir fiziksel adresleri algılar. Bir uygulama fiziksel bellek miktarını, at kullanır bir verilen saat (çalışma kümesi) kullanılabilir fiziksel belleğin ve VMM tarafından belirlenir.Uygulama belleği residency doğrudan denetim altına alamıyor.

Windows 2000 Advanced Server ve Windows 2000 Datacenter Server yaný sýra Windows Server 2003Enterprise Server ve Windows Server 200332-Bit sürümleri Datacenter Server kullanımı ıntel Fiziksel Adresleme Uzantıları (PAE) ile 4 GB sınırını aşmasına yeteneğine sahip. Kullanımı / pae anahtarı Windows boot.ini yapılandırma dosyasında, fiziksel belleğin 4 GB sınırının üzerindeki erişim sağlar.Bu yukarıdaki, 4 GB, AWE bellek erişimi için bir gereksinimdir.Bu bellek yapılandırması'nı kullanma hakkında daha fazla bilgi için Windows 2000 ve Windows Server 2003, Windows belgelerine bakın.

Sanal adres sistemleri gibi Windows 2000 veya Windows Server 2003 Böylece, fiziksel bellek sanal oranı 1: 1 aşabilir fiziksel belleğin over-commitment izin verir. Sonuç olarak, çeşitli fiziksel belleği yapılandırmalarında olan bilgisayarlarda daha büyük programları çalıştırabilirsiniz.Ancak, tüm işlemlerin birleştirilmiş ortalama çalışma kümeleri kötü performans 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 bu ayarları değiştirmek için saklı yordamıyla, siz onları değiştirene yalnızca Gelişmiş Seçenekler'i Göster 1 olarak küme.Bu ayarları olmadan, sunucu yeniden hemen etkili olur.

SQL Server çoklu örnekleri çalıştırma

Birden çok örneğini kullandığınızda çalıştırdığınız Database Engine, bellek yönetmek için kullanabileceğiniz üç yaklaşımdan vardır:

  • Kullanımı en fazla sunucu belleği bellek kullanımını denetlemek için.Her bir örnek için en fazla ayarları toplam indirimi birden çok toplam fiziksel belleğini makinenizdeki olduğunu tıklatmamaya kurun.Beklenen iş yükünü veya veritabanı boyutu için orantılı her örnek bellek vermek isteyebilirsiniz.Bu yaklaşım, yeni işlemler veya örneği başlattığınızda boş bellek hemen için kullanılabilir olacağını avantajı vardır.Olumsuzluk tüm örneklerinin, çalıştırmıyorsanız, çalışan örneklerini hiçbiri kalan boş bellek kullanan görebilecektir ' dir.

  • Kullanımı sunucu belleği en az bellek kullanımını denetlemek için.En düşük ayarlara her örnek için bu minimumlarý toplamını 1-2 GB makinenizdeki toplam fiziksel bellek az olacak şekilde kurun.Yine bu minimumlarý, örneğin beklenen yük orantılı olarak oluşturabilir.Bu yaklaşım, aynı anda çalışan tüm örneklerini, çalışmakta olan ayarlara geri kalan boş bellek kullanabilirsiniz avantajı vardır.Bu yaklaşım da, sağlamak çünkü bilgisayara başka bir yoğun bellek işlemi olduğunda yararlı olur. SQL Server en az makul bir bellek miktarını elde. Olumsuzluk (veya başka bir işlem) yeni örnek başlatıldığında, özellikle, değiştirilmiş sayfa geri bunu yapmak için veritabanlarının yazmalısınız, çalışan örneklerini belleği serbest bırakmak için biraz saat alabilir, ' dir.Disk belleği dosyanızın boyutunu önemli ölçüde artırır gerekebilir.

  • (Önerilmez) bir şey yapın.Bir iş yükünü ile sunulan ilk örnekleri, tüm bellek ayırmaya eğilimlidir.Idle instances or instances started later may end up running with only a minimal amount of memory available.SQL Server makes no attempt to balance memory usage across instances.Ancak, tüm örneklerini, arabellek havuzu boyutu ayarlamak için Windows bellek bildirim sinyallerini yanıtlar.Itibariyle Windows Server 2003 SP1, Windows bellek bellek bildirim API ile uygulamaları üzerinden Bakiye değil. Sistemde yalnızca genel görüş için bellek kullanılabilirliği sağlar.

Örnekler için en iyi şekilde kullanım desen ayarlarını bulmak için kolayca deneyebilirsiniz; bu nedenle yeniden başlatmadan bu ayarları değiştirebilirsiniz.

Örnekler

Aşağıdaki örnek ayarlar max server memory 4 GB seçenek:

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