【MySQL】数据库常见错误及解决

news2025/1/13 13:50:14

目录

  • 2003错误:连接错误
    • 1251错误:身份验证错误
    • 1045错误:拒绝访问错误
    • 服务没有报告任何错误
    • net start mysql 发生系统错误 5。
  • 1064错误:语法错误
  • 1054错误:列名不存在
  • 1442错误:触发器中不能对本表增删改
  • 1303错误:使用工具创建存储过程/触发器时无需写创建这一行
  • 1292错误:类型错误
  • 1415错误:触发器不能出现 SELECT * FROM
  • 1130错误

2003错误:连接错误

错误:2003 -Can’t connect to MySQL server on ‘localhost’(10038)
解决:Navicat远程连接MySQL时,提示2003错误,可能的原因有①MySQL服务没有启动;②用户没有权限使用远程连接。③防火墙中没有配置MySQL端口(3306)。
对于第①种情况,Win+R,输入services.msc命令,打开服务,找到MySQL81(其中数字表示MySQL版本),右键启动即可。
对于第②种情况,在命令行中输入mysql -u root -p登录数据库,按照以下命令修改:

show databases; 

use mysql;

select user,host,password from user;

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

FLUSH PRIVILEGES;

接着退出MySQL,在命令行中输入net start mysql81(81为8.1版本)。
对于第③种情况,需要进入控制面板,找到Windows Defender防火墙,点击高级设置,点击入站规则,点击右边的新建规则,点击端口,点击下一步,选择协议类型和端口号(3306)点击下一步即可。

1251错误:身份验证错误

错误:1251 - Client does not support authentication protocol requested by server; consider upgrading MySQL client
原因:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password。
解决:①升级navicat驱动;②把mysql用户登录密码加密规则还原成mysql_native_password。
方式②需要Win+R,输入cmd打开命令行,进入MySQL的bin目录,然后输入mysql -u root -p,输入密码登录。按照以下命令修改即可。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则
 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 
 
FLUSH PRIVILEGES; #刷新权限

1045错误:拒绝访问错误

错误:在上述进入命令行后输入mysql -u root -p后,出现ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)报错。
原因:①MySQL的服务器停止:若MySQL服务没有启动,Win+R输入services.msc打开服务后,重启MySQL服务器。
②用户的端口号或者IP导致:若用户的端口号与IP(3306/3307)不一致,打开my.ini文件进行编辑。全部编辑替换为: port=X。
③MySQL的配置文件错误----my.ini等文件:my.ini文件误输入无效内容。
④root用户的密码错误。

服务没有报告任何错误

错误:MySQL81 服务正在启动 …
MySQL81 服务无法启动。
服务没有报告任何错误。

解决:由于之前按照其他教程在本地安装了MySQL服务,导致本机上有两个MySQL服务的冲突:
在这里插入图片描述
这种情况下,使用管理员权限运行cmd,输入mysqld --initialize,等待该指令执行完成后,重新使用管理员权限开启一个cmd,输入net stop mysql关闭mysql服务,再输入net start mysql81启动mysql81版本的服务,问题得到解决。
关闭mysql后,可打开服务管理器,将Mysql的启动类型改为禁用。

net start mysql 发生系统错误 5。

默认情况下cmd是以用户身份运行的,出现此类问题是由于没有权限。运行cmd时需要以管理员身份运行。

以管理员身份运行后再输入命令net start mysql即可。

1064错误:语法错误

错误:1064-You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near
解决:SQL语句语法错误,常见的是表名或字段名添加了双引号或单引号,在MySQL中需要添加反引号,这是为了区分MySQL的保留字与普通字符而引入的符号。在Navicat中添加触发器的代码,需要为字段名和表名添加反引号``(在键盘上的左上角数字1旁边)。

1054错误:列名不存在

错误:1054-Unknown column ‘XXX’ in ‘field list’
解决:该列名在数据表中不存在,可能的原因有①SQL语句中的列名写错了,②表名在数据库中不存在,③该列属于后面加上去的,选择全部列可以,单独获取报错,解决办法就是将数据表中的该列重新命名,然后保存,④数据表中的列名多了一个空格,删掉即可。

1442错误:触发器中不能对本表增删改

错误:1442-Can’t update table ‘XXX’ in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
解决:MySQL中触发器中不能对本表进行 insert ,update ,delete操作,以免递归循环触发。 对于update 只能用set进行操作,insert与delete只能借助第二张表才能实现需求。

1303错误:使用工具创建存储过程/触发器时无需写创建这一行

错误:1303-Can’t create a TRIGGER from within another stored routine.
解决:通过Navicat创建存储过程(或触发器)的时候,不需要写创建的这一行:CREATE PROCEDURE(或TRIGGER) XXX() ,直接在Navicat中选择即可。
在这里插入图片描述

1292错误:类型错误

错误:1292-Truncated incorrect DOUBLE value: ‘_’
解决:使用CONCAT()函数连接字段时,将’_‘这个字符串用+号与数值进行了连接,解决方案是使用CONCAT_WS()函数,其中第一个参数为’_‘,这表示将其后的字段使用’_'这个字符串隔开。

1415错误:触发器不能出现 SELECT * FROM

错误:1415 - Not allowed to return a result set from a trigger
解决:触发器不能出现 SELECT * FROM TABLE 形式的查询 ,因为其会返回一个结果集 ,但可以用SELECT INTO 来设置变量(虽然MySQL不太支持SELECT INTO语法,但是仅仅只是赋个值还是可以的)。

1130错误

错误:1130 - Host ‘XXXX’ is not allowed to connect to this MySQL server.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1127708.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SAFe敏捷发布火车ART案例分析-汽车公司里面的百人级团队

“Nothing beats an Agile Team, except a team of Agile Teams” ---SAFe 本案例来自于某汽车公司里一个百人级团队,该团队所开发功能是完全面向车主的,追求最佳用户体验。 01—转型前面临困难 在该团队启用SAFe ART之前,多个1…

欧拉筛(线性筛)算法的理解

欧拉筛(Eulers Sieve)(又叫线性筛)是一种用于生成素数的高效算法。与传统的试除法不同,欧拉筛通过线性时间复杂度来筛选出一定范围内的素数。这个算法以瑞士数学家莱昂哈德欧拉(Leonhard Euler)的名字命名,…

vue3使用Element ui plus中MessageBox消息框+radio框配合使用

想要达到的效果 首先安装element ui plus 省略~~ 官网地址: https://element-plus.gitee.io/zh-CN/component/message-box.htmlhttps://element-plus.gitee.io/zh-CN/component/message-box.html 需要用到的 引入 import { h } from "vue"; import {E…

Mac/Linux安装使用 opengauss数据库步骤

问题背景 一般部署opengauss数据库在虚拟机中,Mac使用虚拟机步骤较为繁琐,可以使用Docker部署opengauss数据库。Linux也可以使用此方式来部署opengauss数据库。 1. 在docker官网下载Docker桌面版,m系列芯片选Apple Chip。如果是Linux就下载…

vue项目内嵌iframe,iframe如何自适应高度

vue项目内嵌iframe&#xff0c;iframe如何自适应高度 一、直接上代码&#xff08;google版本的&#xff09;上面代码只处理了google&#xff0c;其他几个浏览器可以自行参考一下 一、直接上代码&#xff08;google版本的&#xff09; <iframeid"iframeContainer"s…

2023 uniapp( vue3 + TS )使用canvas生成海报并保存,taro/微信小程序也适用

有段时间没写vue了&#xff0c;有点生疏了...... 1、代码有注释&#xff0c;完整代码如下 <template><view class"page"><canvas class"canvas" v-if"isShow" :style"{width:${canvasWidth}px,height:${canvasHeight}px}&…

算法学习(四)将一颗二叉搜索树转排序的双向链表

描述 输入一棵二叉搜索树&#xff0c;将该二叉搜索树转换成一个排序的双向链表。如下图所示 数据范围&#xff1a;输入二叉树的节点数 0 \le n \le 10000≤n≤1000&#xff0c;二叉树中每个节点的值 0\le val \le 10000≤val≤1000 要求&#xff1a;空间复杂度O(1)O(1)&#x…

无障碍阅读他人开源项目结构:看完本文,你将信心满满

先看看阿里是怎么约定的 我印象中&#xff0c;以前在看《阿里巴巴Java开发手册》时&#xff0c;好像有关于工程结构和应用分层相关的内容&#xff0c;于是我回翻了一下&#xff0c;果然有&#xff1a; 它这里面讲的内容大概就是&#xff1a;关于一个正常的企业项目里一种通用的…

项目中拖拽元素,可以使用html的draggable属性,当然也可以用第三方插件interact

