"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > MySQL에서 루트 사용자의 제어권을 다시 얻습니다.

MySQL에서 루트 사용자의 제어권을 다시 얻습니다.

2024-08-26에 게시됨
검색:544

Retake control of the root user in MySQL

MySQL을 처음 설치하는 경우 비밀번호 없이 로그인할 수 없습니다.
비밀번호 없이 로그인하려면 my.cnf에 다음 줄을 추가해야 합니다.

skip-grant-tables

보안상의 위험성이 크므로 외부의 불법접근을 방지하기 위해 비밀번호를 설정해두시기 바랍니다.

MySQL에서 루트 사용자의 제어권을 다시 얻는 방법

1단계: MySQL에 연결

mysql

2단계: 기본 데이터베이스 사용

use mysql;

3단계: 사용자 루트 비밀번호 재정의

UPDATE user SET `authentication_string` = PASSWORD('myNuevoPassword') WHERE `User` = 'root';

주의
명령어를 실행할 수 없는 경우 mysql.user 테이블의 authenticate_string 컬럼을 확인해야 합니다.

SELECT User, authentication_string  FROM mysql.user\G
*************************** 1. row ***************************
                 User: mysql.infoschema
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 2. row ***************************
                 User: mysql.session
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 3. row ***************************
                 User: mysql.sys
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 4. row ***************************
                 User: root
W&2-*D:1FsLlMJEFsvaZNpaAlnJDEyTNo2QO7Eu7P0rhe10psBsC
4 rows in set (0.00 sec)

그리고 다음 명령을 실행합니다.

UPDATE user SET `authentication_string` = 'myNuevoPassword' WHERE `User` = 'root';

4단계: 루트 비밀번호를 변경할 수 있는 경우 mysql.user 테이블을 표시합니다.

SELECT User, authentication_string  FROM mysql.user\G
*************************** 1. row ***************************
                 User: mysql.infoschema
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 2. row ***************************
                 User: mysql.session
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 3. row ***************************
                 User: mysql.sys
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 4. row ***************************
                 User: root
authentication_string: ZAQ$2wsx2408
4 rows in set (0.00 sec)

5단계: my.cnf에서 줄 지우기

skip-grant-tables

6단계: MySQL 서비스 다시 시작

sudo systemctl restart mysqld

7단계: 비밀번호로 mysql에 연결

mysql -u root -p
Enter password: [new password]

mysql> 

이 작업을 수행해야 할 경우 주의해서 사용하세요!

릴리스 선언문 이 글은 https://dev.to/kyotanakada/retake-control-of-the-root-user-in-mysql-308h?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다. 그것
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3