mysql+更新设置密码_MySQL修改root密码的多种方法

MySQL修改root密码的多种方法

在 Navicat for MySQL 下面直接执行  SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');   就可以

假设编译安装路径在/usr/local/msyql下

设置环境变量方法:

echo 'export PATH=$PATH:/usr/local/mysql/bin' >> /etc/profile

source  /etc/profile

那么mysql很多的脚本文件都在/usr/local/mysql/bin下面

没有添加环境变量情况下使用这些脚本 要么就是cd 进去这个目录然后./几啊还是那个脚本名称

要么就是直接使用绝对路径:

如没有初始密码情况下登录数据库:

/usr/local/msyql/bin/msyql

方法1: 用SET PASSWORD命令

如果没有初始密码 并且添加过环境变量情况下 直接使用命令  mysql   登录

如果是编译安装路径为/usr/local/mysql  那么绝对路径的方式/usr/local/mysql/bin/mysql 这样登录

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 -u root

mysql> use mysql;

mysql> UPDATE mysql.user SET Password = PASSWORD('newpass') WHERE user = 'root';

mysql> FLUSH PRIVILEGES;

在丢失root密码的时候,可以这样

mysqld_safe --skip-grant-tables&

mysql -u root mysql

mysql> UPDATE mysql.user SET password=PASSWORD("new password") WHERE user='root';

mysql> FLUSH PRIVILEGES;

或者

vim /etc/my.cnf

找到[mysqld]在下面加入

--skip-grant-tables

重启数据库

/etc/init.d/mysqld restart

直接使用  mysql  命令登录数据库

UPDATE user SET password=PASSWORD("new password") WHERE user='root';

FLUSH PRIVILEGES;

\q

然后进去/etc/my.cnf把--skip-grant-tables 注释掉或者删除

然后重启数据库 就可以用更改后的密码登录了

mysql-5.7.x修改密码:

mysql> update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';

mysql>alter user 'root'@'localhost' identified by '123456';

mysql> flush privileges;

mysql> quit;

特别提醒注意的一点:新版的mysql数据库下的user表中已经没有Password字段了,而是将加密后的用户密码存储于authentication_string字段

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值