Arquivo de configuração MySQL

Resumo : neste tutorial, você explorará o arquivo de configuração do MySQL, descobrirá sua localização e compreenderá sua estrutura.

Introdução ao arquivo de configuração do MySQL

Programas MySQL como mysqld , mysqladmin , mysqldump e assim por diante oferecem uma maneira conveniente de configurar e gerenciar opções comumente usadas através de arquivos de opções, também conhecidos como arquivos de configuração .

Os arquivos de configuração permitem evitar a inserção de opções de linha de comando sempre que você executa um programa.

Verificando se um programa MySQL lê os arquivos de opções

Para determinar se um programa MySQL lê o arquivo de configuração, siga estas etapas:

Primeiro, abra o Terminal.

Segundo, execute o seguinte comando:

program --verbose --help

Por exemplo, você pode usar o seguinte comando para verificar qual arquivo de configuração o mysqldprograma usa:

mysqld --verbose --help

Se mysqldler arquivos de configuração, a mensagem de ajuda indicará quais arquivos procura e quais grupos de opções reconhece.

Como o comando retorna uma saída muito longa, no Linux e no macOS, você pode usar o lesscomando para mostrar a primeira página:

mysqld --verbose --help | less

No Windows, você pode usar o comando mais:

mysqld --verbose --help | more

Observe que para escapar da saída, você pressiona a letra q.

Aqui está a saída extraída que é relevante para o arquivo de configuração e grupos de seções:


Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf
The following groups are read: mysql clientLinguagem de código:  PHP  ( php )

Ordem de processamento do arquivo de configuração do MySQL

A saída mostra que o mysqldprograma lê o arquivo de configuração na seguinte ordem:

/etc/my.cnf
/etc/mysql/my.cnf
~/.my.cnf

Se existirem vários arquivos, ele mysqldlerá todos eles na ordem. A ordem de leitura dos arquivos de opções é importante porque as opções especificadas posteriormente podem substituir as opções especificadas anteriormente.

Além disso, a saída mencionou que o mysqld lerá duas seções: mysqle client. Em outras palavras, ele lerá os parâmetros nas seções [mysq]e [client].

No Windows

Os programas MySQL leem as opções de inicialização dos seguintes arquivos na ordem especificada:

  • %WINDIR%\my.ini, %WINDIR%\my.cnf: Opções globais
  • C:\my.ini, C:\my.cnf: Opções globais
  • BASEDIR\my.ini, BASEDIR\my.cnf: Opções globais
  • defaults-extra-file: Arquivo especificado com --defaults-extra-file, se houver
  • %APPDATA%\MySQL\.mylogin.cnf: Opções de caminho de login (somente clientes)
  • DATADIR\mysqld-auto.cnf: Variáveis ​​do sistema persistidas com SET PERSISTou SET PERSIST_ONLY(somente servidor)

Em sistemas Unix e semelhantes a Unix

Os programas MySQL leem as opções de inicialização dos seguintes arquivos na ordem especificada:

  • /etc/my.cnf: Opções globais
  • /etc/mysql/my.cnf: Opções globais
  • SYSCONFDIR/my.cnf: Opções globais
  • $MYSQL_HOME/my.cnf: Opções específicas do servidor (somente servidor)
  • defaults-extra-file: Arquivo especificado com --defaults-extra-file, se houver
  • ~/.my.cnf: Opções específicas do usuário
  • ~/.mylogin.cnf: Opções de caminho de login específicas do usuário (somente clientes)
  • DATADIR/mysqld-auto.cnf: Variáveis ​​do sistema persistidas com SET PERSISTou SET PERSIST_ONLY(somente servidor)

Sintaxe do arquivo de configuração MySQL

O arquivo de configuração consiste em uma ou mais seções . Cada seção começa com um colchete ( []) e seguida por um ou mais parâmetros.

Por exemplo:

[mysqld]
datadir=/var/lib/mysql
port=3306Linguagem de código:  JavaScript  ( javascript )

Neste exemplo:

  • [mysqld]é a seção do mysqldprograma.
  • datadirespecifica o diretório de dados onde o MySQL armazena seus dados.
  • portdefine a porta na qual o MySQL escuta conexões.

A sintaxe para especificar parâmetros na configuração é semelhante à sintaxe da linha de comando. No entanto, você omite os dois travessões iniciais ( --option_name) do nome da opção e especifica apenas uma opção por linha.

Por exemplo, --port=3306na linha de comando deve ser especificado como port=3306em uma linha separada no arquivo de configuração.

O arquivo de configuração pode conter !includediretivas para incluir outros arquivos de configuração ou !includedirdiretivas para pesquisar arquivos de configuração em diretórios específicos.

Por exemplo, o seguinte mostra um arquivo de configuração do MySQL no Ubuntu:


!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

Observe que os programas MySQL não garantem a ordem em que leem os arquivos de configuração.

Para adicionar uma nota ao arquivo de configuração, você inicia a nota com o #sinal seguido dos comentários. Ao ler o arquivo de configuração, os programas MySQL ignoram os comentários.

Por exemplo, o seguinte adiciona o comentário a cada parâmetro no arquivo de configuração para torná-lo mais claro:

[mysqld]
# The directory where MySQL stores its data files.
datadir=/var/lib/mysql

# The port on which the MySQL server listens for incoming connections.
port=3306Linguagem de código:  PHP  ( php )

Além disso, você pode usar # para remover uma opção como esta:

[mysqld]
# The directory where MySQL stores its data files.
# datadir=/var/lib/mysql

# The port on which the MySQL server listens for incoming connections.
port=3306Linguagem de código:  PHP  ( php )

Neste exemplo, removemos a datadiropção transformando a linha em um comentário.

Modificando o arquivo de configuração do MySQL

É uma boa prática fazer backup do arquivo de configuração para evitar perda de dados se você fizer alterações acidentais. Além disso, você deve manter uma documentação clara para quaisquer alterações feitas no arquivo de configuração.

Para editar o arquivo de configuração, você pode usar um editor de texto como nanoou vimcom o seguinte comando:

sudo nano /etc/mysql/my.cnf

ou

sudo vi /etc/mysql/my.cnf

No Windows, você pode usar um editor de texto simples como o Bloco de Notas.

Antes de aplicar as alterações à produção, você deve sempre verificar a sintaxe do arquivo de configuração e testá-lo no servidor de teste.

Para verificar a sintaxe do arquivo de configuração, use o seguinte comando:

mysqld --validate-config

Se você não vir nenhuma saída, significa que os arquivos de configuração são válidos.

Após salvar as alterações, reinicie o serviço MySQL para aplicá-las ao servidor.

Resumo

  • Os programas MySQL gerenciam suas opções por meio de linha de comando e arquivos de configuração.
  • Use arquivos de configuração do MySQL para evitar inserir opções de linha de comando sempre que executar um programa.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *