Tüm Ürünler
Search
Belge Merkezi

ApsaraDB RDS:Tune instance parameters

Son Güncelleme:Oct 02, 2026

Hatalı yapılandırılmış parametreler, ApsaraDB RDS for MySQL örneğinizde performansı düşürebilir veya uygulama hatalarına neden olabilir. Bu konuda, anahtar parametreler için önerilen değerler ve ayarlama rehberliği sunulmaktadır.

Parametre tanılama

ApsaraDB RDS for MySQL, parametre tanılama özelliğini destekler. Bu özellik, uzmanlar tarafından tanımlanan kurallar ve formüller ışığında örneğinizin mevcut ayarlarını analiz eder ve ayarlama önerileri sunar. Örneğinizi optimize etmek için bu konudaki rehberlikle birlikte parametre tanılama özelliğini kullanın.

Parametre şablonları, yaygın senaryolar için önceden ayarlanmış değerlerle bir başlangıç noktası sağlar. Ancak uygulamada, anahtar parametrelerin iş yükünüze uygun olacak şekilde ayarlanması gerekir; çünkü varsayılan değerler her kullanım durumu için optimize edilmemiştir.

Not

Varsayılan parametre değerlerini ApsaraDB RDS konsolunda görüntüleyin.

Yeniden başlatma davranışı

Kapsamı Global,Session olan bazı parametreler — MySQL 8.0 ve MySQL 5.7 belgelerinde belirtildiği gibi — yalnızca yeniden bağlantı veya yeniden başlatma sonrası etkinleşir. Örneği yeniden başlatmak kısa süreli bir bağlantı kesintisine neden olur. Yeniden başlatma işlemlerini yoğun olmayan saatlerde planlayın.

Parametre referansı

Bağlantı yönetimi

back_log

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6, 5.5
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Örnek çok sayıda kısa ömürlü bağlantıyı işlediğinde bağlantı kuyruğunun uzunluğunu kontrol eder. Kuyruk dolduğunda örnek yeni bağlantı isteklerini reddeder.

Belirti: Çok küçük bir değer aşağıdaki uygulama hatasına neden olur:

SQLSTATE[HY000] [2002] Connection timed out

Önerilen değer: 3000

net_write_timeout

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6, 5.5
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Örneğin bir istemciye blok göndermeden önce ne kadar süre bekleyeceğini ayarlar.

Belirti: Çok küçük bir değer aşağıdaki istemci hatasına neden olur:

"the last packet successfully received from the server was milliseconds ago"
"the last packet sent successfully to the server was milliseconds ago"

Önerilen değer: 60 (saniye, varsayılan değer). Ağ kararsızsa veya istemci her bloğu işlemek için uzun zaman harcıyorsa, beklenmeyen bağlantı kesintilerini önlemek için bu değeri artırın.

innodb_lock_wait_timeout

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Bir InnoDB işleminin iptal edilmeden önce satır kilidi için maksimum ne kadar süre (saniye cinsinden) bekleyeceğini ayarlar.

Önerilen değer: 50

Eşzamanlılık ve iş parçacığı yönetimi

innodb_thread_concurrency

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

InnoDB içindeki eşzamanlı iş parçacıklarının maksimum sayısını ayarlar. 0 değeri limiti kaldırır.

Önerilen değer: Yüksek eşzamanlılık performans sorunlarını gidermediğiniz sürece 0 (sınırsız).

loose_rds_threads_running_high_watermark

Özellik Değer
Desteklenen sürümler MySQL 5.6, 5.5
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Toplam eşzamanlı sorgu sayısını sınırlar. Örneğin, bunu 100 olarak ayarlamak en fazla 100 eşzamanlı MySQL sorgusuna izin verir; ek sorgular reddedilir.

Bu parametreyi, örneği ani trafik artışlarına ve yoğun saatlerdeki aşırı yüke karşı korumak için kullanın.

thread_pool_enabled

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

İş parçacığı havuzu özelliğini etkinleştirir veya devre dışı bırakır.

Önerilen değer: ON

thread_pool_size

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

