MySQL登陆时出现 Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES) 的缘由及解决办法

MySQL登陆时出现 Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES) 的缘由及解决办法。(或者用mysql链接工具navicat出现一样的报错)mysql

输入图片说明

mysql -u root -h 192.168.194.142 -p

Enter password: ERROR 1045 (28000): Access denied for user 'root'@'192.168.194.142' (using password: YES)sql

【解决办法】数据库

  1. 先用localhost登陆

mysql -u root -p

Enter password: 2. 执行受权命令 mysql> grant all privileges on . to root@'%' identified by '123'; Query OK, 0 rows affected (0.07 sec) 3. 退出再试 mysql> quit Bye 再试登陆:服务器

mysql -u root -h 192.168.194.142 -p

Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 3 Server version: 5.6.33 MySQL Community Server (GPL) Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.ide

mysql> 成功啦!工具

下面详细说说如何给用户受权。ui

mysql> grant 权限1,权限2, ... 权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '链接口令';.net

权限1,权限2,... 权限n 表明 select、insert、update、delete、create、drop、index、alter、grant、references、reload、shutdown、process、file 等14个权限。 当权限1,权限2,... 权限n 被 all privileges 或者 all 代替时,表示赋予用户所有权限。 当 数据库名称.表名称 被 . 代替时,表示赋予用户操做服务器上全部数据库全部表的权限。 用户地址能够是localhost,也能够是IP地址、机器名和域名。也能够用 '%' 表示从任何地址链接。 '链接口令' 不能为空,不然建立失败。接口

举几个例子: mysql> grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by ‘123′; 给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操做的权限,并设定口令为123。图片

mysql> grant all privileges on vtdc.* to joe@10.163.225.87 identified by ‘123′; 给来自10.163.225.87的用户joe分配可对数据库vtdc全部表进行全部操做的权限,并设定口令为123。

mysql> grant all privileges on . to joe@10.163.225.87 identified by ‘123′; 给来自10.163.225.87的用户joe分配可对全部数据库的全部表进行全部操做的权限,并设定口令为123。

mysql> grant all privileges on . to joe@localhost identified by ‘123′; 给本机用户joe分配可对全部数据库的全部表进行全部操做的权限,并设定口令为123。

相关文章
相关标签/搜索