o início do servidor mysql falhou

21

Estou executando o servidor Ubuntu. Quando tentei logar no mysql (que estava rodando), recebi o seguinte erro

ERROR 2002 (HY000): Can't connect to local MySQL server through socket         '/var/run/mysqld/mysqld.sock' (2)

Mas o arquivo mysqld.sock não existe dentro da pasta /var/run/mysqld . Ao executar o comando ps aux | grep mysql , percebi que o servidor mysql não estava rodando.

Eu então tentei reiniciar o servidor mysql usando

service mysql start
service mysql restart
/etc/init.d/mysql start

Mas o processo de inicialização falhou em todos os três casos. Os arquivos /var/log/mysql/mysql.log e /var/log/mysql/mysql.err estão vazios.

Mas /var/log/error.log mostra as seguintes informações:

140425 12:49:05 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use the full name instead.
140425 12:49:05 [Note] Plugin 'FEDERATED' is disabled.
140425 12:49:05 InnoDB: The InnoDB memory heap is disabled
140425 12:49:05 InnoDB: Mutexes and rw_locks use GCC atomic builtins
140425 12:49:05 InnoDB: Compressed tables use zlib 1.2.8
140425 12:49:05 InnoDB: Using Linux native AIO
140425 12:49:05 InnoDB: Initializing buffer pool, size = 3.0G
140425 12:49:05 InnoDB: Completed initialization of buffer pool
InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
InnoDB: than specified in the .cnf file 0 26214400 bytes!
140425 12:49:05 [ERROR] Plugin 'InnoDB' init function returned error.
140425 12:49:05 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
140425 12:49:05 [ERROR] /usr/sbin/mysqld: unknown variable 'record_buffer=64M'
140425 12:49:05 [ERROR] Aborting

140425 12:49:05 [Note] /usr/sbin/mysqld: Shutdown complete
    
por ananth 25.04.2014 / 09:31

9 respostas

23

Abra um terminal ( Ctrl + Alt + t ) e faça o seguinte:

sudo service mysql stop
sudo rm /var/lib/mysql/ib_logfile0
sudo rm /var/lib/mysql/ib_logfile1

e comente a linha record_buffer=64M em /etc/mysql/my.cnf [1 ]

e, em seguida, reinicie o msyql usando:

sudo service mysql restart

(Fonte)

    
por jobin 25.04.2014 / 10:36
8

Isso resolveu meu problema:

mkdir /var/run/mysqld

touch /var/run/mysqld/mysqld.sock

chown -R mysql /var/run/mysqld

/etc/init.d/mysql restart

    
por user520064 12.11.2015 / 19:09
7

Eu resolvi o problema da seguinte maneira:

chown -R mysql:mysql /var/lib/mysql
mysql_install_db --user=mysql -ldata=/var/lib/mysql/

Em outro contexto, enfrentei isso porque o daemon do mysql falhou ao iniciar. Então inicie o daemon com o comando - mysqld start e tente iniciar o serviço.

    
por Sudheesh.M.S 27.03.2015 / 17:16
2

Eu tive a mesma mensagem de erro e o mesmo vazio nos arquivos de log. No meu arquivo de configuração (my.cnf) eu especifiquei que queria usar as tabelas myisam, adicionando esta linha no [mysqld] -section:

default-table-type = myisam

Após a atualização do mysql, parece que isso faz com que o mysql não seja iniciado. Eu mudei isso para:

default-storage-engine = myisam

e agora tudo funciona bem.

    
por Lars Olav Tveito 07.07.2015 / 12:16
1

Aumentar a RAM disponível adicionando novo espaço de troca também pode ajudar. As etapas são aqui

Certifique-se de criar / swapfile do tamanho menor que o espaço disponível mostrado por

df -h

Por exemplo, para mim, a saída de df-h foi:

Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1      7.8G  1.2G  6.3G  16% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
udev            492M   12K  492M   1% /dev
tmpfs           100M  336K   99M   1% /run

Então criei usando 2 G

sudo fallocate -l 2G /swapfile

E depois é só iniciar o serviço

sudo /etc/init.d/mysql restart

Espero que isso ajude. Tudo de bom.

    
por Vivek 21.06.2016 / 13:24
1

Minha solução:

Verifique se em todos os /etc/rc1.d ... /etc/rc5.d o script mysql inicia com S (Ex S10mysql) e não K AS K10mysql.

Explicação: O prefixo K é carregado com stop, tipo de serviço kill; e o prefixo S começa com o parâmetro start.

execute in terminal:   
(command        script action  runlevel)
---------------------------------------
sudo update-rc.d mysql enable  2
sudo update-rc.d mysql enable  3
sudo update-rc.d mysql enable  4
sudo update-rc.d mysql enable  5
    
por Sergio Abreu 02.12.2016 / 08:58
0

Remova o arquivo /var/lib/mysql/.run-mysql_upgrade e ele deve ser iniciado

;)

"Com grande poder vem uma grande responsabilidade"

    
por Adrian Pule 09.10.2014 / 01:26
0

Eu tive esse problema quando defini max_allowed_packet = 0.5M em /etc/mysql/my.cnf .

Eu resolvi isso alterando max_allowed_packet para 1M .

    
por ratskin 13.09.2017 / 19:56
0

O seguinte comando resolve meu problema e o mysql pode iniciar depois dele (pode ser útil em alguns casos)

chown -R mysql: /var/lib/mysql
    
por zhilevan 10.12.2017 / 09:44