İş parçacığı havuzundaki iş parçacığı gruplarının sayısını ayarlar.

Önerilen değer: {LEAST(DBInstanceClassCPU × 2, 64)}

thread_pool_oversubscribe

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Her iş parçacığı grubu başına etkin iş parçacıklarının maksimum sayısını ayarlar.

Önerilen değer: 32

thread_stack

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Her kullanıcı iş parçacığı için yığın derinliğini ayarlar. Çok küçük bir değer, derin özyinelemeli SQL sorgularının başarısız olmasına neden olur.

Önerilen değer: 1048576

Arabellek havuzu ve bellek

innodb_buffer_pool_size

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? MySQL 8.0 ve 5.7: Hayır / MySQL 5.6: Evet
Geçici bağlantı kesintisi MySQL 8.0 ve 5.7: Hayır / MySQL 5.6: Evet — Yoğun olmayan saatlerde değiştirin

InnoDB arabellek havuzunun boyutunu ayarlar; bu alan, tablo ve dizin verilerini önbelleğe almak için kullanılan birincil bellek alanıdır. Doğru boyutlandırılmış bir arabellek havuzu, çalışma kümenizin (sorgularınızın en sık eriştiği veriler ve dizinler) bellekte kalmasını sağlayarak disk G/Ç'sini önemli ölçüde azaltır.

Önerilen değer: {DBInstanceClassMemory × 3/4}

innodb_buffer_pool_instances

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Eşzamanlı okuma ve yazmaları desteklemek için arabellek havuzunu birden fazla bağımsız olarak yönetilen örneğe böler. Yalnızca innodb_buffer_pool_size 1 GB'yi aştığında uygulanır.

Önerilen değer: {LEAST(DBInstanceClassMemory/1073741824, 8)}

innodb_max_dirty_pages_pct_lwm

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Ön temizlemeyi tetikleyen kirli sayfa yüzdesi eşiğini ayarlar. Değer, innodb_max_dirty_pages_pct değerinden küçük olmalıdır. 0 olarak ayarlanması ön temizlemeyi devre dışı bırakır.

Önerilen değer: 10

innodb_lru_scan_depth

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Kirli sayfaları temizlerken sayfa temizleyici iş parçacıklarının her arabellek havuzu örneğinde En Az Kullanılan (LRU) listesini ne kadar derin tarayacağını ayarlar.

Önerilen değer: {LEAST(DBInstanceClassMemory/1048576/8, 8192)}

innodb_page_cleaners

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Arabellek havuzu örneklerinden kirli sayfaları temizlemek için kullanılan sayfa temizleyici iş parçacıklarının sayısını ayarlar. Bu değer arabellek havuzu örneklerinin sayısını aşarsa sistem otomatik olarak değeri innodb_buffer_pool_instances değerinde sınırlar. Varsayılan değer 4 şeklindedir.

Önerilen değer: 8

tmp_table_size

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6, 5.5
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

