Ralei muito para chegar a este nível ma configuração do MySQL, logo
não poderia deixar de compartilhar essa informação com vocês. Se seu
MySQL está "arreando" o servidor, tente utilizar as variáveis e seus
respectivos valores que estão neste arquivo. Os comentários seguem
no próprio .cnf, mas vale ressaltar que o pulo do gato são as variáveis:
key_buffer, table_cache e max_connections.
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
[safe_mysqld]
err-log = /var/log/mysql/mysql.err
[mysqld]
server-id=10
log-bin=/var/log/mysql/mysql-bin.log
binlog-do-db=pop
binlog-ignore-db=mailstats,mysql,pop.bak,radius,radius.bak,test
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
log = /var/log/mysql.log
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
language = /usr/share/mysql/english
skip-locking
# key-buffer define quanto de memória será armazenado para
# gravar dados de consultas do MySQL. Quanto maior a quantidade
# de memória disponível, melhor será o desempenho do servidor
set-variable = key_buffer=312M
set-variable = max_allowed_packet=1M
# table_cache é muito importante, este número deve ser o dobro
# do número definido pela variável max_connections
set-variable = table_cache=20000
set-variable = sort_buffer=1M
set-variable = record_buffer=1M
set-variable = myisam_sort_buffer_size=64M
set-variable = thread_cache=8
set-variable = thread_concurrency=8
# max_connections vai definir quantos sub-processos e
# consequentemente quantas conexões seu MySQL suportará
# simultaneamente. Por incrível que pareça, quanto maior este
# número, menor será o load do seu server. Tente restringir este
# para um número baixo e você verá que loucura está fazendo
set-variable = max_connections=10000
set-variable = net_write_timeout=30
set-variable = connect_timeout=2
set-variable = wait_timeout=30
# Read the manual if you want to enable InnoDB!
skip-innodb
[mysqldump]
quick
set-variable = max_allowed_packet=1M
[mysql]
[isamchk]
set-variable = key_buffer=64M # era 16M
Comentários
[1] Comentário enviado por dol amroth em 05/06/2004 - 02:41h
A sua ajuda vai ser muito útil valeu cara continue mandando informações e compartilhndo sabedoria porque a informação deva ser
passada acima de tudo !!!!!!! I BORN TO BE FREE!!!!!!!
[3] Comentário enviado por ezdn em 19/09/2004 - 16:05h
aee fabio vlw pela ajuda e vê se continua a compartilhar conhecimentos com a galera do site tem muita gente que precisa de uma ajuda como a sua
e este tipo de ajuda sempre é bem vindo vlw.
[7] Comentário enviado por osvaldocpd em 12/04/2006 - 16:45h
Bom dia pessoal da lista, estou com um problemão e gostaria que voces me ajudasce, fiz um sistema de controle de estoque em Delphi usando zeus para acessar o mysql acesso no windows maquina local, agora instalei o mysql no Linux mas não consigo acessaro banco de dados, se eu for no linux no prompt consigo acessar o banco, mas não estou conseguindo acessar o banco da estação de trabalho. Estou usando o Zeus para a conexão mas nem imagina como configurar o Zeus e o Mysql para resolver esse problema.
Conto com a ajuda de todos
Um abraço
[9] Comentário enviado por osvaldocpd em 13/04/2006 - 12:12h
Bom dia cara, me dá uma força por favor, instalei o mysql no servidor Linux, gostaria de acessar o mesmo pela estação de trabalho XP, você comhece a configuração que tem que ser feito e se tem que instalar algum aplicativo no XP para acessar o banco ?
[11] Comentário enviado por removido em 14/07/2006 - 10:19h
Tem um negócio bem legal também que ajuda a otimizar o MySQL que é em relação ao número de conexões ativas que estão sendo utilizadas simultâneamente. Um site que tem muitos acessos e muito mysql rodando, pode ser extremamente otimizado com a troca do "mysql_connect" por "mysql_pconnect". Isto faz com que a cada nova conexão, o mysql primeiro verifique se já existe uma conexão com o mesmo login, senha e db ativa, e repassa para este novo apenas o ID. Isso economiza MUITO processamento. Reparem neste tipo de troca usando o comando "SHOW STATUS;" na variável "Max_used_connections" como o número de conexões simultâneas cai consideravelmente...
Me corrijam se eu estiver errado, mas acho que isso vale a pena
[12] Comentário enviado por bruno3d em 11/10/2007 - 21:33h
Opa, muito obrigado, so uma duvida posso substituir a configuração original por essa??
porque la ta tudo assim
"sort_buffer=1M"
e nessa configuração ta assim
set-variable = sort_buffer=1M
Muito obrigado e aguardo a resposta
[13] Comentário enviado por marcospaulobomba em 19/10/2007 - 13:12h
galera.. tenha o mysql funcionando normal no linux.. acesso ele normal..
mas quando vow acessar pelo windows ele naum conecta...
vcs podem me ajudar??? tem q estar configurar esse my.cnf para acesso pela rede??? pois local funciona normal.. ?:????
[22] Comentário enviado por fcandrade2001 em 15/01/2010 - 06:09h
muito bom o seu artigo, porem preciso de uma ajuda para que o desempenho do meu servidor melhore, eu tenho 1 servidor co 8 gb de ram, xeon quad core e 86 estacoes acessando a base de dados mysql, esse servidor é exclusivo para o banco de dados e nada mais, qual seria a melhor configuracao do my.cnf para ele e se nao for pedir muito, o comentario de o porque. O acesso a esse servidor se faz tando na rede local como por internet. Agradeco imensamente a sua ajuda
[24] Comentário enviado por camilaalvesk em 28/03/2011 - 10:41h
Olá Fabio, sou iniciante na informática e trabalho muito pouco tempo com o linux . o meu mysql estava funcionando normal, mais quando cheguei hoje ele estava com problema. Fui olhar o arquivo de log e estava com erro bem assim:
Connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
eu não sei o que poder ser!!! Será que você ou o pessoal do vol pode me ajudar????
[28] Comentário enviado por moisesmartins em 12/08/2015 - 09:42h
Bom dia Fabio, meu arquivo my.cnf esta bem parecido com o seu porém o meu problema é lentidão na hora de lotar 3500 usuários no banco de dados do MySQL. Para explicar melhor tenho um servidor HP em produção com centOS mais antigo e com a versão do MySQL 5.1.61e, phpMyAdmin - 2.11.11, deu problema em um dos discos do RAID ele esta funcionando, fiz uma outra máquina do zero com o dobro do hardware (memória, processador etc) com o mais atual centOS e MySQL: 5.1.73 e phpMyAdmin - 2.11.11.3, para migrar todos os bancos, mais na fase de teste ao processar a mesma quantidade de lotação de usuários ele leva mais que o dobro do tempo o servidor de produção, no ato da lotação fiz o monitoramento com o htop e mais uma ferramenta New Relic a única coisa a normal foi o o/i do disco que chegou a 98,5 % na hora da lotação. Alguém tem uma ideia de como posso otimizar para que o desempenho do MySQL melhore.