[리눅스] MySQL root 관리자 비밀번호 변경
-  Linux 리눅스(우분투)에서 mysql 비밀번호(비번) root admin 패스워드(password) 바꾸는 방법
    - mysql 암호 변경 방법 
    - mysql 서버 중지 
sudo service mysql stop 
sudo killall mysqld 
sudo ps -aux | grep mysql 
//------------------------------------- 
< skip-grant-tables 옵션으로 변경하는 방법 > 
    - /etc/mysql/my.cnf 파일수정 
[mysqld] 
skip-grant-tables  # <== 추가, (주의! 보안 위험하므로 나중에 꼭 없애야 함) 
    - 서버 시작 
$ sudo service mysql start 
    - mysql console에 root로 접속 
$ mysql -u root 
    - 비밀번호 변경 
> FLUSH PRIVILEGES;  
        - 참고! 이 명령을 먼저 하지 않으면 다음 에러 발생 
RROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 
> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_pass'; 
> FLUSH PRIVILEGES; 
> exit 
    - (설정복원) /etc/mysql/my.cnf 파일수정 , skip-grant-tables 설정 삭제 
[mysqld] 
#skip-grant-tables  # <== 삭제, (보안 위험하므로 꼭 없애야 함) 
    - mysql 서버 재시작 
$ sudo service mysql restart 
//------------------------------------- 
< 참고 > 
* 일반 사용자 비밀번호 변경 방법 
    - root 계정으로 접속 
$ mysql -u root -h localhost -p 
    - 사용자 비밀번호 변경 명령 
> ALTER USER '사용자ID'@'localhost' IDENTIFIED BY '새비밀번호';
- 주의! 'localhost' 는 등록된 정보와 일치해야 한다. '%' 나 'IP'일수도 있음
> FLUSH PRIVILEGES;
//-----------------------------------------------------------------------------
< 참고 만 >
< 초기화 파일로 변경하는 방법 >  
     - 윈도우에서는 정상 작동했는데 나의 경우는 리눅스에서 에러 발생,(작업 실패)
    - 파일 작성 ex) /home/me/mysql-init 
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_pass'; 
    - 작성한 파일로 mysql 시작 
sudo mysqld --init-file=/home/me/mysql-init
//-------------------------------------
https://dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html