项目中拖拽元素&#xff0c;可以使用html的draggable属性&#xff0c;当然也可以用第三方插件interact 一、安装二、引用三、使用 一、安装 npm install interactjs二、引用 import interact from interactjs三、使用 <div class"drag_box"> &…

Linux虚拟网络设备—Veth Pair

veth是Virtual Ethernet Device的缩写&#xff0c;是一种成对出现的Linux虚拟网络接口设备。它最常用的功能是用于将不同的Linux network namespaces 命名空间网络连接起来&#xff0c;让二个namespaces之间可以进行通信。我们可以简单的把veth pair理解为用一根网线&#xff0…

2023年【加氢工艺】免费试题及加氢工艺在线考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 加氢工艺免费试题考前必练&#xff01;安全生产模拟考试一点通每个月更新加氢工艺在线考试题目及答案&#xff01;多做几遍&#xff0c;其实通过加氢工艺在线考试很简单。 1、【单选题】《中华人民共和国职业病防治法…

ES6初步了解Symbol的用法

ES6中为我们新增了一个原始数据类型Symbol&#xff0c;让我为大家介绍一下吧&#xff01; Symbol它表示是独一无二的值 Symbol要如何创建 第一种创建方式&#xff1a; let sy Symbol()第二种创建方式&#xff1a; let sy Symbol.for()具体独一无二在哪呢&#xff1f;它们的地…

阻抗导纳控制理解

书籍《Modern Robotics - Mechanics , Planning, and Control》中关于阻抗控制和导纳控制的部分&#xff1a; 下面结合上边的内容谈一谈我对导纳控制的理解。 1、质量-弹簧-阻尼 首先&#xff0c;不论是阻抗控制&#xff0c;还是导纳控制&#xff0c;他们同根同源&am…

计算机网络_03_tcp/ip四层模型

文章目录 1.为什么会有tcp/ip?2.tcp/ip是什么?3.为什么会有tcp/ip四层模型?4.tcp/ip四层模型介绍 1.为什么会有tcp/ip? 早期的计算机(计算机网络没有出现之前)几乎都是各自为战, 各种操作系统厂家百花齐放, 市面上的大部分计算机使用的都是不同的操作系统, 为每个人提供定…

【rk3568-linux】 rk3568x_linux-- 编译说明

概述 一个好的安装教程能够帮助开发者完成更便捷、更快速的开发。书山有路勤为径&#xff0c;学海无涯苦作舟。我是秋知叶i、期望每一个阅读了我的文章的开发者都能够有所成长。 开发环境 开发环境&#xff1a;ubuntu18 文章目录 概述开发环境一、选择型号二、全自动编译三、…

基于蜉蝣算法的无人机航迹规划-附代码

基于蜉蝣算法的无人机航迹规划 文章目录 基于蜉蝣算法的无人机航迹规划1.蜉蝣搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用蜉蝣算法来优化无人机航迹规划。 1.蜉蝣搜索算法 …

一个工作三年的前端是如何做性能优化的

你是怎么做性能优化的&#xff1f;关于这一个问题&#xff0c;也是我们前端开发程序员经常会讨论到的问题&#xff0c;接下来这篇文章将总结一下前端方面的性能优化及方式。 为什么要做性能优化 性能优化是为了提高网页的加载速度和相应速度&#xff0c;给用户带来更好的体验…

asp.net在线考评系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net在线考评系统是一套完善的web设计管理系统&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为vs2010&#xff0c;数据库为sqlserver2008&#xff0c;使用c#语言开发 asp.net 在线考评系统 二、功能介绍 本…

Python自动处理pptx:新建、另存、添加幻灯片、添加标题、插入文本图片图形、提取文本

Python-pptx库是一个用于创建、更新和读取Microsoft PowerPoint .pptx 文件的Python库。它允许我们使用Python脚本自动化PowerPoint文件的创建、更新和读取操作&#xff0c;是一个非常方便自动化处理PPTX的工具。 安装 pip install python-pptx创建 from pptx import Prese…

记一次公司项目上的常规渗透测试

授权项目上的渗透测试&#xff0c;漏洞有网站弱口令—存储型XSS—文件上传。 前言 本文由知识星球《网络安全情报攻防站》星友堂主投稿&#xff0c;感谢投稿。授权项目下常规的渗透测试。欢迎朋友们积极投稿&#xff0c;投稿有奖励。天冷了来领奶茶钱 正文 网站首页 首页啥都没…