考试之前由于一直在做团队项目导致疏忽了数据库
等到今天来连接做考试的时候发现报错:1251
网上的解释以及解决方法:
今天下了个 MySQL8.0,发现Navicat连接不上,总是报错1251;
原因是MySQL8.0版本的加密方式和MySQL5.0的不一样,连接会报错。
试了很多种方法,终于找到一种可以实现的:
更改加密方式
1.先通过命令行进入mysql的root账户:
1
PS C:\Windows\system32> mysql -uroot -p
再输入root的密码:
1
2
3
4
5
6
7
8
9
10
Enterpassword: ******
Welcometo the MySQL monitor. Commandsend with ;or \g.
Your MySQLconnection idis 18
Server version: 8.0.11 MySQL Community Server - GPL
Copyright (c) 2000, 2018, Oracleand/or its affiliates.All rights reserved.
Oracleis a registered trademarkof Oracle Corporationand/or its
affiliates. Other names may be trademarksof their respective
owners.
Type'help;' or '\h' for help. Type'\c' to clear thecurrent input statement.
mysql>
2.更改加密方式:
1
2
mysql>ALTER USER 'root'@'localhost' IDENTIFIEDBY 'password' PASSWORD EXPIRE NEVER;
Query OK, 0rows affected (0.10 sec)
3.更改密码:该例子中 123为新密码
1
2
mysql>ALTER USER 'root'@'localhost' IDENTIFIEDWITH mysql_native_passwordBY '123';
Query OK, 0rows affected (0.35 sec)
4.刷新:
1
2
mysql> FLUSHPRIVILEGES;
Query OK, 0rows affected (0.28 sec)
// 如果报错ERROR 1396 (HY000): Operation ALTER USER failed for 'root'@'%':
则是远程访问权限不正确,先选择数据库,查看一下再更改:
1
2
3
4
5
6
7
8
9
10
11
12
13
mysql> use mysql;
Database changed
mysql>select user,hostfrom user;
+------------------+-----------+
|user | host |
+------------------+-----------+
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
5rows in set (0.00 sec)
连接数据库失败的原因有很多
版本更新带来的内置问题
密码更改的问题
初次连接也有可能是 Path环境没配置好 或者防火墙抵制等等
在这里推荐老师的一篇博客 :用老师的话来说,都是干货
https://www.cnblogs.com/best/p/6517755.html
MySQL使用Navicat远程连接时报错1251
1.报错信息 client does not support authentication protocol requested by server:consider upgrading MySQL ...
Django 连接 MySQL 数据库及常见报错解决
目录 Django 连接 MySQL数据库及常见报错解决 终端或者数据库管理工具连接 MySQL ,并新建项目所需数据库 安装访问 MySQL 的 Python 模块 Django 相关配置 可能会遇 ...
django2.0+连接mysql数据库迁移时候报错
django2.0+连接mysql数据库迁移时候报错 情况一 错误信息 django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 ...
MySQL数据库远程连接
12.00 MySQL数据库远程连接 参考: http://www.jb51.net/article/24508.htm http://www.linuxdiyf.com/viewarticle.ph ...
Swift3.0服务端开发(四) MySQL数据库的连接与操作
本篇博客我们来聊聊MySQL数据库的连接与操作.如果你本地没有MySQL数据库的话,需要你先安装MySQL数据库.在Mac OS中使用brew包管理器进行MySQL的安装是及其方便的.安装MySQL的 ...
Java对MySQL数据库进行连接、查询和修改(转)
Java对MySQL数据库进行连接.查询和修改 0. 一般过程: (1) 调用Class.forName()方法加载驱动程序. (2) 调用DriverManager对象的getConnection( ...
Web框架之Django-20-基于mysql数据库的连接
Web框架之Django-20-基于mysql数据库的连接 想要连接mysql首先需要安装pymysql这个驱动 然后在app的init文件中引入驱动 import pymysql pym ...
随机推荐
Css Study - Top Menu in Header 横向间隔的菜单
.shortcut ul li { display: inline; } CSS
软件工程实训项目案例--Android移动应用开发
实训过程 角色分工 1.项目经理:负责项目的组织实施,制定项目计划,并进行跟踪管理 2.开发人员:对项目经理及项目负责 3.需求分析员:负责系统的需求获取和分析,并协助设计人员进行系统设计 4.系统设 ...
使用行为树(Behavior Tree)实现网游奖励掉落系统
原地址:http://blog.csdn.net/akara/article/details/6165421 [原创]使用行为树(Behavior Tree)实现网游奖励掉落系统by AKara 20 ...
【笨嘴拙舌WINDOWS】GDI对象之位图
GDI对象在windows中可以描述成为一次绘画操作时可使用的抽象工具.包括(画笔.画刷.字体.区域.调色板.位图等) GDI对象里的对象概念和在编程领域中面向对象编程的对象概念是不一样的! GDI对 ...
Macbook pro内存升级
http://support.apple.com/kb/HT1270?viewlocale=zh_CN&locale=zh_CN#link1 https://support.apple.com ...
C# 发邮件类可发送附件
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Ne ...
HTML技术简介
1.DHTML:"Dynamic HTML"动态HTML技术的简称.DHTML并不是一项新技术,而是HTML,CSS,JavaScript技术组合的术语.DHTML背后的含义是: ...
.Net编译之AnyCPU - 进阶者系列 - 学习者系列文章
Visual Studio是一款非常强大的IDE工具,它为我们提供了强大的编码.调试和测试等工具,为我们编好.NET软件提供了强大的支持. 今天早晨想到了Visual Studio编译模式中的CPU类 ...
缺陷的背后---LIMIT M,N 分页查找
一.问题发现篇 最近组内做了一次典型缺陷分享时,翻阅2018年的缺陷,找到了一个让我觉得“有料”的bug(别的同事测试发现的),先大致简单的描述下这个问题: 需要实现的功能:从一个DB库同步某一段时间 ...
关于tpg例程的仿真
关于tpg例程的仿真 processor system reset---rst_clk_wiz_0_148M 可以看出interconnect_aresetn和peripheral_aresetn的复 ...