반응형


[MYSQL의 root 패스워드를 분실하였을 경우]


1) mysqld 데몬 확인후 중지 처리

[root@MY_SERVER01|/root]# ps -ef |grep mysql | grep -v grep

root      2199     1  0 May29 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql
mysql     2331  2199  0 May29 ?        00:00:57 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock


[root@MY_SERVER01|/root]# service mysqld stop

mysqld 를 정지 중:                                         [  OK  ]


2) mysqld 데몬을 root을 확인하지 않는 모드로 구동 처리.


[root@MY_SERVER01|/root]# /usr/bin/mysqld_safe --skip-grant-tables &

[1] 19568

170602 11:11:01 mysqld_safe Logging to '/var/log/mysqld.log'.
170602 11:11:01 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql

 


3) mysql의 root 계정으로 로그인을 한후에 DATABASE를 mysql db로 변경후 root 계정의 비밀번호를 변경 처리

[root@MY_SERVER01|/root]# mysql -u root

mysql> use mysql;

Database changed

mysql> update user set password = password('신규변경할비밀번호') where user = 'root';

Query OK, 3 rows affected (0.00 sec)
Rows matched: 3  Changed: 3  Warnings: 0

mysql> exit

Bye


4) mysqld 데몬을 중지후 재시작 처리하고 mysql 데몬 확인.

[root@MY_SERVER01|/root]# service mysqld stop

170602 11:16:07 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
mysqld 를 정지 중:                                         [  OK  ]

[1]+  Done                    mysqld_safe --skip-grant-tables

[root@MY_SERVER01|/root]# service mysqld start

mysqld (을)를 시작 중:                                     [  OK  ]

[root@MY_SERVER01|/root]# ps -ef |grep mysqld | grep -v grep

root     19804     1  0 11:16 pts/0    00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --pid-file=/var/run/mysqld/mysqld.pid --basedir=/usr --user=mysql
mysql    19936 19804  0 11:16 pts/0    00:00:00 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/lib/mysql/mysql.sock


5) 신규 변경된 mysql root 계정으로 로그인 확인 계정 접속여부 확인 .

[root@MY_SERVER01|/root]# mysql -u root -p

Enter password:

mysql> use mysql;

Database changed

mysql> select * from user;


mysql> quit
Bye

 

 

 

반응형
Posted by 공간사랑
,