Hata Günlüğü Konumu?


15

MySQL herhangi bir günlük dosyası yazıyor mu? Evet ise, yolu nedir (ubuntu / Linux'ta)?

Yanıtlar:


11
  • Genel günlük - tüm sorgular - bkz. VARIABLE general_log
  • Yavaş günlük - sorgulardan daha yavaş long_query_time-slow_query_log_file
  • Binlog - çoğaltma ve yedekleme için - log_bin_basename
  • Geçiş günlüğü - çoğaltma için de
  • genel hatalar - mysqld.err
  • başlat / durdur - mysql.log(çok ilginç değil) -log_error
  • InnoDB yineleme günlüğü - iblog*

Değişkeni bakın basedirve datadirbirçok günlükleri için varsayılan konumu için

Bazı günlükler diğer DEĞİŞKENLER tarafından açılır / kapatılır. Bazıları ya bir dosyaya ya da bir tabloya yazılır.


3

MySQL günlükleri aşağıdaki gibi global değişkenler tarafından belirlenir:

  • log_error hata mesajı günlüğü için;
  • general_log_filegenel sorgu günlük dosyası için (tarafından etkinleştirildiyse general_log);
  • slow_query_log_fileyavaş sorgu günlük dosyası için (tarafından etkinleştirildiyse slow_query_log);

Ayarları ve günlüklerin konumlarını görmek için şu kabuk komutunu çalıştırın:

mysql -se "SHOW VARIABLES" | grep -e log_error -e general_log -e slow_query_log

Https://stackoverflow.com/a/37685324/470749 adresinden @kenorb'a teşekkür ederiz.


2

Evet, MySQL bir günlük dosyası yazar.

Onun yolu olan /var/log/mysql.log, tanımlanmışlog_error config değişkeninde .

Hatalar için bir günlük dosyası da vardır /var/log/mysql.err


2

Windows'daki hata günlüğü dışında, MySQL günlüklerinin hiçbiri etkinleştirilmez. Bu, veritabanı için sunucu kaynaklarını en üst düzeye çıkarmaktır. Bu nedenle, bunları gerektiği gibi etkinleştirmeniz önerilir.

Bu, herhangi bir zamanda hangi günlüklerin etkinleştirildiğini bilmeyi de zorlaştırabilir. Bu nedenle, tüm yapılandırma değişkenlerimin tek bir yerde olmasını isterim, böylece onları hızlı bir şekilde arayabilirim. Bunun için iyi birkaç GUI aracı vardır. Kişisel olarak MySQL ve Navicat Premium için Navicat kullanıyorum .

Her ikisinin de kapsamlı bir listede tüm sunucu değişkenlerini içeren bir sekme içeren bir İzleme aracı vardır.

Navicat Server Monitor aracındaki general_log ve general_log_file sunucu değişkenleri

Saygılarımla!


Ne yazık ki, bu değeri bir sonraki yeniden başlatmaya kadar ayarlayacaktır. OTOH, Genel Kayıt oldukça disk diskidir, bu nedenle ihtiyacınız olan bilgiyi aldıktan hemen sonra kapatmak genellikle iyidir. (Diğer günlükler büyük olasılıkla AÇIK bırakılabilir.)
Rick James

1

Tam yolu bulmak için Terminal'de aşağıdaki komutu çalıştırın:

 mysqladmin variables | grep log_error

1

Günlük dosyaları genellikle adresinde bulunur /var/log/. MySQL sunucusu günlük dosyaları genellikle mysql.nameOfLogFile ile tanımlanır.


1

Biraz geç burada,

Genel değişkenleri inceleyerek, geçerli günlük dosyası konumunu MYSQL içinde bulabilirsiniz.

Örneğin, general_log'unuzun açık veya kapalı ve sisteminizdeki general_log_file konumunun açık olup olmadığını gösterir.

SHOW GLOBAL VARIABLES LIKE '%general%';
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.