Регистрация запросов MySQL и пересылка в системный журнал / журнал событий - PullRequest
0 голосов
/ 25 октября 2018

Я смог включить журнал ошибок, общий журнал запросов, медленный журнал запросов и двоичный журнал и смог переслать журналы в системный журнал.У меня есть несколько вопросов о ведении журнала.

1) Журнал ошибок автоматически перенаправляется в журнал событий в Windows.Как переслать другие журналы в журнал событий?

2) Можно ли преобразовать многострочные журналы mysql в одну строку.

3) Можно ли добавить заголовок вфайлы журналов или некоторые теги в начале каждой строки журнала, чтобы было легко определить, какой это файл журнала.

4) В журналах медленных запросов некоторая информация комментируется.Будут ли переадресованы эти закомментированные строки с помощью rsyslog во всех системах Unix?

# User@Host: debian-sys-maint[debian-sys-maint] @ localhost []
# Query_time: 0.000297  Lock_time: 0.000220 Rows_sent: 0  Rows_examined: 0
SET timestamp=1539924163;
select count(*) into @discard from `information_schema`.`EVENTS`;

5) mysqlbinlog можно использовать для преобразования двоичного журнала в читаемый человеком формат.Есть ли способ, где я могу преобразовать двоичный файл и переслать его в системный журнал без написания какого-либо специального сценария?Есть ли способ в mysql или rsyslog?

1 Ответ

0 голосов
/ 25 октября 2018

1) Журнал ошибок автоматически перенаправляется в журнал событий в Windows.Как переслать другие журналы в журнал событий?

В MySQL нет возможности сделать это.

2) Возможно ли преобразовать мультилиниюmysql регистрирует в одну строку.

Вы не можете изменить формат журнала медленных запросов без изменения исходного кода MySQL.Это жестко запрограммировано :

  ...
  if (my_b_printf(&log_file,
                  "# Query_time: %s  Lock_time: %s"
                  " Rows_sent: %lu  Rows_examined: %lu\n",
                  query_time_buff, lock_time_buff,
                  (ulong)thd->get_sent_row_count(),
                  (ulong)thd->get_examined_row_count()) == (uint)-1)
    goto err;
  ...

И далее, для других строк для каждого зарегистрированного запроса.

Но вы можете получить информацию о производительности связанных запросов из PERFORMANCE_SCHEMA,и вы даже можете получить резюме по типу запроса.Есть свои преимущества и недостатки.Смотрите, например, этот блог: https://www.percona.com/blog/2014/02/11/performance_schema-vs-slow-query-log/

3) Можно ли добавить какой-либо заголовок к файлам журнала или какой-либо тег в начале каждой строки журнала, чтобы было легко определить, какой журналфайл это.

Не без изменения исходного кода.

4) В журналах медленных запросов некоторая информация комментируется.Будут ли переадресованы эти закомментированные строки во всех системах Unix при пересылке с помощью rsyslog?

Невозможно переслать журнал медленных запросов в syslog.

5) mysqlbinlogможет использоваться для преобразования двоичного журнала в читаемый человеком формат.Есть ли способ, где я могу преобразовать двоичный файл и переслать его в системный журнал без написания какого-либо специального сценария?Есть ли способ в mysql или rsyslog?

No.

Но вы можете использовать инструмент mysqlbinlog для загрузки удаленных двоичных журналов в качестве способа их резервного копирования.См https://dev.mysql.com/doc/refman/8.0/en/mysqlbinlog-backup.html

...