設置mysql密碼時,因使用了特殊字符,登錄mysql時,報錯:
bash:!@#:event not found
mysql無法登錄,只能更改密碼了。
1、打開/etc/my.cnf配置文件,找到[mysqld]段加上一句skip-grant-tables
# vim /etc/my.cnf
[mysqld]
port = 3306
socket = /tmp/mysql.sock
skip-grant-tables
skip-locking
2、保存退出
3、重啓mysql
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
4、登錄mysql
#mysql
5、mysql> UPDATE user SET Password = password ( 'new password' ) WHERE User = 'root' ;
6、mysql> flush privileges ;
7、mysql> quit
8、打開my.cnf配置文件
# vim /etc/my.cnf
將剛纔在[mysqld]中添加的skip-grant-tables刪除
重新啓動mysqld
# /etc/init.d/mysqld restart
使用更改的新密碼即可正常登錄mysql。