MySQL修改root密码的多种方法

CentOS里用yum安装的mysql,没有自动建立mysql数据库,root帐号的默认密码为空,若是要修改root帐号的密码,须要从别的数据库把mysql数据库导过来,才能修改。mysql

方法1: 用SET PASSWORD命令,我试了,这种方法可行,并且能够把密码设置为空,不需重启mysql服务
  mysql -u root --我试了,若是mysql自己有密码,执行这个命令进不去
  mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
方法2:用mysqladmin
  mysqladmin -u root password "newpass"
  若是root已经设置过密码,采用以下方法
  mysqladmin -u root password oldpass "newpass"
方法3: 用UPDATE直接编辑user表,我试了,这种方法可行,不能把密码设置为空,需重启mysql服务
  mysql -u root
  mysql> use mysql;
  mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
  mysql> FLUSH PRIVILEGES;
在丢失root密码的时候,能够这样
  mysqld_safe --skip-grant-tables&
  mysql -u root mysql 我执行的时候,提示mysql数据库不存在,这台CentOS里用yum安装的mysql确实没有自动建立mysql数据库。
  mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
  mysql> FLUSH PRIVILEGES;sql

相关文章
相关标签/搜索