MySQL忘記密碼的解決辦法:
[root@localhost ~]# mysql -uroot -p
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
如果說出現這個一般就是因為MySQL沒有起來
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
當出現這個的一般就是因為密碼輸入錯誤
解決辦法:
1,停掉MySQL
[root@localhost ~]# service mysqld stop
Stopping mysqld: [ OK ]
2,修改配置檔案,在最後一行加入以下内容
skip-grant-tables //跳過授權直接進入資料庫
3,重新開機MySQL
[root@localhost ~]# service mysqld start
[root@localhost ~]# mysql -uroot -p
mysql>
4,重新給MySQL設定密碼
mysql> use mysql //密碼存放在MySQL中,需要進入
mysql> desc user; //檢視user表中的字段
密碼一般存在password表中
+------------------------+-----------------------------------+------+-----+-----------------------+-------+
| Field | Type | Null | Key | Default | Extra |
| Host | char(60) | NO | PRI | | |
| User | char(16) | NO | PRI | | |
| Password | char(41) | NO | | | |
mysql> update user set password=password('passw0rd') where user="root"; //設定密碼為passw0rd
mysql> flush privileges; //重新整理
5,然後退出重新登陸
[root@localhost ~]# mysql -uroot -ppassw0rd