O que é o formato de ficheiro CNF?
.cnf é um arquivo de configuração associado ao banco de dados relacional MySQL e ao seu fork compatível MariaDB. Arquivos .cnf armazenam opções de inicialização do banco de dados em texto simples, usando uma sintaxe estilo INI [section] key = value. O arquivo canônico é o my.cnf, normalmente localizado em /etc/my.cnf ou /etc/mysql/my.cnf em sistemas Linux e macOS. No Windows, o arquivo equivalente costuma ser nomeado como my.ini.
Arquivos .cnf definem parâmetros do banco de dados, como tamanho do buffer, configurações de cache, codificação de caracteres e opções de rede. Uma das configurações mais importantes é o parâmetro wait_timeout, que determina quanto tempo o servidor espera antes de fechar uma conexão inativa - isso é especialmente importante para bancos de dados grandes e aplicações que usam consultas complexas. Outras diretivas controlam o pool de buffers do InnoDB, o log binário e os limites máximos de conexão.
O MySQL lê os arquivos de opções de um conjunto documentado de caminhos em ordem, com as configurações nos arquivos posteriores substituindo as dos anteriores. As diretivas !include e !includedir permitem dividir a configuração em vários arquivos .cnf.
O MySQL é o sistema de gerenciamento de banco de dados relacional mais popular, amplamente utilizado em sites, aplicações corporativas e implementações em nuvem. É uma tecnologia gratuita e de código aberto mantida pela Oracle. O MariaDB, um fork da comunidade, utiliza a mesma sintaxe de arquivo de opções .cnf e é igualmente prevalente em servidores Linux.
Segurança e proteção
RISCO: MEDIUMO arquivo é seguro para leitura, mas aplicam-se duas precauções reais. (1) Risco de edição: uma opção inválida ou erro de digitação em [mysqld] é uma causa comum de «MySQL não inicia» - faça backup do arquivo, altere uma opção por vez e valide antes de reiniciar. (2) Exposição de credenciais: arquivos .cnf (especialmente ~/.my.cnf) geralmente armazenam nomes de usuário e senhas de banco de dados em texto claro, portanto, restrinja as permissões do arquivo (chmod 600) e nunca o envie para um repositório público. Trate arquivos de ajuste «my.cnf otimizados» baixados com cautela - verifique se as opções adequam-se à RAM e à versão do seu servidor.
Detalhes do formato
em resumo- Arquivo de configuração / certificado OpenVPN - Algumas configurações de OpenVPN e OpenSSL usam .cnf para configurações de config ou solicitação de certificado (ex: openssl.cnf).
- Configuração do emulador de arcade MAME - O MAME e alguns emuladores gravam arquivos de configurações .cnf por jogo.
- Configuração genérica de aplicativos - Vários programas reutilizam .cnf como um arquivo de configurações de texto simples não relacionado ao MySQL.
Programas que abrem arquivos CNF
Detalhes técnicos
especificação profunda| Formato de arquivo | Arquivo de opções estilo INI em texto simples sem codificação binária |
| Estrutura de sintaxe | Cabeçalhos de seção como [mysqld] ou [client], cada um contendo linhas de opção key = value |
| Codificação de caracteres | ASCII / UTF-8 |
| Tamanho de arquivo típico | 1 KB - 30 KB |
| Nome de arquivo canônico | my.cnf no Linux e macOS; my.ini no Windows (mesma sintaxe, nome diferente) |
| Caminhos de busca padrão | /etc/my.cnf, /etc/mysql/my.cnf, ~/.my.cnf - lidos na ordem documentada; o arquivo posterior substitui o anterior |
| Grupos de seção | [mysqld], [client], [mysqldump], [mysqld_safe], [mysql] |
| Diretivas de inclusão | !include e !includedir permitem que administradores dividam a configuração em vários arquivos |
| Sintaxe de comentário | Linhas começando com # ou ; |
| Consideração de segurança | Pode conter senhas de banco de dados em texto simples - proteja com chmod 600 em sistemas Unix |
| Tipo MIME | text/plain |
| Assinatura de arquivo | Nenhuma - identificado por cabeçalhos de seção estilo INI como [mysqld], não por uma assinatura de byte binário |
| Produtos compatíveis | MySQL 5.x / 8.x e MariaDB 10.x / 11.x - ambos usam sintaxe de arquivo de opções idêntica |
| Principais opções configuradas | innodb_buffer_pool_size, wait_timeout, max_connections, character-set-server, bind-address |
| Compressão | Nenhuma - sempre armazenado como texto simples não compactado |
| Desenvolvedor | Oracle Corporation (MySQL) e a MariaDB Foundation |
| Lançado | MySQL option files, mid-1990s (my.cnf on Unix; my.ini on Windows) |
| Versão mais recente | Ongoing - same INI option-file syntax across MySQL 8.x and MariaDB 11.x |
| Padrão aberto | Sim · livre de royalties |
| Especificação | dev.mysql.com |
Conversões de CNF
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos CNF.