title: 远程连接MYSQL8.0服务器问题
date: 2018-07-07 11:02:26
updated:
tags: [MYSQL,坑]
description:
keywords:
comments:
image:
---
问题描述: 先前使用MYSQL5.1,远端访问MYSQL服务器没问题,遇到的问题也就是防火墙问题,修改出入站规则后轻松的解决了.但是MYSQL8.0就很坑了,按照网上的解决办法折腾了两个小时,最后解决,依然不明白哪里有问题,只能把操作复现,为以后使用留个记录.

机器环境

操作系统:win10
gui工具:navcat12
MYSQL:v8.011
防火墙开启入站端口

# 直接对root用户修改的方法 #
操作前请在 bin 目录下运行cmd,或者设置好bin的环境变量

  1. 登录MySQL mysql -u root -p
  2. 回车后输入密码
  3. 选择 要操作的服务 use mysql; 我是使用的mysql作为名称,根据你自己服务器名称输入命令
  4. 查看mysql 数据库的 user 表中当前 root 用户的相关信息(host plugin)select host,user,authentication_string,plugin from user;

    执行完命令后显示一个表格, root 用户的 host默认显示的localhost,说明只支持本地访问,不允许远程访问。
  5. 先给root账户授权,这里我直接给了所有权限 grant all privileges on *.* to 'root'@'%' with grant option;
  6. 更改 root用户host 的默认配置 update user set host='%' where user='root';
  7. 执行前面的查询命令查看root的host是否改变为localhost(如果失败请继续往后看)
  8. 然后更改加密规则 ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
  9. 更新用户密码ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
  10. 刷新权限 FLUSH PRIVILEGES;

    成功后,可以看到root的host改变了,plugin也变成了mysql_native_password(以前也是mysql_na...但是要修改后才能真的连接成功,很玄学)

!如果上面的步骤你的修改不成功请接着往下看

直接添加用户的方法

很多人可能和我一样,前面的直接修改root用户失败,之后我尝试了直接添加用户的方法成功了,首先你要确保没有犯低级错误,上面的命令行大多是由分号的,请仔细检查.

  1. 启动cmd,到第三步骤为止都一样,先创建一个用户 Create user 'name'@'%' identified by 'password'; 名字自己定密码自己定. 执行查询用户命令后可以看到多了一个用户,这里我创建的是else.它的host应该为localhost,之前我忘记截图了.他的plugin是caching_.....

  2. 对用户授权 grant all privileges on *.* to 'name'@'%' with grant option;
  3. 修改host update user set host='%' where user='else';
  4. 修改加密方式ALTER USER 'else'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
  5. 更新密码 ALTER USER 'else'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
  6. 刷新权限FLUSH PRIVILEGES;
  7. 查询用户可以看到else用户的host为"%" plugin为"mysql_native_password"这样基本就代表成功了.
  8. 问题到此解决了!

# 后记 #
我的root修改是失败的,但是在新建完用户并完成修改后再次修改root就成功了,不知道怎么回事;
总之要运行远程连接,必须保证服务器端用户的host不为”localhost”,plugin为” mysql_native_password.”
所有操作方法都来源于网络,参考了众多帖子,没有做记录不好写明来源,抱歉.
最后祝君成功!

这是自己解决问题时的的笔记,如有错误请评论或者联系谢谢

