İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Belleğe göre MySQL my.cnf ayarları - kolay hazır MySQL ayarları

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
62
Konum
Sakarya
MySQL makinanıza kurulduğunda performans ve bellek ayarları yapılmamış şekilde kurulur.

MySQL in performansı birkaç basit ayar ekleyerek belleğinizin boyu doğrultusunda arttırılabilir.

Bu hazır kolay ayarları gönül rahatlığı ile MySQL iniz için kullanabilirsiniz.

Aşağıdaki ayarları linux de my.cnf (/etc/my.cnf) dosyasında [mysqld] bölümü altına ekleyin, eğer eklediğiniz ayar zaten varsa değiştirin. Aynı ayarın tekrar etmemesine dikkat edin.

İşlemlere başlamadan önce my.cnf dosyanızın bir yedeğini almayı unutmayın!

Ayarlarınızı optimize etmek için zaman zaman mysql performans raporu almayı unutmayın.

Aşağıdaki ayarların devreye girebilmesi için ayarları tamamalyıp my.nf dosyanızı kaydetmenizin ardından service mysql restart yada service mysqld restart komutunu çalıştırınız.

256Mb-512M arasında belleğe sahip serverlar (VPS ler) için:
Kod:
skip-locking             # serverda sadece 1 MySQL varsa
skip-name-resolve
max_connections = 300      # cok yogun sitelerde bu deger arttirilabilir
thread_cache_size = 128
key_buffer = 32M
query_cache_type = 1
query_cache_size = 16M
query_cache_limit = 4M
table_cache = 2000           # cok fazla tablolu veritabanlarinda bu deger arttirilabilir
low_priority_updates = 1
### innodb varsa asagidaki ayarlari aciniz
#innodb_buffer_pool_size=16M
#innodb_additional_mem_pool_size=8M
#innodb_thread_concurrency=8
#innodb_flush_method=O_DIRECT
512Mb-2Gb arasında belleğe sahip serverlar için:
Kod:
skip-locking             # serverda sadece 1 MySQL varsa
skip-name-resolve
max_connections = 500      # cok yogun sitelerde bu deger arttirilabilir
thread_cache_size = 128
key_buffer = 64M  
query_cache_type = 1
query_cache_size = 32M
query_cache_limit = 4M
table_cache = 2000           # cok fazla tablolu veritabanlarinda bu deger arttirilabilir
low_priority_updates = 1
### innodb varsa asagidaki ayarlari aciniz
#innodb_buffer_pool_size=64M
#innodb_additional_mem_pool_size=32M
#innodb_thread_concurrency=8
#innodb_flush_method=O_DIRECT
2Gb-4Gb arasında belleğe sahip serverlar için:
Kod:
skip-locking             # serverda sadece 1 MySQL varsa
skip-name-resolve
max_connections = 500      # cok yogun sitelerde bu deger arttirilabilir
thread_cache_size = 128
key_buffer = 128M  
query_cache_type = 1
query_cache_size = 32M
query_cache_limit = 4M
table_cache = 2000           # cok fazla tablolu veritabanlarinda bu deger arttirilabilir
low_priority_updates = 1
### innodb varsa asagidaki ayarlari aciniz
#innodb_buffer_pool_size=256M
#innodb_additional_mem_pool_size=64M
#innodb_thread_concurrency=8
#innodb_flush_method=O_DIRECT
4Gb+ belleğe sahip serverlar için:
Kod:
skip-locking             # serverda sadece 1 MySQL varsa
skip-name-resolve
max_connections = 500      # cok yogun sitelerde bu deger arttirilabilir
thread_cache_size = 128
key_buffer = 256M  
query_cache_type = 1
query_cache_size = 64M
query_cache_limit = 4M
table_cache = 2000           # cok fazla tablolu veritabanlarinda bu deger arttirilabilir
low_priority_updates = 1
### innodb varsa asagidaki ayarlari aciniz
#innodb_buffer_pool_size=384M  #Innodb kullanimi cok ise 384M, 1024M e kadar arttirilabilir
#innodb_additional_mem_pool_size=96M
#innodb_thread_concurrency=8
#innodb_flush_method=O_DIRECT
 

