내 문제는 mysql 설치에서 더 이상 루트로 로그인 할 수 없기 때문에 시작되었습니다. 암호를 설정하지 않고 mysql을 실행하려고했지만 ... 명령을 실행할 때마다
# mysqld_safe --skip-grant-tables &
프롬프트가 다시 표시되지 않습니다. 이 지침에 따라 비밀번호를 복구 하려고했습니다 .
화면은 다음과 같습니다.
root@jj-SFF-PC:/usr/bin# mysqld_safe --skip-grant-tables
120816 11:40:53 mysqld_safe Logging to syslog.
120816 11:40:53 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
암호를 재설정하기 위해 SQL 명령을 입력하라는 메시지가 표시되지 않습니다.
CTRL+ 를 눌러 죽이면 C다음 메시지가 나타납니다.
error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!
명령을 다시 시도하고 충분히 길게두면 다음과 같은 메시지가 나타납니다.
root@jj-SFF-PC:/run/mysqld# 120816 13:15:02 mysqld_safe Logging to syslog.
120816 13:15:02 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
120816 13:16:42 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
[1]+ Done mysqld_safe --skip-grant-tables
root@jj-SFF-PC:/run/mysqld#
그러나 다음을 수행하여 루트로 로그인하려고하면 다음을 수행하십시오.
# mysql -u root
다음과 같은 오류 메시지가 나타납니다.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
확인했는데 /var/run/mysqld/mysqld.sock
파일이 없습니다. 폴더는 있지만 파일은 아닙니다.
또한, 이것이 도움이되는지 아닌지 모르겠지만, 나는 달렸고 find / -name mysqld
그것을 생각해 냈습니다.
/var/run/mysqld - folder
/usr/sbin/mysqld - file
/run/mysqld - folder
저는 Linux와 MySQL을 처음 사용하므로 이것이 정상적인 지 모르겠습니다. 그러나 도움이 될 수 있도록이 정보를 포함시키고 있습니다.
마침내 mysql을 제거하고 다시 설치하기로 결정했습니다.
apt-get remove mysql-server
apt-get remove mysql-client
apt-get remove mysql-common
apt-get remove phpmyadmin
위와 같은 순서로 모든 패키지를 다시 설치 한 후 phpmyadmin 설치 중에 동일한 오류가 발생했습니다.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
그래서 제거 / 다시 설치를 다시 시도했습니다. 이번에는 패키지를 제거한 후 모든 mysql 파일과 디렉토리의 이름을 수동으로 mysql.bad
각각의 위치 로 바꿨습니다 .
/var/lib/mysql
/var/lib/mysql/mysql
/var/log/mysql
/usr/lib/perl5/DBD/mysql
/usr/lib/perl5/auto/DBD/mysql
/usr/lib/mysql
/usr/bin/mysql
/usr/share/mysql
/usr/share/dbconfig-common/internal/mysql
/etc/init.d/mysql
/etc/apparmor.d/abstractions/mysql
/etc/mysql
그 때 나는 다시 시도 mysql-server
하고 mysql-client
다시. 그러나 암호를 묻는 메시지가 표시되지 않습니다. 관리자 암호를 요구하지 않습니까?
/var/run/mysqld/mysqld.sock
누락되었습니다. 연결 한 문제에 해당 파일이 있습니다.