天天看点

LINUX修改mysql数据库密码针对root用户:使用root用户修改普通用户密码

针对root用户:

1、编辑/etc/my.cnf文件,在my.cnf文件中添加跳过密码校验语句;

skip-grant-tables
           

文件地址:linux跟路径的/etc下

LINUX修改mysql数据库密码针对root用户:使用root用户修改普通用户密码

添加跳过密码校验代码的位置和代码示例:

LINUX修改mysql数据库密码针对root用户:使用root用户修改普通用户密码

添加完成保存退出,直接使用mysql即可登录mysql数据库;

2,修改root过程:

    1 进入MySql控制台(直接按回车,这时不需要输入root密码。)

    mysql -uroot -p

    2 切换到mysql数据库

    mysql>use mysql;

    3 修改mysql数据库中root的密码

    mysql> update user set password=password(“填入新密码”) where user=‘root’;

    这里不同的数据库版本会有不同:mysql,5.7之前的版本是password字段,5.7之后该字段改为了authentication_string

    这里可以用:desc 表明;查看表结构确认具体字段信息

LINUX修改mysql数据库密码针对root用户:使用root用户修改普通用户密码

如果报如下信息就是字段信息为authentication_string

报错信息:
    ERROR 1054 (42S22): Unknown column 'password' in 'field list'
原因:
    是从mysql 5.7开始,password字段被替换为了authentication_string
修改:
    update user set authentication_string=password('填入新密码”') where user='root';
           

3,修改完一定要刷新,一定一定一定;

    1》刷新mysql权限

    mysql> flush privileges;

    2》退出

    mysql> exit;

4,把刚才的免密语句删除!这个时候就可以愉快的使用root用户了!

使用root用户修改普通用户密码

使用root用户登录,root用户有对mysql.user表的管理权限

root用户修改普通用户的密码

GRANT语句

使用GRANT语句,修改普通用户密码 

GRANT语句,不仅可以创建用户为用户授权,还可以修改用户的密码 

通常情况下,为了不影响当前账户的权限,可以使用GRANT USAFE语句,修改指定用户的密码

语法格式 

GRANT USAFE ON . TO ‘username’@’localhost’ IDENTIFIED BY [PASSWORD] ‘new_password’;

UPDATE语句

使用UPDATE语句,修改普通用户的密码 

root用户,拥有操纵数据库的所有权限,不仅可以修改自己的密码,还可以修改普通用户的密码

语法格式 

UPDATE mysq.user set password=PASSWORD(‘new_password’) 

WHERE user=’username’ and host=’hostname’; 

注意,修改完成之后,需要使用FLUSH PRIVILEGES语句,重新加载权限表

SET语句

使用SET语句,修改普通用户的密码 

使用SET不仅可以修改root用的密码,还可以修改普通用户的密码 

在修改普通用户的密码时,需要增加一个FOR子句,用于指定要修改哪个用户

语法格式 

SET PASSWORD FOR ‘username’@’hostname’=PASSWORD(‘new_password’);