İş parçacığı başına dahili bellek içi geçici tablonun maksimum boyutunu ayarlar. Etkili sınır, tmp_table_size veya max_heap_table_size değerlerinden hangisi daha küçükse odur. Geçici bir tablo bu sınırı aştığında MySQL bunu diske dayalı bir tabloya dönüştürür (MySQL 8.0'da InnoDB; önceki sürümlerde MyISAM).

Belirti: Bir dizin tarafından karşılanamayan GROUP BY veya DISTINCT içeren karmaşık sorgular, geçici tablolar diske taşındığında daha yavaş çalışır.

Varsayılan değer: 2097152. Sorgularda çok sayıda GROUP BY veya DISTINCT yan tümcesi varsa ve örnekte yeterli bellek bulunuyorsa bu değeri artırın.

G/Ç ve temizleme performansı

innodb_io_capacity

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

InnoDB arka plan görevlerinin tüketebileceği saniye başına maksimum G/Ç işlemi sayısını ayarlar.

Önerilen değer: 20000

innodb_io_capacity_max

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Temizleme işlemi yapılandırılan oranın gerisinde kaldığında InnoDB'nin kullanabileceği maksimum IOPS değerini ayarlar.

Önerilen değer: 40000

innodb_flush_neighbors

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

InnoDB'nin kirli bir sayfayı temizlerken komşu kirli sayfaları da temizleyip temizlemeyeceğini kontrol eder. Geçerli değerler:

  • 0: Yalnızca hedef kirli sayfayı temizler.

  • 1: Hedef sayfayı ve aynı genişletme birimindeki komşularını temizler.

  • 2: Aynı genişletme birimindeki tüm kirli sayfaları temizler.

Önerilen değer: 0

innodb_change_buffering

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Rastgele G/Ç'yi sıralı G/Ç'ye dönüştürmek için ikincil dizinlerdeki yazma işlemlerini erteler. Bu durum HDD'lerde yardımcı olur ancak modern depolama donanımında sınırlı fayda sağlar.

Önerilen değer: none

Redo log

innodb_log_file_size

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Redo log grubundaki her bir log dosyasının boyutunu ayarlar. Toplam redo log boyutu innodb_log_file_size × innodb_log_files_in_group şeklindedir ve 512 GB'yi aşamaz. Varsayılan değer 48 MB'tir.

Daha büyük bir log dosyası kontrol noktası sıklığını ve disk G/Ç'sini azaltır ancak kurtarma süresini uzatır. Bu değeri, örneğin yoğun ve yoğun olmayan saatler arasındaki G/Ç farkını yumuşatarak bir saatten fazla yazma trafiğini işleyebilecek kadar büyük ayarlayın.

Önerilen değer: Örnek teknik özelliklerinize göre yapılandırın.

Dosya tanıtıcıları

open_files_limit

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Örneğin aynı anda açabileceği dosya tanıtıcısı sayısını ayarlar. innodb_open_files değerini de etkiler.

Önerilen değerler:

  • MySQL 5.6: 65535

  • MySQL 5.7 ve 8.0: 655350

32 veya daha fazla CPU çekirdeğine ve çok sayıda etkin oturuma veya tabloya sahip örnekler için bu değeri örnek dosyalarının gerçek sayısının biraz üzerine ayarlayın.

innodb_open_files

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

InnoDB'nin aynı anda açık tutabileceği maksimum dosya tanıtıcısı sayısını ayarlar.

Belirti: Çok küçük bir değer performansı düşüren aşağıdaki uyarıya neden olur:

[Warning] [MY-012152] [InnoDB] Open files * exceeds the limit *

Önerilen değer: 20000

table_open_cache

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Sunucunun tüm tablo önbelleği örneklerinde açık tuttuğu maksimum tablo sayısını ayarlar. Çok küçük bir değer yüksek eşzamanlılıkta sorgu performansını düşürür; çok büyük bir değer ise bellek tüketimini artırır. Bu değeri artırırken bellek kullanımını izleyin.

Önerilen değer: {LEAST(DBInstanceClassMemory/1073741824 × 1024, 16384)}

table_open_cache_instances

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Tablo önbelleğini, her biri table_open_cache / table_open_cache_instances boyutunda olan ayrı örneklere böler. Bu işlem, oturumlar arasında tablo önbelleği üzerindeki çekişmeyi azaltır.

Önerilen değer: 16

Otomatik artış ve kilitleme

innodb_autoinc_lock_mode

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6, 5.5
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

InnoDB'nin otomatik artışlı birincil anahtarlar için otomatik artış kilitlerini nasıl yönettiğini kontrol eder. Geçerli değerler:

  • 0 (geleneksel): AUTO-INC kilidini ifadenin tamamı boyunca tutar. INSERT eşzamanlılığını önemli ölçüde sınırlar.

  • 1 (ardışık, varsayılan): AUTO-INC kilidini kısa süreli tutar. Sabit satır eklemeleri için hemen serbest bırakır; değişken satır eklemeleri için ifadenin tamamı boyunca tutar.

  • 2 (birbirine karışmış): Satır sayısının sabit olup olmadığına bakmaksızın değer atandığı anda AUTO-INC kilidini serbest bırakır.

Önerilen değer: 2. Bu değer AUTO-INC kilitlenmelerini ortadan kaldırır ve INSERT … SELECT performansını iyileştirir.

Not

Bu değeri 2 olarak ayarlamak için binary log formatının ROW olması gerekir.

innodb_adaptive_hash_index

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

InnoDB'nin sorgu kalıplarına göre arabellek havuzu sayfalarını hızlıca bulmasına yardımcı olan uyarlamalı hash dizinini etkinleştirir veya devre dışı bırakır.

Belirti: Etkinleştirildiğinde (ON), özellikle DDL olmak üzere belirli ifadeler uyarlamalı hash dizini bakımını tetikleyerek diğer sorguları engelleyebilir veya performansı düşürebilir.

Önerilen değer: OFF. Arka plan bilgisi için bkz. ApsaraDB RDS for MySQL'de uyarlamalı hash dizinleri için en iyi uygulamalar.

Çoğaltma

rpl_semi_sync_master_timeout

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Bir işlem commit edilmeden önce birincil RDS örneğinin ikincil RDS örneğinden binary logların alındığına dair onay bekleyeceği süreyi ayarlar. Zaman aşımı aşılırsa çoğaltma yarı eşzamanlıdan eşzamansıza düşer. İkincil örnek yakaladığında çoğaltma otomatik olarak yarı eşzamanlı moda geri döner.

Önerilen değer: 1000 (milisaniye, 1 saniyeye eşittir). Yüksek veri güvenilirliği gerektiren iş yükleri için eşzamansız çoğaltmaya düşmeyi önlemek amacıyla bu değeri artırın. Büyük bir değerin uzun süren işlemler sırasında yazma isteklerinin durmasına neden olabileceğini ve bunun da yüksek kullanılabilirlik (HA) bileşeninin örnek arızası algılayıp örnek değiştirmeyi başlatmasına yol açabileceğini unutmayın.

slave_parallel_workers

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

İkincil RDS örneğindeki paralel oynatma iş parçacıklarının sayısını ayarlar. Çok az iş parçacığı paralel oynatma aktarım hızını sınırlar ve çoğaltma gecikme süresini artırır.

Önerilen değer: {GREATEST(DBInstanceClassCPU, 8)}

binlog_transaction_dependency_tracking

Özellik Değer
Desteklenen sürümler MySQL 8.0 (küçük sürüm ≥ 20210930), MySQL 5.7 (küçük sürüm ≥ 20211231)
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

MySQL'in paralel çoğaltma için işlem bağımlılıklarını nasıl izlediğini belirtir. Bu değeri WRITESET olarak ayarlamak satır düzeyinde çakışma algılamayı etkinleştirerek ikincil RDS örneğinde daha hızlı paralel oynatmaya olanak tanır.

Önerilen değer: WRITESET. Bu parametreyi değiştirmeden önce transaction_write_set_extraction değerini ayarlayın. Ayrıntılar için bkz. WRITESET ile ilgili parametreleri değiştirme.

binlog_transaction_dependency_history_size

Özellik Değer
Desteklenen sürümler MySQL 8.0 (küçük sürüm ≥ 20210930), MySQL 5.7 (küçük sürüm ≥ 20211231)
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Bağımlılık izleme için bellekte tutulan hash işlem girişlerinin maksimum sayısını ayarlar. Sınıra ulaşıldığında tüm girişler temizlenir.

Belirti: Çok küçük bir değer ikincil RDS örneğindeki paralel oynatma eşzamanlılığını azaltarak çoğaltma gecikme süresini artırır.

Önerilen değer: 500000. Ayrıntılar için bkz. WRITESET ile ilgili parametreleri değiştirme.

transaction_write_set_extraction

Özellik Değer
Desteklenen sürümler MySQL 8.0 (küçük sürüm ≥ 20210930), MySQL 5.7 (küçük sürüm ≥ 20211231)
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

WRITESET tarafından kullanılan hash algoritmasını ayarlar.

Önerilen değer: XXHASH64. Ayrıntılar için bkz. WRITESET ile ilgili parametreleri değiştirme.

Sorgu önbelleği (MySQL 5.7 ve önceki sürümler)

query_cache_size

Özellik Değer
Desteklenen sürümler MySQL 5.7, 5.6, 5.5
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

MySQL sorgu önbelleğine ayrılan belleği kontrol eder. Etkinleştirildiğinde MySQL bir sorguyu yürütmeden önce önbelleği kontrol eder. Yazma işleminin nadir olduğu okuma ağırlıklı iş yüklerinde bu durum performansı iyileştirebilir. Yazma ağırlıklı iş yüklerinde sorgu önbelleğinin kilit mekanizması SELECT performansını düşüren sık çakışmalara neden olur.

Belirti: Birçok bağlantı şu durumlarda takılır:

checking query cache for query
waiting for query cache lock
storing result in query cache

Önerilen değer: Devre dışı bırakın (ApsaraDB RDS varsayılanı). Daha önce sorgu önbelleğini etkinleştirdiyseniz ve yukarıdaki belirtileri görüyorsanız devre dışı bırakın.

Sorgu optimize edici

eq_range_index_dive_limit

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Optimize edicinin eşitlik aralığı koşulları için dizin dalışlarından istatistik tabanlı tahmine ne zaman geçeceğini kontrol eder. Şu gibi bir sorgu için:

col_name IN (val1, ..., valN)
col_name = val1 OR ... OR col_name = valN

N bu limitten küçükse optimize edici dizin dalışlarını kullanarak verileri örnekleme yapar. N bu limite eşit veya büyükse optimize edici bunun yerine tablo istatistiklerini kullanır.

Daha fazla bilgi için bkz. eq_range_index_dive_limit hakkında MySQL belgeleri.

Önerilen değerler:

  • MySQL 5.6: 10

  • MySQL 5.7 ve 8.0: 100

Geçici dosyalar ve disk alanı

loose_rds_max_tmp_disk_space

Özellik Değer
Desteklenen sürümler MySQL 5.6, 5.5
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Örnekteki geçici dosyaların toplam boyutunu sınırlar.

Belirti: Bu sınırın aşılması aşağıdaki hataya neden olur:

The table '/home/mysql/dataxxx/tmp/#sql_2db3_1' is full

Önce geçici dosyalar oluşturan SQL ifadelerinin optimize edilip edilemeyeceğini kontrol edin. Örnekte yeterli disk alanı varsa ve sorgulardan kaçınılamıyorsa bu değeri artırın.

DDL hızlandırma

loose_innodb_rds_faster_ddl

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6 (küçük sürüm ≥ 20200630)
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

ApsaraDB RDS ekibi tarafından geliştirilen bir arabellek havuzu yönetimi mekanizması kullanarak şema değişiklikleri gibi belirli DDL işlemlerini hızlandırır ve DDL'nin çalışan iş yükleri üzerindeki etkisini azaltır.

Önerilen değer: Etkin.

Tam metin dizinleri

innodb_ft_cache_size

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Tablo başına tam metin dizini verileri için ayrılan belleği (bayt cinsinden) ayarlar.

Önerilen değer: 8000000

innodb_ft_total_cache_size

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Örnekteki tüm tablolar genelinde tam metin dizini verileri için ayrılan toplam belleği (bayt cinsinden) ayarlar.

Önerilen değer: 640000000

innodb_ft_result_cache_limit

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Her tam metin dizini sorgusu için sonuç kümesinin bellek sınırını (bayt cinsinden) ayarlar.

Önerilen değer: 2000000000

InnoDB iç bileşenleri

innodb_purge_threads

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

InnoDB'nin undo kayıtlarını temizlemek için kullandığı arka plan iş parçacıklarının sayısını ayarlar. Daha fazla iş parçacığı temizleme aktarım hızını iyileştirerek undo dosyası birikimini önler ve bazı iş yüklerinde DML ve sorgu performansını artırır.

Önerilen değer: LEAST(DBInstanceClassMemory/1073741824, 8)

innodb_sync_array_size

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Mutex/kilit bekleme dizisinin boyutunu ayarlar. Daha büyük bir değer çok sayıda bekleyen iş parçacığı üreten iş yükleri için eşzamanlılığı iyileştirir. Bu parametre başlatma sırasında okunur ve çalışma zamanında değiştirilemez. Bekleyen iş parçacıklarının sayısı sık sık 768'i aşıyorsa bu değeri artırın.

Önerilen değer: 128

innodb_parallel_read_threads

Özellik Değer
Desteklenen sürümler MySQL 8.0 (küçük sürüm ≥ 20200831)
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Birincil anahtar taramaları için eşzamanlı iş parçacıklarının sayısını ayarlar. Bu parametrenin bilinen hataları vardır.

Önerilen değer: 0 (devre dışı)

İzleme ve günlüğe kaydetme

performance_schema

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi —

MySQL'in dahili yürütmesini enstrümante eden Performance Schema'yı etkinleştirir veya devre dışı bırakır. Etkinleştirmek bellek ek yükü ekler ve performansı etkileyebilir.

Önerilen değer: OFF

general_log

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Sunucu tarafından alınan her ifadeyi kaydeden genel sorgu günlüğünü etkinleştirir veya devre dışı bırakır.

Belirti: Bu günlüğün etkinleştirilmesi örnek depolamasını tüketebilir. Daha fazla bilgi için bkz. Genel sorgu günlüğü özelliği hakkında SSS.

Önerilen değer: OFF

Saat dilimi

default_time_zone

Özellik Değer
Desteklenen sürümler MySQL 8.0, 5.7, 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

Varsayılan sunucu saat dilimini ayarlar.

Belirti: Ayarlanmamış veya uyumsuz bir saat dilimi yanlış saat dönüşümlerine, tutarsız zaman damgalarına ve özellikle birden fazla bölgeye hizmet veren uygulamalarda sık saat dilimi ayarlamalarından kaynaklanan daha yüksek CPU kullanımına neden olur.

Önerilen değer: İş gereksinimlerinize göre ayarlayın. Ayrıntılar için bkz. ApsaraDB RDS for MySQL'de time_zone parametresi için en iyi uygulamalar.

MySQL 5.6 parametreleri

loose_tokudb_buffer_pool_ratio

Özellik Değer
Desteklenen sürümler MySQL 5.6
Yeniden başlatma gerekli mi? Evet
Geçici bağlantı kesintisi Evet — Yoğun olmayan saatlerde değiştirin

TokuDB tablolarının innodb_buffer_pool_size değerine göre kullanabileceği arabellek belleği yüzdesini ayarlar. Örneğin, innodb_buffer_pool_size 1000 MB ve bu parametre 50 olarak ayarlanırsa TokuDB tabloları en fazla 500 MB kullanabilir.

Örnekteki birincil iş yükü TokuDB tablolarıysa bu değeri artırın.

loose_max_statement_time

Özellik Değer
Desteklenen sürümler MySQL 5.6
Yeniden başlatma gerekli mi? Hayır
Geçici bağlantı kesintisi Hayır

Sorgular için milisaniye cinsinden maksimum çalıştırma süresini ayarlar. Bu sınırı aşan sorgular kesintiye uğrar. Varsayılan olarak sorgu süresi sınırsızdır.

Belirti: Sınırın aşılması aşağıdaki hataya neden olur:

ERROR 3006 (HY000): Query execution was interrupted, max_statement_time exceeded
Not
  • Bu parametreye yapılan değişiklikler yalnızca yeni bağlantılar için geçerlidir. Yeni değerin uygulanması için mevcut bağlantıların yeniden bağlanması gerekir.

  • MySQL 5.6'da maksimum SQL çalıştırma süresi hem loose_max_statement_time hem de loose_max_execution_time tarafından kontrol edilir. Değişikliğin etkili olması için her iki parametreyi de aynı anda değiştirin.

Örnekte sorgu zaman sınırlarını uygulamak gerektiğinde bu parametreyi ayarlayın.