더 이상 루트로 MySQL에 로그인 할 수 없습니까?


8

우분투 15.04에서 더 이상 루트 사용자로 MySQL (실제로 MariaDB)에 로그인 할 수없는 것 같습니다 (14.04에서 14.10을 통해 14.10으로 업그레이드했습니다)

이미 비밀번호를 재설정하려고했습니다.

무엇 되는 작업입니다 sudo mysql-하지만 난 사용하여 다른 사용자에서 루트로 로그인합니다 mysql -uroot -p. 모든 권한과 비밀번호로 새 사용자를 만들면 작동합니다.

변경된 것이 있습니까?


ehm ... "하지만 루트로 로그인하고 싶습니다"나에게 이런 이유는 없었습니다. ;-)
Rinzwind

@Rinzwind 데이터베이스에 루트로 로그인해야 할 충분한 이유가 있습니다 . 사용자, 데이터베이스 등을 관리 할 수있는 유일한 방법입니다. 내부 sudo 메커니즘이 없습니다.
Oli

@oli 우리는 다른 사용자를 사용합니다. 즉. "root"를 통한 액세스는 "sudo su"를 사용하여 mysql을 재설정 할 때만 가능하지만 인증이 필요하지 않습니다.
Rinzwind

답변:


6

그래서 당신은 갔어요 버전 5.5.44-1ubuntu0.14.04.1으로 10.0.20-0ubuntu0.15.04.1. 그것이 더 무섭게 들리는데, 그것은 그들이 어떤 이유로 5.6이라고 부르는 것 입니다.

최신 버전의 MariaDB는 고정 경로를 통해 인증을 강제하기 위해 사용자 테이블에 플러그인을 추가 한 것으로 보입니다. 이 경우, root데이터베이스 사용자를 강제로 플러그인 . 이것은 또한 일부 서클에서 알려진 것처럼 보입니다 .unix_socketauth_socket

어쨌든이 플러그인은 시스템 root사용자 만 root비밀번호없이 데이터베이스로 로그인 할 수 있도록 제한 합니다. 그들이 선택한 보안 선택입니다.

다음과 같은 방법으로이 되돌릴 수 있습니다 의 플러그인 필드를 블랭킹 root사용자 :

shell$ sudo mysql -u root

[mysql] use mysql;
[mysql] update user set plugin='' where User='root';
[mysql] flush privileges;

이 후에 지정된 암호가 작동해야합니다. 이것이 얼마나 권장되는지 잘 모르겠습니다.


그 후에 sudo mysql -u root는 더 이상 로그인을 통해 로그인 할 수 없습니다. 즉, /etc/mysql/debian.conf또한 적응해야합니다.
Alex

4
나를 위해 일하지 않았다. 이 후에는 더 이상 'sudo mysql -u root'로 로그인 할 수 없었습니다.
MrSmith42
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.