Como os logs do MySQL se comparam aos logs do Postgresql?

3

O MySQL tem alguns logs:

  • Log de transações do InnoDB
  • Log binário
  • Log de consulta geral
  • Registro de erros
  • Log de consulta lenta

Eu sei sobre o WAL do Postgresql, que é equivalente ao log de transações do InnoDB (correto?).

O que acontece com os outros logs do MySQL, como log bin - há equivalência Postgresql deles?

    
por Continuation 14.08.2009 / 20:58

2 respostas

5

Como o MySQL implementa vários mecanismos de armazenamento, é necessário o log binário para backups / replicações incrementais e o log de transações InnoDB para conformidade com o ACID (somente com o mecanismo de armazenamento InnoDB) No postgres, o WAL pode ser usado para replicação e conformidade com ACID, portanto, o WAL combina o log binário com o log de transações do InnoDB.

Você pode fazer consultas de log de postgres ao log syslog / separete com log_statement e log_duration. Assim, você obtém o log de consultas e, com a diretiva log_min_duration_statement, é possível implementar o log de consultas lentas.

    
por 14.08.2009 / 22:46
2

Eu posso ter acertado alguns detalhes, mas acredito que:

Como você mencionou, o WAL é como o log de transações do innodb.

Todos os registros tendem a ser encontrados em /var/log/postgresql/postgresql.log)

Não existe um arquivo de log binário no PostgreSQL padrão porque ele não faz replicação, ao contrário do MySQL. Você pode usar coisas como o Slony para adicionar replicação.

O log de erros está em postgresql.log

O log de consultas lentas também entra nesse arquivo.

O log de consulta geral é o mesmo que definir o limite de consulta lenta para 0ms.

    
por 15.08.2009 / 00:06