Definindo “max_allowed_packet” - linha de comando vs config?

3

Qual é a diferença entre definir o max_allowed_packet via linha de comando do MySQL usando:

set global max_allowed_packet=100000000;

E configurando-o editando a configuração MySQL my.ini (Win) ou my.cnf (Linux) e colocando o seguinte código em [mysqld] :

max_allowed_packet=100M 
    
por blunders 08.03.2011 / 19:15

2 respostas

7
set global max_allowed_packet = 1000000000

Isso define max_allowed_packet para 1 bilhão de bytes ou 1 GB.

max_allowed_packet=100M 

Isso define isso para 104857600 bytes ou 100 MiB.

Supondo que seu zero extra não seja intencional, a única diferença entre configurar via linha de comando e config é que o arquivo de configuração suporta abreviações usando JEDEC prefixos binários. Além disso, o set global será perdido na reinicialização do servidor.     
por 08.03.2011 / 19:33
1

Outra grande diferença é o fato de que a configuração de max_allowed_packet sobreviverá a uma reinicialização do mysql se você definir a variável em my.cnf (ou my.ini)

Além disso, se você definir essa variável globalmente, também faria sentido definir as variáveis da sessão, especialmente se a sessão precisar.

Ugh, acabei de ler a resposta do hobodave. Resposta mais clara Eu dou a ele um +1

    
por 09.03.2011 / 04:38