==================================================================================================================

※ 해당 내용의 경우 VMware를 이용한 로컬 네트웍 상에서 작업을 하는 내용을 안내하여 드립니당~!

[ 시스템 설정을 위한 내용 ]

설치된 Base Windows  : Windows 7 Pro
설치된 Server CentOS  : CentOS 6.4
설치된 VMware Program : VM workstation 9.0.2

==================================================================================================================


 DBMS 를 관리하다보면 자주 발생하지는 않지만, 관리자(root)의 비밀번호를 분실하는 상황이 발생한다.


 그런 경우 Mysql 은 "Secure Mode" 를 제공하므로 해당 상태로 서비를 동작시켜 계정의 비밀번호를 초기화 할 수 있다.


 아래와 같이 진행해보자!!!


  - #/etc/rc.d/init.d/mysqld stop

     // 데몬이 동작하고 있으면 정지를 시켜주어야 Secure Mode 로 동작시킬 수 있다.

                    

============== 신 or 구 버전에 따라 다르게 안전모드 형태로 mysqld 의 인증을 무시하고 접속한다. ==============

  * mysql 5.0.85 미만 버전인 경우
    명령어 경로 : "/usr/local/bin/safe_mysqld"


     - 사용법

#/usr/local/bin/safe_mysqld --skip-grant &



  * mysql 5.0.85 이상 버전인 경우
    명령어 경로 : "/usr/bin/mysqld_safe"


     - 사용법

#/usr/bin/mysqld_safe --skip-grant &


       위처럼 입력 후 "mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql" 메세지와 함께

       프롬프트가 뜨지 않고 커서만 깜박이고 있으면 정상적으로 적용된 상태입니다.


========================================2017. 05. 28 추가사항============================================

  * mysql 5.7.X 버전인 경우
    명령어 경로 : "/usr/bin/mysqld_safe"


     - 사용법

        #/usr/bin/mysqld_safe --skip-grant-tables --user=mysql &



========================================================================================================


     - mysql -u root mysql
        // 백그라운드 상태로 동작하므로 프롬프트 출력없이 커서만 존재하고, 인증이 무시된 상태이므로

           root 계정으로 mysql DB에 접속이 가능


     - mysql> update user set

              -> password=password('')
              -> where user='root';
        // root 사용자의 비밀번호를 초기화


====================※ Mysql 5.7.X 버전은 아래와 같이 진행하여야 합니다.====================

     - mysql> update mysql.user set

              -> authentication_string=PASSWORD('')

              -> where User='root' and Host='localhost';

==========================================================================================


     - mysql> flush privileges;

        // 변경된 사항을 데몬 재실행 없이 적용 가능


     - mysql> quit


     - #/etc/rc.d/init.d/mysqld restart
       // 백그라운드 프로그램 실행 및 안전모드 적용까지 한번에 모두 종료 및 데몬 재실행


     - #mysql -u root -p mysql

       // 확인 시 root 계정이 비밀번호 없이 정상 접속 가능




AND