针对root用户:

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

skip-grant-tables

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

修改mysql非本地启动_修改mysql非本地启动

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

修改mysql非本地启动_修改mysql非本地启动_02

添加完成保存退出,直接使用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 表明;查看表结构确认具体字段信息

修改mysql非本地启动_数据库_03

如果报如下信息就是字段信息为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’);