注:刚安装好的MySql包含一个含空密码的root帐户和一个匿名帐户,这是很大的安全隐患,对于一些重要的应用我们应将安全性尽可能提高,在这里应把匿名帐户删除、 root帐户设置密码,可用如下命令进行:
use mysql;
delete from User where User=""; #删除匿名账户
update User set Password=PASSWORD(newpassword) where User=root; 设置密码
1、连接MySQL
格式:mysql -h localhost -u root -ppassword databaseName
注:用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码。但是命令行输入密码是明文,一般-p后不输密码,回车后会提示输密码,此时输入密码不会明文显示
-- 连接本机: mysql -uroot -p -- 远程连接 -h 远程主机ip地址 -P 端口号(大写P) mysql -h110.110.110.110 -P3306 -u root -p 123
2、修改密码
root用户修改自己的密码:
方法一: mysqladmin -uroot -p123 password 'new_password' //123为旧密码 方法二: UPDATE mysql.user SET password=password(‘new_password’) WHERE user=’root’ AND host=’localhost’; FLUSH PRIVILEGES; 方法三: SET PASSWORD=password(‘new_password’); FLUSH PRIVILEGES;
root修改其他用户密码:
方法一: SET PASSWORD FOR 用户名@’IP地址’=password(‘new_password’); FLUSH PRIVILEGES; 方法二: UPDATE mysql.user SET password=password(‘new_password’) WHERE user=’用户名’ AND host=’IP地址’; FLUSH PRIVILEGES;
普通用户修改自己密码:
SET password=password(‘new_password’);
丢失root用户密码:
# vim /etc/my.cnf skip-grant-tables # service mysqld restart # mysql -uroot mysql> UPDATE mysql.user SET password=password(‘new_password’) WHERE user=’root’ AND host=’localhost’; mysql> FLUSH PRIVILEGES;