Mack

0
İyinet Üyesi
Onaylı Üye
Katılım
17 Eylül 2005
Mesajlar
302
Reaction score
0
Konum
AntaLya
skip-locking # serverda sadece 1 MySQL varsa

Bunu anlayamadım...

Sunucuda tek site mysql kullanıyorsa bunumu ekliyeceğiz...?

Sunucumda enaz 8 site mysql kullanıyorda...
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
62
Konum
Sakarya
Bunu anlayamadım...

Sunucuda tek site mysql kullanıyorsa bunumu ekliyeceğiz...?

Sunucumda enaz 8 site mysql kullanıyorda...

Site sayisi onemli degil, makinada ayri ayri calisan mysql kurulum sayisi.
Ornegin 1 mysql port 3306 da calisirken digeri de 3307 numarali porttan calisiyorsa skip-locking kullanamazsiniz.
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
62
Konum
Sakarya

stewie

0
İyinet Üyesi
Katılım
11 Mart 2008
Mesajlar
31
Reaction score
0
PHP:
skip-locking             # serverda sadece 1 MySQL varsa
skip-name-resolve
max_connections = 500      # cok yogun sitelerde bu deger arttirilabilir
thread_cache_size = 128
key_buffer = 64M  
query_cache_type = 1
query_cache_size = 32M
query_cache_limit = 4M
table_cache = 2000           # cok fazla tablolu veritabanlarinda bu deger arttirilabilir
low_priority_updates = 1
### innodb varsa asagidaki ayarlari aciniz
#innodb_buffer_pool_size=64M
#innodb_additional_mem_pool_size=32M
#innodb_thread_concurrency=8
#innodb_flush_method=O_DIRECT

yukardeki kodu my.cnf ye uyguladım service mysql restart edince aşağıdaki hatayı veriyor iyinet yardımcı olabilirmisin
PHP:
[root@74 etc]# service mysql restart
error: Found option without preceding group in config file: /etc/my.cnf at line: 1
Fatal error in defaults handling. Program aborted
error: Found option without preceding group in config file: /etc/my.cnf at line: 1
Fatal error in defaults handling. Program aborted
Shutting down MySQL...                                     [  OK  ]
error: Found option without preceding group in config file: /etc/my.cnf at line: 1
Fatal error in defaults handling. Program aborted
Starting MySQL...................................          [FAILED]
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
62
Konum
Sakarya
@stewie, my.cnf dosyani da buraya postalarsan sorununa bakabiliriz.
 

MysteriousTR

0
İyinet Üyesi
Katılım
3 Şubat 2008
Mesajlar
24
Reaction score
0
Aşırı ram kulllanımı

Serverda ram Kullanımı tavan yapmıs durumda sunucuya reset atıyorum 2 tane 1 k lık site var sunucuda suspend atttım 1-2 saat içinde değerler yine değişmedi nasıl bir yol izlemem gerekiyor ram ın çogunu mysql yiyor hitli sitelerin scripti vbulletin altta my.cnf dosyamın verilerini yazıyorum yardımcı olursan sevinirim iyinet teşekkür ederim şimdiden.


PHP:
[mysqld]
skip-locking
skip-innodb
skip-name-resolve
max_connections = 300
thread_cache_size = 128
key_buffer = 185M
table_cache = 512  
query_cache_type = 1
query_cache_size = 32M
query_cache_limit = 4M
table_cache = 2000
low_priority_updates = 1
wait_timeout=3600
max_allowed_packet=64M

[mysql.server]
user=mysql
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/lib/mysql/mysql.pid
open_files_limit=8192

[mysqldump]
quick
max_allowed_packet=16M

[mysql]
no-auto-rehash
#safe-updates

[isamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[myisamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[mysqlhotcopy]
interactive-timeout

Vps Özellikleri

Intel Core2duo 2.4ghz
750 Mb Ram
 

zeusmaster

0
İyinet Üyesi
Katılım
21 Mart 2005
Mesajlar
245
Reaction score
1
Hocam 256 mb ve 380 mb lık vps ler için olanı yokmu my.cnf
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
62
Konum
Sakarya
Serverda ram Kullanımı tavan yapmıs durumda sunucuya reset atıyorum 2 tane 1 k lık site var sunucuda suspend atttım 1-2 saat içinde değerler yine değişmedi nasıl bir yol izlemem gerekiyor ram ın çogunu mysql yiyor hitli sitelerin scripti vbulletin altta my.cnf dosyamın verilerini yazıyorum yardımcı olursan sevinirim iyinet teşekkür ederim şimdiden.

Vps Özellikleri

Intel Core2duo 2.4ghz
750 Mb Ram

Ram tamamen kullanilip SWAP (hard disk) alani kullanilmaya baslarsa, yapilan tum optimizasyonlar bosa gider.
Serverda performans icin en onemli konulrdan birisi mumkun oldugunca SWAP kullanimini onlemektir. SWAP arasira olabilir, ama yetersiz bellek nedeni ile devamli SWAP kullaniliyorsa, o zaman server hem cok yorulur, hem cok isinir, hemde cok yavaslar.

Az bellek kullanacak sekilde degistirdim:

PHP:
[mysqld]
skip-locking
skip-innodb
skip-name-resolve
max_connections = 300
thread_cache_size = 128
key_buffer = 64M
query_cache_type = 1
query_cache_size = 16M
query_cache_limit = 4M
table_cache = 2000
low_priority_updates = 1
max_allowed_packet=64M

[mysql.server]
user=mysql
basedir=/var/lib

[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/lib/mysql/mysql.pid
open_files_limit=8192

[mysqldump]
quick
max_allowed_packet=16M

[mysql]
no-auto-rehash
#safe-updates

[isamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[myisamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[mysqlhotcopy]
interactive-timeout
 

MysteriousTR

0
İyinet Üyesi
Katılım
3 Şubat 2008
Mesajlar
24
Reaction score
0
Ramda biraz degerler değişti iyi yönde, makinayı rahatlakmak adına ne önerirsiniz şimdiden teşekkür ederim.
 

zeusmaster

0
İyinet Üyesi
Katılım
21 Mart 2005
Mesajlar
245
Reaction score
1
Çok teşekkürler İyinet sayende vps im baya hızlandı. Google sitemi doğrulamıyordu artık doğruluyor :) Süpersin
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
62
Konum
Sakarya
Ramda biraz degerler değişti iyi yönde, makinayı rahatlakmak adına ne önerirsiniz şimdiden teşekkür ederim.

ssh den makinaya root ile girin.
top komutunu calistirin (top yazip enter a basin)
Ardindan buyuk M (Shift+m) e basin

Boylece top en cok bellek kullanan prosesleri en ustte gosterecektir.

Bu prosesleri bulup gereksiz ise kapatin.
 

Mywedding

1
İyinet Üyesi
Katılım
26 Eylül 2006
Mesajlar
5,893
Reaction score
96
Konum
www.odatv.com
merhaba iyinet,sshta, en yüksek memoryi"5.9" ile tomcat kullanıyor ama cpu"0.0" , linuz fedora
----------

birde swap normalmi,
Swap: 2096472k total, 18576k used, 2077896k free, 764480k cached
 

MysteriousTR

0
İyinet Üyesi
Katılım
3 Şubat 2008
Mesajlar
24
Reaction score
0
ssh den makinaya root ile girin.
top komutunu calistirin (top yazip enter a basin)
Ardindan buyuk M (Shift+m) e basin

Boylece top en cok bellek kullanan prosesleri en ustte gosterecektir.

Bu prosesleri bulup gereksiz ise kapatin.


Merhaba;
Şöyle bir görüntü oluştu bu değerler normal mi acaba ?

8143memory.JPG
 

iyinet

Root
Admin
Hosting Firması
Katılım
2 Eylül 2002
Mesajlar
5,028
Reaction score
62
Konum
Sakarya
Bunu baska serverlarda da gormustum.
spamd size ne kadar gerekli bilmiyorum, mysql den sonra en yuksek bellek harcayan proses.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

<-->sekito <-->sekito
Üst