O que é o formato de ficheiro MYD?
Um arquivo .myd é o componente de dados de linha de uma tabela MySQL MyISAM. O MyISAM armazena cada tabela como três arquivos irmãos que compartilham o mesmo nome base: table.frm contém a definição do esquema, table.MYD contém este arquivo - os registros de linha reais - e table.MYI contém os índices e metadados do motor.
O arquivo .myd contém apenas dados binários brutos de linhas, sem definições de coluna próprias. Ele não pode ser lido isoladamente; o arquivo de definição .frm e um servidor MySQL ou MariaDB em execução são necessários para interpretar os registros. As linhas são armazenadas em um de três layouts internos: FIXED (todas as colunas com largura fixa), DYNAMIC (padrão quando colunas VARCHAR ou BLOB estão presentes) ou COMPRESSED (tabelas somente leitura compactadas offline com myisampack).
Por padrão, o tamanho do arquivo é limitado a 4 GB, mas isso pode ser aumentado para até 256 TB definindo as opções de tabela MAX_ROWS e AVG_ROW_LENGTH. Linhas excluídas não são recuperadas imediatamente - elas permanecem como lacunas em uma lista livre até que o comando OPTIMIZE TABLE seja executado. Um checksum em tempo real opcional (CHECKSUM=1) permite que o motor rastreie a integridade ao nível de linha; a utilidade myisamchk e as instruções SQL CHECK TABLE / REPAIR TABLE trabalham em conjunto com o arquivo .MYI acompanhante para diagnosticar e reparar corrupções.
O MyISAM foi o motor de armazenamento padrão do MySQL desde o MySQL 3.23 (por volta de 2001) até o MySQL 5.5 (2010), quando o InnoDB tornou-se o novo padrão. Bancos de dados legados e cargas de trabalho predominantemente de leitura ainda produzem arquivos .myd hoje, suportados tanto pelo MySQL quanto pelo MariaDB.
Segurança e proteção
RISCO: MEDIUMUm arquivo .MYD contém dados inertes - não possui código executável - mas carrega os mesmos riscos operacionais e de privacidade de qualquer arquivo de banco de dados. Operacionalmente: nunca copie, mova ou exclua arquivos .MYD enquanto o servidor MySQL estiver em execução, e nunca separe um .MYD de seus correspondentes .frm e .MYI ou misture arquivos entre versões de servidor incompatíveis - fazer isso corrompe ou «quebra» a tabela. Quanto à privacidade, o .MYD contém as linhas reais da tabela em texto simples no disco (o MyISAM não possui criptografia), portanto, um .MYD vazado é uma violação de dados que expõe o que quer que a tabela tenha armazenado - registros de usuários, e-mails, PII. Sempre trabalhe em cópias e trate-o como o banco de dados sensível que ele é.
Detalhes do formato
em resumoProgramas que abrem arquivos MYD
Detalhes técnicos
especificação profunda| Função do arquivo | Armazena dados brutos de linhas para uma tabela MyISAM; não contém esquema, índices ou metadados do motor |
| Arquivos acompanhantes | Sempre emparelhado com `table.frm` (esquema) e `table.MYI` (índices) no diretório de dados do MySQL; os três arquivos compartilham o mesmo nome base |
| Formato de linha | FIXED (colunas de largura fixa), DYNAMIC (comprimento variável; padrão quando colunas VARCHAR ou BLOB estão presentes) ou COMPRESSED (somente leitura, compactado com myisampack) |
| Ordem dos bytes | Little-endian |
| Codificação | Binário - heap de registros binários brutos, sem codificação de texto |
| Assinatura do arquivo | Sem bytes mágicos fixos ou assinatura ASCII imprimível; identificado pela extensão e pela presença dos arquivos irmãos .frm e .MYI |
| Limite padrão de tamanho de arquivo | 4 GB por arquivo de dados de tabela |
| Tamanho máximo de arquivo | Até 256 TB, configurado via opções de tabela MAX_ROWS e AVG_ROW_LENGTH na criação da tabela |
| Tratamento de linhas excluídas | Linhas excluídas deixam lacunas em uma lista livre interna; o espaço é recuperado executando OPTIMIZE TABLE |
| Compressão | Nenhuma por padrão; tabelas somente leitura podem ser compactadas offline com myisampack para produzir uma variante compactada e somente leitura |
| Criptografia | Sem criptografia nativa ao nível de tabela - uma limitação conhecida do MyISAM em comparação com o InnoDB |
| Checksum e integridade | Checksum em tempo real opcional ativado com a opção de tabela CHECKSUM=1; reparo de integridade via myisamchk, CHECK TABLE ou REPAIR TABLE |
| Tipo MIME | application/octet-stream |
| Suporte de plataforma | Multiplataforma: Linux, Windows, macOS, FreeBSD - em qualquer lugar onde o MySQL ou MariaDB seja executado |
| Suplantado por | Arquivos .ibd do InnoDB para cargas de trabalho transacionais; o InnoDB tornou-se o motor de armazenamento padrão do MySQL no MySQL 5.5 (2010) |
| Lançado | 2001 (MyISAM became the default MySQL engine in MySQL 3.23) |
| Versão mais recente | Still produced by any MySQL/MariaDB table using ENGINE=MyISAM (legacy default before InnoDB took over in MySQL 5.5, 2010) |
| Especificação | dev.mysql.com |
Conversões de MYD
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos MYD.