mysql5.7 mysql库下面的user表没有password字段无法修改密码,5.7版本已经不再使用password来作为密码的字段了 而改成了authentication_string
登录报错
[root@master1 ~]# mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
修改配置文件
#查看my.cnf文件
vi /etc/mysql/my.cnf
#文件内有引用mysqld.cnf.d文件
#切换目录
cd /etc/mysql/mysqld.cnf.d
#修改mysqld.cnf文件
vi mysqld.cnf
#在mysqld模块下添加(越过验证)
skip-grant-tables
#登录mysql
#mysql -u debian-sys-maint -p
mysql -u root -p
#指定数据库
use mysql;
#修改密码
update mysql.user set authentication_string=password('123456') where user = 'root';
#刷新权限
flush privileges;
#vi mysqld.cnf
#注释掉下面配置
skip-grant-tables
#重启mysql服务
systemctl restart mysql
方式一:配置远程登录用户
#登录mysql
mysql -u root -p
#指定数据库
use mysql;
#查看用户信息
select User,authentication_string,Host from user;
#添加用户
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' ;
#这里的123456为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址
#刷新
flush privileges;
方式二:配置文件远程访问
#修改mysql配置文件
cd /etc/mysql/mysql.conf.d
vi mysqld.cnf
#修改如下语句
将如下
bind-address = 127.0.0.1
修改成
bind-address = 0.0.0.0
手机扫一扫
移动阅读更方便
你可能感兴趣的文章