>데이터 베이스 >MySQL 튜토리얼 >RHEL or Fedora下清除MySQL密码

RHEL or Fedora下清除MySQL密码

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-07 16:54:48834검색

1.先以root用户登录系统;2.关闭MySQL服务或进程:service mysqld stop / killall mysqld;3.特权启动MySQL: /usr/local/mysql/bin

1.先以root用户登录系统;

2.关闭MySQL服务或进程:service mysqld stop / killall mysqld;

3.特权启动MySQL: /usr/local/mysql/bin/mysqld_safe --skip-grant-tables & or mysqld_safe --skip-grant-tables --skip-networking & (注:参数--skip-grant-tables为跳过授权表;--skip-networking为不监听TCP/IP连接);

4.然后可以不需要密码进入MySQL:mysql -u root -p(要求输入密码时直接回车即可);

mysql>use mysql;

mysql>update user set password=password('new pw') where user='root' (注:'new pw' 就是你的新密码,其它照抄;

另一种写法:update mysql.user set password=password('new pw') where user='root';

5.更新下:

mysql>flush privileges;

mysql>quit;

6.结束刚启动过的MYSQL进程:killall mysqld or killall -9 mysqld.

7.正常启动MYSQL: service mysql start

8.用'new pw'登入:mysql -u root -p.

OK......

>>同时也可以这样做:

首先,修改MySQL的登录设置:
# vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables
例如:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-grant-tables
保存并且退出vi。

然后,重新启动mysqld,,进去修改密码,同上述方法;

最后,将MySQL的登录设置修改回来:
# vi /etc/my.cnf
将刚才在[mysqld]的段中加上的skip-grant-tables删除
保存并且退出vi。

再次登入MySQL,一样OK......

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.