through solucionar solucion socket sock run mysqld mysqlcheck lib hy000 got existe error como mysql phpmyadmin lamp forgot-password mysql-error-2002

solucionar - ERROR 2002(HY000): No se puede conectar al servidor MySQL local a través del socket ''/var/run/mysqld/mysqld.sock''(2)



mysql.sock no existe (30)

Abre el terminal y escribe:

sudo apt-get purge mysql-client-core-5.6 sudo apt-get autoremove sudo apt-get autoclean sudo apt-get install mysql-client-core-5.5 sudo apt-get install mysql-server

Tanto la base de datos MySQL como el cliente central y los paquetes del servidor MySQL tendrán la misma versión 5.5. MySQL Client 5.5 y MySQL Server 5.5 son las versiones "mejores" actuales de estos paquetes en Ubuntu 14.04 según lo determinan los mantenedores de paquetes.

Si prefiere instalar MySQL Client 5.6 y MySQL Server 5.6, también puede encontrar los paquetes mysql-client-core-5.6 y mysql-server-5.6 en el Centro de software de Ubuntu. Lo importante es que los números de versión del cliente y del servidor coinciden en ambos casos.

Esto funcionó para mí.

Instalé LAMP en Ubuntu 12.04 LTS (Precise Pangolin) y luego configuré la contraseña de root en phpMyAdmin . Olvidé la contraseña y ahora no puedo iniciar sesión. Cuando intento cambiar la contraseña a través del terminal, obtengo:

ERROR 2002 (HY000): No se puede conectar al servidor MySQL local a través del socket ''/var/run/mysqld/mysqld.sock'' (2)

¿Cómo puedo arreglar esto? No puedo abrir LAMP, desinstalarlo o reinstalarlo.


Acabo de experimentar el mismo problema después de que tuve que reiniciar mi servidor de producción. Estoy ejecutando Debian 8.1 (Jessie) en una gota de DigitalOcean.

Esto es lo que hice para resolver mi problema:

  1. Compruebe si el archivo /var/run/mysqld/mysqld.sock existe. Si no es así, créelo manualmente ingresando touch /var/run/mysqld/mysqld.sock (que es lo que tenía que hacer).

  2. Así que el proceso MySQL puede usar este archivo. Cambie la propiedad de dicho archivo ingresando chown mysql /var/run/mysqld/mysqld.sock .

  3. Una vez que se haya hecho ''2'', reinicie el servicio MySQL ingresando service mysql restart o /etc/init.d/mysql restart .

Después de seguir los pasos anteriores, mi problema fue resuelto. Rara vez tengo este problema, y ​​probablemente hay una mejor manera, así que por supuesto proporcione comentarios constructivos si es necesario :).



Asegúrese de tener copias de seguridad de bases de datos importantes y luego intente desinstalar cosas relacionadas con MySQL :

