方法1:用mysqladmin命令在命令行指定密码。
shell> mysqladmin -u user_name -h host_name password "newpwd"
方法2:执行set password语句。下例中将账号'jeffrey'@'%'的密码改为'biscuit'。
mysql> set password for 'jeffrey'@'%'=PASSWORD('biscuit');
如果是修改自己的密码,可以省略for语句:
mysql> set password=PASSWORD('biscuit');
方法3:还可以在全局级别使用GRANT USAGE语句(在*.*)来指定某个账户的密码而不影响账户当前的权限。
mysql> grant usage on *.* to 'jeffrey'@'%' identified by 'biscuit';
方法4:直接更改数据库的user表
shell> mysql -u root mysql
mysql> insert into user(Host, User, Password) values('%', 'jeffrey', PASSWORD('biscuit'));
mysql> flush privileges;
shell> mysql -u root mysql
mysql> update user set Password=PASSWORD('bagel') where Host='%' and User='francis';
mysql> flush privileges;
注意:更改密码时一定要使用PASSWORD函数(mysqladmin和grant两种方式不用谢,会自动加上)