远程连接MYSQL8.0服务器问题的更多相关文章

  1. 远程连接mysql8.0,Error No.2058 Plugin caching_sha2_password could not be loaded

    通过本地去连接远程的mysql时报错,原因时mysql8.0的加密方法变了. mysql8.0默认采用caching_sha2_password的加密方式 第三方客户端基本都不支持这种加密方式,只有自 ...

  2. navicate远程连接mysql8.0失败

    已经给了远程连接权限(update mysql.user set host = "%" where user = 'root'; flush privileges;) 连接错误提示 ...

  3. navicate 连接mysql8.0,个人踩坑问题汇总

    navicate 连接mysql8.0,个人踩坑问题汇总本文目录:1:安装mysql8.0新增全新验证方式,安装如果不修改mysql连接不上2:mysql启动命令问题3:navicate 运程连接My ...

  4. SQL Server "允许远程连接到此服务器" 配置

    在SQL Server的属性-->连接中我们可以看到这样一个选项:'允许远程连接到此服务器'(英文是remote access),其默认值是1,表示此选项开启. 但是这个参数并非是字面上所显示的 ...

  5. 阿里云ecs初始化磁盘后远程连接不到服务器

    阿里云初始化磁盘后远程连接不到服务器 报错: WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! ... 原因:阿里云ecs第一次链接服务器之后会在本地电 ...

  6. JMC监控(Windows上远程连接监控Linux服务器的JVM)

    Windows上远程连接监控Linux服务器的JVM:1.Linux服务器上配置:在Tomcat的tomcat-wms/bin/catalina.sh中添加CATALINA_OPTS="-X ...

  7. SQLServer 2005客户端远程连接sql2008 数据库服务器

    SQL2005客户端远程连接sql2008 数据库服务器 by:授客 QQ:1033553122 准备工作: 客户端所在pc机配置: 配置数据源 控制面板-管理工具-ODBC数据源-系统DSN-添加- ...

  8. JAVA连接MYSQL8.0问题

    title: java连接mysql8.0问题 date: 2018-07-08 19:27:38 updated: tags: description: keywords: comments: im ...

  9. SQLyog连接MySQL8.0报2058错误的解决方案

    引言 用SQLyog连接MySQL8.0(社区版:mysql-installer-community-8.0.15.0.msi),出现错误2058(Plugin caching_sha2_passwo ...

随机推荐

  1. Java实现多线程下载 URL以及URLConnection

    主线程: public class MultiThreadDown { public static void main(String[] args) throws Exception{ //初始化Do ...

  2. 如何使用markdown编辑器编写文章

    1 设置markdown编辑器为默认编辑器 进入我的博客,点击管理 点击选项,勾选markdown编辑器即可 2 markdown 语法 注意,文章中的# - 1. > 只有在段落开头且符号后需 ...

  3. 带你零基础入门redis【一】

    本篇文章介绍在CentOS7系统安装redis,以及redis的简单操作   我们把redis安装在/usr/local目录下.分别执行以下命令 [root@VM_6_102_centos ~]# c ...

  4. Java多线程常见问题

    1. 进程和线程之间有什么不同? 一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用.而线程是在进程中执行的一个任务.Java运行环境是一个包含了不同的类和 ...

  5. 干货|java缓存技术详解

    一.缓存是什么? 请点击此处输入图片描述 Cache ①高速缓冲存储器,其中复制了频繁使用的数据以利于快速访问. ②位于速度相差较大的两种硬件/软件之间,用于协调两者数据传输速度差异的结构 二.缓存有 ...

  6. HDU 5489 Removed Interval 2015 ACM/ICPC Asia Regional Hefei Online (LIS变形)

    定义f[i]表示以i为开头往后的最长上升子序列,d[i]表示以i为结尾的最长上升子序列. 先nlogn算出f[i], 从i-L开始枚举f[i],表示假设i在最终的LIS中,往[0,i-L)里找到满足a ...

  7. Processing一些常用技巧

    一些常用技巧总结: Tweak模式 快速查找函数用法 显示与输入中文注释 代码快速对齐 批量添加注释符 Tweak模式 Tweak模式是非常有用的功能,自3.0版本后,它就正式整合到Processin ...

  8. Python-OpenCV——Morphological Transformations(形态学转换)

    目标 这一节 我们将学习不同的形态学操作,如腐蚀.膨胀.开.闭...... 我们将看到不同的函数,如:cv2.erode().cv2.dilate().cv2.morphology() 理论 形态变换 ...

  9. 实验1 c语言最基本内容

    part 1 验证性内容 总结:经受了数组和结构体的双重折磨后,发现这部分好简单...现在没啥问题了... part  2  补全程序 1.判断奇偶 // 程序功能: // 要求用户从键盘输入一个整数 ...

  10. 《剑指offer》56 数组中只出现一次的数字

    题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字.   在线练习:https://www.nowcoder.com/practice/e02fdb5 ...