apt-get remove --purge mysql/*

Luego instálalo de nuevo :

apt-get install mysql-server mysql-client

Esto funcionó para mí y los datos se guardaron.

Si PHP MySQL muestra errores, es posible que tenga que reinstalar PHP MySQL :

apt-get install php5-fpm php5-mysql


Compruebe el parámetro "bind-adress" adress "bind-adress" en my.cnf.

Si no, intente con el comando:

mysql -h 127.0.0.1 -P 3306 -u root -p

  • -h para el host 127.0.0.1 , es decir, localhost

  • -P (aviso -P como mayúscula) para el puerto 3306 , es decir, el puerto predeterminado para MySQL


Creo que cada vez que recibes el error.

ERROR 2002 (HY000): No se puede conectar al servidor MySQL local a través del socket ''/var/lib/mysql/mysql.sock''

Recomendaré primero que compruebe si su demonio mysql está ejecutando ... La mayoría de las veces no se ejecutará por defecto. Puede verificarlo por /etc/init.d/mysqld status .

Si no se está ejecutando, inicie primero:

.../etc/init.d/mysqld start.

Apuesto a que funcionará en un 110%.


De alguna manera, el proceso del servidor MySQL no creó el socket, o el cliente está buscando el socket en el lugar equivocado.

Mi primera sugerencia sería comprobar si el servidor MySQL se está ejecutando. La segunda sugerencia podría ser: ¿el servidor MySQL se está ejecutando en otro host? Si es así, agregue la -h <hostname> a su cliente MySQL en el terminal.

Si MySQL se está ejecutando, y se ejecuta localmente, revise su archivo my.cnf . Debe haber una línea como

socket = /var/run/mysqld/mysqld.sock

Comprueba si coincide con la ubicación de socket que mencionaste en tu publicación.

Por experiencia, diría que el escenario más probable es que su servidor MySQL no se ejecute en absoluto o no se ejecute en el mismo host en el que ejecuta su cliente MySQL desde el terminal.


En el servidor de Debian Jessie, mi solución de trabajo era simplemente hacer

service mysql restart service mysql reload

como usuario root


En lugar de usar localhost:

mysql -u myuser -pmypassword -h localhost mydatabase

Utilice 127.0.0.1

mysql -u myuser -pmypassword -h 127.0.0.1 mydatabase

(También tenga en cuenta, no hay espacio entre -p y mypassword)

Disfrutar :)


En mi caso funcionó haciendo algo de I + D:

Puedo conectarme a MySQL usando

root-debian#mysql -h 127.0.0.1 -u root -p

Pero no está funcionando con mysql -u root -p .

No encontré ninguna bind-address de enlace en mi.cnf . Así que superé el parámetro socket=/var/lib/mysql/mysqld.sock en my.cnf que me estaba causando un problema con el inicio de sesión.

Después de reiniciar el servicio salió bien:

root@debian:~# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or /g. Your MySQL connection id is 5 Server version: 5.6.19 MySQL Community Server (GPL)


En mi caso, el puerto predeterminado 3306 estaba siendo usado por algún otro proceso y, por lo tanto, no estaba iniciando. Después de que detuve el otro servicio e hice sudo service mysql start , funcionó bien. Por cierto, puedes usar algo como sudo lsof -Pn -iTCP:3306 para ver quién puede estar usando el puerto.


En mi caso, fue que el disco estaba lleno y mysqld no pudo iniciarse más.

Intente reiniciar el servicio mysql.

servicio mysql restart

o

servicio mysql parada

servicio mysql start

Si no reconoce el comando "detener", definitivamente es el espacio en disco. Debe hacer algo de espacio en la partición. Mysql está asignado o hacer que el disco sea más grande.

Compruebe el espacio en disco con

df -h


Es posible que tu servidor mysql no se esté ejecutando. Asegúrese de que se ejecuta escribiendo mysql.server start en el terminal.


Esto es lo que funcionó para mí:

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock service mysql restart

Esto crea un enlace.


Estoy viendo todas estas respuestas, pero ninguna ofrece la opción de restablecer la contraseña y ninguna respuesta aceptada . La pregunta real es que olvidó su contraseña, por lo que necesita restablecerla, no ver si se está ejecutando o no (instalada o no), como la mayoría de estas respuestas implican.

Para restablecer la contraseña

Siga estos pasos (puede ser útil si realmente olvida su contraseña y puede intentarlo en cualquier momento, incluso si no está en la situación en este momento):

  1. Deja de mysql

    sudo /etc/init.d/mysql stop

    O para otras versiones de distribución:

    sudo /etc/init.d/mysqld stop

  2. Iniciar MySQL en modo seguro

    sudo mysqld_safe --skip-grant-tables &

  3. Inicie sesión en MySQL usando root

    mysql -uroot

  4. Seleccione la base de datos MySQL para usar

    use mysql;

  5. Restablecer la contraseña

    update user set password=PASSWORD("mynewpassword") where User=''root'';

  6. Desechar los privilegios

    flush privileges;

  7. Reiniciar el servidor

    quit

  8. Detener e iniciar el servidor de nuevo.

    Ubuntu y Debian:

    sudo /etc/init.d/mysql stop ... sudo /etc/init.d/mysql start

    En CentOS, Fedora y RHEL:

    sudo /etc/init.d/mysqld stop ... sudo /etc/init.d/mysqld start

  9. Iniciar sesión con una nueva contraseña

    mysql -u root -p

  10. Escriba la nueva contraseña y disfrute de su servidor nuevamente como si nada hubiera pasado

Esto fue tomado de Restablecer una contraseña de root de MySQL .

Actualización tomada del comentario de @Daniel a continuación:

En MySQL 5.7, el campo de la contraseña en el campo de la tabla mysql.user se eliminó, y ahora el nombre del campo es ''authentication_string'', por lo que el paso 5 debería ser:

update user set authentication_string=password(''mynewpassword'') where user=''root'';


He intentado los siguientes pasos:

  1. Inicia sesión como super user o usa sudo
  2. Abra /etc/mysql/my.cnf usando gedit
  3. Busque bind-address y cambie su valor a la dirección IP de la máquina host del servidor de la base de datos. Para mí, fue localhost o 127.0.0.1
  4. Guarde y cierre el archivo.
  5. Regresa a la terminal y ejecuta sudo service mysql start

Y funcionó para mí.


Por experiencia, digo que debes comprobar si el servidor se está ejecutando primero y luego intentar configurar MySQL. La última solución es volver a instalar MySQL.


Prueba esto:

mysql -h 127.0.0.1 -P 3306 -u root -p <database>

También (para ver si está funcionando):

telnet 127.0.0.1 3306

Probablemente sea solo una my.cnf configuración en el archivo my.cnf , en /etc/somewhere (dependiendo de la distribución de Linux ).


Resolví esto matando el proceso mysql :

ps -ef | grep mysql kill [the id]

Y luego volví a encender el servidor con:

sudo /etc/init.d/mysql restart

Pero start trabajar también:

sudo /etc/init.d/mysql start

Luego inicié sesión como admin , y terminé.


Si está utilizando Amazon EC2 , y tiene este problema en la instancia, solo necesita hacer:

sudo yum install mysql-server sudo service mysqld restart

Amazon EC2 no tiene un servidor instalado (solo el cliente está instalado), por lo que en caso de que necesite instalarlo en su instancia, y luego intente

mysql -u root -p

para comprobar si eso funcionó.


Si su instalación fue reciente, debe confirmar si su instalación es el SERVIDOR de instalación ... como mysql-server-5.5 ... Tal vez haya instalado solo "mysql" ... esto es solo cliente en lugar del servidor.


Si tiene XAMPP instalado en su máquina Linux, intente copiar su archivo /opt/lampp/etc/my.cnf de /opt/lampp/etc/my.cnf a /etc/my.cnf .

Luego, ejecute mysql -u root nuevamente ... Ahora debería tener el socket correcto y poder ejecutar el cliente MySQL.


Solucioné este problema ejecutando el siguiente comando:

mysql.server start

Y si está usando un Mac y utiliza brew para instalar mysql, simplemente use:

brew services start mysql


También tengo este problema, pero acabo de hacer:

sudo service mysql restart

Funcionó para mí.


Tuve el mismo problema. A veces esto sucede si su servicio MySQL es rechazado.

Así que tienes que empezar:

sudo service mysql start


Tuve un problema similar. mysql no comenzaría

sudo service mysql start start: Job failed to start

Si deshabilito apparmor:

sudo aa-complain /etc/apparmor.d/*

el problema se fue El problema era que mysqld intentaba acceder a /run/mysqld/mysqld.sock, pero el perfil del autor solo daba permiso a /var/run/mysqld/mysqld.sock (/ var / run tiene un enlace simbólica a / run, por lo que en realidad lo mismo). No estoy seguro de por qué mysqld no está usando la ruta var, ya que eso está configurado en todos los archivos de configuración, pero puede solucionar el problema agregando lo siguiente a /etc/apparmor.d/usr.sbin.mysqld

/run/mysqld/mysqld.pid rw, /run/mysqld/mysqld.sock rw,


Yo tuve el mismo problema. Después de mucho buscar no encontré ninguna respuesta.

Finalmente, verifiqué el directorio /tmp , y sus permisos fueron 755. Cambié sus permisos a 777 y mysqld comenzó bien sin ningún problema.


Encontré la solución

Antes de mysql_secure_installation el comando: mysql_secure_installation

  • Paso 1: sudo systemctl stop mariadb
  • Paso 2: sudo systemctl start mariadb
  • Paso 3: mysql_secure_installation

Luego le pedirá la contraseña de root y puede simplemente presionar Enter y configurar su nueva contraseña de root.


Una vez tuve este problema y lo resolví instalando mysql-server , así que asegúrate de haber instalado mysql-server , no mysql-client o alguna otra cosa.

Ese error significa que el archivo /var/run/mysqld/mysqld.sock no existe, si no instaló mysql-server , entonces el archivo no existiría. Pero si el mysql-server ya está instalado y se está ejecutando, entonces debe verificar los archivos de configuración.

Los archivos de configuración son:

/etc/my.cnf /etc/mysql/my.cnf /var/lib/mysql/my.cnf

En /etc/my.cnf , la configuración del archivo de socket puede ser /tmp/mysql.sock y en /etc/mysql/my.cnf la configuración del archivo de socket puede ser /var/run/mysqld/mysqld.sock . Entonces, elimine o cambie el nombre de /etc/mysql/my.cnf , deje que mysql use /etc/my.cnf , entonces el problema puede resolverse.


mysqld stop mysql.server start