Descubrí que mysql.sock se elimina cuando se detiene el servicio mysql y mysqld_safe no puede crearlo (no pude encontrar el motivo), por lo que mi solución fue hacer una copia de seguridad de la carpeta sock y restaurar antes de iniciar mysqld_safe
Iniciar servidor
$ sudo service mysql start
Ir a la carpeta de calcetines
$ cd /var/run
Copia de seguridad del calcetín
$ sudo cp -rp ./mysqld ./mysqld.bak
Detener servidor
$ sudo service mysql stop
Restaurar el calcetín
$ sudo mv ./mysqld.bak ./mysqld
Inicie mysqld_safe
$ sudo mysqld_safe --skip-grant-tables --skip-networking &
Iniciar shell mysql
mysql -u root
Cambiar contraseña
FLUSH PRIVILEGES;
SET PASSWORD FOR [email protected]'localhost' = PASSWORD('my_new_password');