当你远程登录MySQL时,使用的账号要有特殊要求。

默认的账号的host属性都是localhost,意思是这个账号只能本地使用,如果要使用某个账号来远程登录,必须将账号的host属性值更改成%。

执行的sql语句如下:

update user set host = '%' where user = 'root';

补充:mysql 修改root密码 修改账户登录host

1.忘了root密码

远程服务器起了一个mysql服务,里面有个hive账户,在远程服务器能通过命令行用mysql -hlocalhost -uxxx -pxxx的方式登录,但是用navicat客户端,怎么也登录不上,而且navicat显示的还是我自己机器的ip地址。

初步怀疑,是mysql里的A账户密码没有设置正确。于是需要用root账号对hive账户重新进行设置。

坑爹的是,mysql也不是我布的。而且测试环境,也不知道该找谁要密码。那就使出终极武器吧:修改root密码。

2.重置mysql root密码。

首先注意的一点:mysql的root账户与服务器的root账户不是同一个概念,不要混为一谈。

首先,停掉mysql服务:

sudo service mysql stop

如果有服务器的root账户,自然就不用sudo了,下面所有的操作也是一样。上面的命令适用于Ubuntu和Debian。CentOS、Fedora和RHEL下使用mysqld替换mysql。下面所有的操作也是一样。

然后,再以安全模式启动mysql:

sudo mysqld_safe --skip-grant-tables --skip-networking &

这样我们就可以直接用root登录,无需密码:

mysql -u root

这样,我们就用root账户登录了mysql。

然后,就可以重置root密码了:

mysql> use mysql;

mysql> update user set password=PASSWORD("mynewpassword") where User='root';

mysql> flush privileges;

重置完毕以后,退出mysql。然后再将mysql服务启动:

sudo service mysql restart

接下来,就是用root账户登录了:

mysql -u root -pmynewpassword

3.修改A账户相关权限

用root账号登录mysql以后,接下来看看A账号的相关信息:

mysql> use mysql;

Database changed

mysql> select User, Host from user where User='hive';

+------+--------------+

| User | Host |

+------+--------------+

| hive | 127.0.0.1 |

+------+--------------+

这一下就明白了。尼玛难怪navicat客户端登不了。hive账户的host只有127.0.0.1,自然只能在本机登录了。

mysql> update user set Host='%' where User='hive';

将hive账户设置为所有机器均可登录,然后再刷新一下权限:

mysql> flush privileges;

再查看一把:

mysql> select User, Host from user where User='hive';

+------+------+

| User | Host |

+------+------+

| hive | % |

+------+------+

至此为止,大功告成!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自学编程网。如有错误或未考虑完全的地方,望不吝赐教。

修改MySQL用户的host属性_如何快速修改MySQL用户的host属性相关推荐

  1. mysql怎么定位错误信息_如何快速定位MySQL 的错误日志(Error Log)?

    日志文件是MySQL数据库的重要组成部分,包括有6种不同的日志文件: 错误日志: -log-err 查询日志: -log 慢查询日志: -log-slow-queries 更新日志: -log-upd ...

  2. 解决mysql不能修改密码_如何解决mysql修改密码后不能成功登录_数据库_mysql修改密码_课课家...

    今天给大家解决下MySQL修改密码后导致不能登录的问题,一般我们都知道mysql4.1.1版本后修改了用户密码的格式,一旦修改了密码,4.1.1以前的版本上是不能进行成功登录的,那么对于这些问题该如何 ...

  3. 修改mysql数据库名方法_安全快速修改Mysql数据库名的5种方法

    1. RENAME DATABASE db_name TO new_db_name 这个..这个语法在mysql 5.1.7中被添加进来,到了5.1.23又去掉了. 据说有可能丢失数据.还是不要用的好 ...

  4. 修改表字段属性_使用postman修改SAP Marketing Cloud contact主数据

    Marketing Cloud里的contact主数据,创建成功后也不是所有字段都能够被修改.在Personal data区域的字段是可以被修改的. 比如我在"客户属性"字段里维护 ...

  5. 微信昵称mysql图片不显示不全_带图片的微信用户名称存mysql问题总结

    先直接说两种解决方法,第一种比较烦(其实也没有很烦),第二种简单 1.后台对 用户名这个字段进行 加码 存入到mysql 取出来 再解码呈现 我的项目中 是 nickName 字段进行存储微信头像数据 ...

  6. mysql 5.5.修改库名_安全快速修改Mysql数据库名的5种方法

    1. RENAME DATABASE db_name TO new_db_name 这个..这个语法在mysql 5.1.7中被添加进来,到了5.1.23又去掉了. 据说有可能丢失数据.还是不要用的好 ...

  7. mysql用天兔监测什么_天兔监控服务器和mysql,redis等监控

    1:软件用途来源-官网 为所有数据库管理者.互联网企业数据库监控而设计 无需部署Agent,轻松监控1000+数据库实例,完善灵活的告警配置,详细的性能分析指标 部署环境: Linux环境:CentO ...

  8. mysql数据库连接被拒绝访问_记一次MySQL数据库拒绝访问的解决过程

    问题背景 用wordpress搭博客,数据库采用MySQL.为了调试方便,创建账户my_account ,允许它从任意主机访问数据库.CREATE USER `my_account`@'%' IDEN ...

  9. gcc编译器和mysql源码哪个难_源码编译mysql 5.5

    http://blog.csdn.net/aidenliu/article/details/6586610 源码编译mysql 5.5+ 安装过程全记录 分类: Mysql 2011-07-05 21 ...

最新文章

  1. !! javascript_产量! 产量! 生成器如何在JavaScript中工作。
  2. python oracle数据库开发_python连接Oracle数据库
  3. Fatal Python error: Cannot recover from stack overflow.(嵌套层数过多超出限制)
  4. 已编辑好的mysql_如何修改一个已存在的数据库名称?
  5. twisted系列教程七–小插曲,延迟对象
  6. C语言错误c2063,请教C语言中关于将二维数组复制到一个三维数组的问题
  7. 关于自然语言处理,数据科学家需要了解的 7 项技术
  8. linux 环境安装及学习
  9. linux 配置思科路由器,思科路由器配置帧中继基本命令
  10. 16进制颜色转换RGB原理
  11. shenyu单机部署和整合springcloud(手动和注解自动配置),nacos微服务网关
  12. express基本使用步骤
  13. GTD时间管理学习心得(1)
  14. 数智化转型中的零售餐饮行业
  15. Android studio 更新aar库无效问题解决
  16. qq邮件如何设置html阅读,如何得知对方是否已阅读QQ邮件?
  17. el-date-picker element时间选择器 先选择年 再选择月 年月日依次选择
  18. uml建模外卖订餐系统
  19. SQLMAP插件tamper编写与使用
  20. 养生的方法有哪些 十种长寿方法,全是免费的!

热门文章

  1. 贺利坚老师汇编课程42笔记:DIV除法指令
  2. 前端传递给后端且通过cookie方式,尽量传递id
  3. Kibana6.x.x源码结构分析笔记
  4. 【新闻发布系统】项目文档
  5. C++11右值引用和std::move语句实例解析
  6. linux下安装erlang,以及cowboy的初步接触的一些环境安装
  7. C#中文件与文件夹相关的操作
  8. 【原创】告别恼人的水平滚动条——滚动条宽度到底是多少?
  9. [转载] Python format()格式:中文对齐问题
  10. [转载] python模板字符串和格式化字符串