Mysql Sunucusu Çöküyor
-
merhaba
centos 6.5 üstünde çalışan mysql sunucusu gün içerisinde bir kaç kere kendini kapatıyor. servisi restart edemiyorum veya durdurup başlatamıyorum. reboot çekmek zorunda kalıyorum. Neden bunu yapabilir nasıl öğrenebilirim ? en kötüsü servicelerde mysql durdugunda reboot çeken script yazmak zorunda kalıcam çünkü sürekli başında duramıyorum sunucunun.
cpu ve ramle alakalı bi durum değil. aktif kullanıcı yokkende çökebiliyor
-
Hocam dmesg yazıp kernel mesajlarına bak
onun haricinde mysql log var mysqlin kurulu olduğu klasörde, mysql workbench yüklü ise oda gösterir birde oraya bak ne yazıyor bi inceleyelim.
-
mysql logu olarak
var/log/mysqld.log bunu bulabildim
var/lib/mysql/ bunun altındada ib_logfile0 ve ib_logfile1 var ama içinde baktım alakalı bişi göremedim. db ye girdigim yazılar falan var. herhangi bir error logu yok.
bu mysql için : http://pastebin.com/zE5XNfLR
dmesg çıktısı : http://pastebin.com/f3huc5g6
mysql logunda şu satırlar takıldı gözüme sanırım mevzu memory ile alakalı :| arkada memory yi şişiren şeylere odaklanmam lazım :|
-
140125 6:30:48 InnoDB: Fatal error: cannot allocate memory for the buffer pool
-
140125 6:30:48 [ERROR] Plugin 'InnoDB' init function returned error.
-
140125 6:30:48 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
-
140125 6:30:48 [ERROR] Unknown/unsupported storage engine: InnoDB
-
140125 6:30:48 [ERROR] Aborting
-
-
140125 6:30:48 [Note] /usr/libexec/mysqld: Shutdown complete
-
-
Tampon bellek havuzu kullanımı ile ilgili gibi duruyor haci. Denemek için buffer'ı bir düşür.
"/etc/mysql/my.cnf"
"/etc/my.cnf"
locate my.cnf
Aç.
"innodb_buffer_pool_size"'ı bul.
128MB'dan daha küçük 10~MB gibi bir değere çek.
"innodb_buffer_pool_size = 10M"
Edit: Veritabanı motorunu tamamiyle değiştirmek istersen: MySQL'den fork MariaDB önerimdir.
ZINDIK tarafından 25/Oca/14 21:48 tarihinde düzenlenmiştir -
outmost bunu yazdı
Tampon bellek havuzu kullanımı ile ilgili gibi duruyor haci. Denemek için buffer'ı bir düşür.
"/etc/mysql/my.cnf"
"/etc/my.cnf"
locate my.cnf
Aç.
"innodb_buffer_pool_size"'ı bul.
128MB'dan daha küçük 10~MB gibi bir değere çek.
"innodb_buffer_pool_size = 10M"
Edit: Veritabanı motorunu tamamiyle değiştirmek istersen: MySQL'den fork MariaDB önerimdir.
benim my.cnf biraz eksik sanırım
mariadb yi seviyorum bende fakat kurulu düzen bi wordpress var. taşırken ne olur ne olmaz hiç bir fikrim yok araştırmam lazım :|
FCN tarafından 25/Oca/14 21:52 tarihinde düzenlenmiştir -
O değer yoksa confiğe ekle hacı.
Edit: MariaDB = MySQL hacı fork işte. MySQL'i Oracle'ın almasından sonra değişimlerden hoşnut olmayan, open source camiası tarafından desteklenip, geliştiriliyor.
http://db-engines.com/en/system/MariaDB%3BMongoDB%3BMySQL
Örnek config:
[client] port = 3306 socket = MySQL [mariadb] default-storage-engine = MyISAM old_alter_table = ON optimizer_switch = 'extended_keys=on' [mysqld] bind-address = 127.0.0.1 port = 3306 socket = MySQL basedir = C:/Users/Rigel/Desktop/server/bin/mysql tmpdir = C:/Users/Rigel/Desktop/server/temp datadir = C:/Users/Rigel/Desktop/server/bin/mysql/data key_buffer_size = 32M max_allowed_packet = 1M table_open_cache = 512 sort_buffer_size = 1M net_buffer_length = 16K read_buffer_size = 512K read_rnd_buffer_size = 1M myisam_sort_buffer_size = 16M thread_cache_size = 4 server-id = 1 innodb_data_home_dir = C:/Users/Rigel/Desktop/server/bin/mysql/data innodb_data_file_path = ibdata1:10M:autoextend innodb_log_group_home_dir = C:/Users/Rigel/Desktop/server/bin/mysql/data innodb_buffer_pool_size = 16M innodb_log_file_size = 5M innodb_log_buffer_size = 8M innodb_flush_log_at_trx_commit = 1 innodb_lock_wait_timeout = 50 innodb_file_per_table = 1 innodb_open_files = 512 innodb_autoextend_increment = 8 [mysqldump] quick max_allowed_packet = 16M [mysql] no-auto-rehash [myisamchk] key_buffer_size = 20M sort_buffer_size = 20M read_buffer = 2M write_buffer = 2M [mysqlhotcopy] interactive-timeout
ZINDIK tarafından 25/Oca/14 21:55 tarihinde düzenlenmiştir -
Hocam settingsleri yapmak için, mysql workbench kullanırsan daha konforlu olur.
ibdata lar InnoDB'nin logları,
Outmost hocamın söylediği gibi inno db bufferı 10 yada 16 mb civarına çek, fakat şu anda deneyemiyorum innodb bufferı değiştirdiğinde sistem çalışmayacak,
önce ibdata dosyalarını başka bir klasöre taşıyacaksın, ondan sonra 16 mb a çekip mysql restart yapacaksın.
Normalde, sadece dedike mysql sunucu ise toplam ramin 1/2 si kadar, başka işlerde yapıyorsa 1/4 duruma göre 1/8 i kadar yapabilirsin.
Ben 1tb ramli sunucuda 128gb buffer kullanıyorum :)
renegadealien tarafından 25/Oca/14 22:01 tarihinde düzenlenmiştir -
mysqli kaldırıp mariadb kurulumu yaptım dün geceden beri çökmedi hala takipteyim bakalım gün içinde ne olucak. Ram kullanımı baya bi arttı mariadb sonrası. my.cnf dosyamın son hali şu şekilde
-
Application Blocked Access to the application you were trying to use has been blocked in accordance with company policy. Please contact your system administrator if you believe this is in error.User: 176.240.212.155 Application: pastebin-base . Konu Dışı ama ne mobilden nede adsl fiberden girmek istediğim zaman böyle bir blocka denk geliyorum.
-
HoLyCat bunu yazdıApplication Blocked Access to the application you were trying to use has been blocked in accordance with company policy. Please contact your system administrator if you believe this is in error.User: 176.240.212.155 Application: pastebin-base . Konu Dışı ama ne mobilden nede adsl fiberden girmek istediğim zaman böyle bir blocka denk geliyorum.
pastebin Türkiyeden engelli. buyüzden öyle bir sayfa ile karşılaşıyorsun yüksek ihtimal. DNS adresini değiştirip dener misin?
