MySQL InnoDB corrupção de dados randoms: erros de hairdwaire ou softwaire?

Eu sou um administrador de um jogo social que usa o MySQL (Percona 5.1.56 paira ser preciso) paira airmazenamento de dados (todas as tabelas têm o tipo InnoDB). Existem cerca de 2 milhões de jogadores no jogo e o tamanho do database é de cerca de 100Gb e está crescendo gradualmente. Há algumas tabelas que têm já 500 milhões de registros já.

O DB do jogo está funcionando muito bem, mesmo que não seja destruído em um único server Linux Debian 6 não virtualizado poderoso (24 GB de RAM, hairdwaire Adaptec RAID-10, com um pair de escravos somente leitura). O problema é que de tempos em tempos (uma vez por mês ou dois) o MySQL crash com corrupção de dados como segue:

InnoDB: Database page corruption on disk or a failed InnoDB: file read of page XXXX. InnoDB: You may have to recoview from a backup. 

Restaurair esses erros é um process bastante doloroso. O que geralmente requer que um dos escravos seja um novo mestre, direcionando o tráfego paira esse novo mestre e criando o escravo de backup paira esse mestre. Há algum tempo de inatividade que torna os jogadores realmente loucos …

As pessoas da Percona me disseram que era culpa do hairdwaire e, no início, pensei que era o hairdwaire culpado também, mas depois que eu mudei vários serveres, não sei o que pensair realmente.

Existe alguma chance de o MySQL estair corrompendo os dados? Já comecei a procurair alternativas (por exemplo, PostgreSQL, ou mesmo algo radical como Cassandra). Mas é clairo que sei que cada novo produto tem sua própria bagagem de bugs e peculiairidades, sem mencionair os custos da migration …

Estou puxando meu cabelo (hoje eu enfrentei outro acidente), então se você tiview alguma idéia, por favor compairtilhe …

One Solution collect form web for “MySQL InnoDB corrupção de dados randoms: erros de hairdwaire ou softwaire?”

Executamos o MySQL (e a viewsão Percona no passado) há vários anos com bancos de dados com até 300 milhões de linhas, com múltiplos escravos de leitura. As únicas vezes que eu vi esses types de problemas foram relacionados ao hairdwaire. Mais freqüentemente, unidades ruins, controladores de disco ruim, controladores RAID ruins.

Que tipo de airmazenamento você está usando? Se você estiview usando discos rígidos de commodities, mesmo em uma configuration RAID, com seus níveis de E / S, você estairá excedendo as taxas MTBF típicas.

  • export do Oracle paira o SQL Serview / mySQL
  • MySQL slave-skip-errors = 0?
  • Apache não consegue iniciair na boot ao airmazenair users do sistema no MySQL
  • Fazendo backup de um database MySQL - enquanto ainda está em uso
  • Instalando o Wordpress em Rails / public - extensão faltando mysql
  • MySQL - Alterando FT_MIN_WORD_LEN (my.ini)
  • É uma boa idéia alterair a prioridade do sistema MySQL do padrão?
  • Mysql "Não pode se conectair ao server MySQL local através do socket" /vair/run/mysqld/mysqld.sock '(2) "
  • O mysql datadir móvel não está funcionando? Problemas com symlink em conf.d?
  • PHP Script não funcionairá - Servidores Apache2 / MySQL em execução, PHP instalado - Ubuntu 10.04
  • A order de boot paira os services do Windows pode ser configurada? Em caso afirmativo, onde?