从NetCore报错到MySql安全
之前项目在测试服务器上的一些接口时不时会报出下面的错误:(采用Abp框架)
"SocketException: 你的主机中的软件中止了一个已建立的连接。 STACK TRACE: at MySqlConnector.Protocol.Serialization.SocketByteHandler.WriteBytesAsync(ArraySegment`1 data, IOBehavior ioBehavior) in C:\projects\mysqlconnector\src\MySqlConnector\Protocol\Serialization\SocketByteHandler.cs:line 90 --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at MySqlConnector.Utilities.ValueTaskExtensions.<ContinueWith>d__0`2.MoveNext() in C:\projects\mysqlconnector\src\MySqlConnector\Utilities\ValueTaskExtensions.cs:line 8 --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at MySqlConnector.Core.ServerSession.TryAsyncContinuation(Task`1 task) in C:\projects\mysqlconnector\src\MySqlConnector\Core\ServerSession.cs:line 1225at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot) --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at MySqlConnector.Core.TextCommandExecutor.<ExecuteReaderAsync>d__1.MoveNext() in C:\projects\mysqlconnector\src\MySqlConnector\Core\TextCommandExecutor.cs:line 36 --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at MySql.Data.MySqlClient.MySqlCommand.<ExecuteNonQueryAsync>d__60.MoveNext() in C:\projects\mysqlconnector\src\MySqlConnector\MySql.Data.MySqlClient\MySqlCommand.cs:line 261 --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery() in C:\projects\mysqlconnector\src\MySqlConnector\MySql.Data.MySqlClient\MySqlCommand.cs:line 62at MySql.Data.MySqlClient.MySqlTransaction.Dispose(Boolean disposing) in C:\projects\mysqlconnector\src\MySqlConnector\MySql.Data.MySqlClient\MySqlTransaction.cs:line 81at Microsoft.EntityFrameworkCore.Storage.RelationalTransaction.Dispose()at Abp.EntityFrameworkCore.Uow.DbContextEfCoreTransactionStrategy.Dispose(IIocResolver iocResolver)at Abp.EntityFrameworkCore.Uow.EfCoreUnitOfWork.DisposeUow()at Abp.Domain.Uow.UnitOfWorkBase.Dispose()at Abp.AspNetCore.Mvc.Uow.AbpUowActionFilter.<OnActionExecutionAsync>d__4.MoveNext() --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeNextActionFilterAsync>d__10.MoveNext() --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.<InvokeInnerFilterAsync>d__13.MoveNext() --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.<InvokeNextExceptionFilterAsync>d__24.MoveNext() "
View Code
MySql.Data.MySqlClient.MySqlException (0x80004005): Failed to read the result set. ---> System.IO.EndOfStreamException: Expected to read 4 header bytes but only received 0.at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at MySqlConnector.Protocol.Serialization.ProtocolUtility.DoReadPayloadAsync(BufferedByteReader bufferedByteReader, IByteHandler byteHandler, Func`1 getNextSequenceNumber, ArraySegmentHolder`1 previousPayloads, ProtocolErrorBehavior protocolErrorBehavior, IOBehavior ioBehavior) in C:\projects\mysqlconnector\src\MySqlConnector\Protocol\Serialization\ProtocolUtility.cs:line 462at MySqlConnector.Protocol.Serialization.StandardPayloadHandler.ReadPayloadAsync(ArraySegmentHolder`1 cache, ProtocolErrorBehavior protocolErrorBehavior, IOBehavior ioBehavior) in C:\projects\mysqlconnector\src\MySqlConnector\Protocol\Serialization\StandardPayloadHandler.cs:line 37at MySqlConnector.Core.ServerSession.ReceiveReplyAsync(IOBehavior ioBehavior, CancellationToken cancellationToken) in C:\projects\mysqlconnector\src\MySqlConnector\Core\ServerSession.cs:line 645 --- End of stack trace from previous location where exception was thrown ---at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at MySqlConnector.Core.ServerSession.TryAsyncContinuation(Task`1 task) in C:\projects\mysqlconnector\src\MySqlConnector\Core\ServerSession.cs:line 1230at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot) --- End of stack trace from previous location where exception was thrown ---
View Code
然后我使用swagger+miniprofiler,查看生成的sql语句
查看Mysql错误日志:
Aborted connection 422 to db: '数据库名称' user: 'root' host: 'localhost' (Got a packet bigger than 'max_allowed_packet' bytes)
可能因为传输的数据过大,而Mysql的max_allowed_packet默认为1024b,导致sql执行不成功。
然后将Mysql配置文件中的max_allowed_packet值改为max_allowed_packet = 4M
重启Mysql,问题解决。
然而过了一段时间,同样的报错又出现了,首先看了下max_allowed_packet的值,果然max_allowed_packet又被修改为了1024b,查看命令如下:
show variables like '%max_allowed_packet%';
然后询问同事,他们说并没有动数据库,上网查了下说是有可能是被攻击了。
于是我开启了Mysql的日志,命令如下:
set global general_log=on;
在日志里看到了被修改信息,然后看了下ip~~~
还发现了几个新增用户TvT,把它删掉:
查看Mysql用户命令如下:
select * from mysql.user
目前解决方法是,加强密码,限制远程连接ip:把上图的% 改为指定ip段xxx.xxx.xxx.%,重启Mysql。
转载于:https://www.cnblogs.com/lonelyxmas/p/10367986.html
从NetCore报错到MySql安全相关推荐
- mysql 失败 捕获 net core_从NetCore报错到MySql安全
之前项目在测试服务器上的一些接口时不时会报出下面的错误:(采用Abp框架) "SocketException: 你的主机中的软件中止了一个已建立的连接. STACK TRACE: at My ...
- python 连接mysql报错:mysql.connector.errors.NotSupportedError: Authentication plugin ‘caching_sha2_passw
python 连接mysql报错:mysql.connector.errors.NotSupportedError: Authentication plugin 'caching_sha2_passw ...
- mysql table plugin,MySql报错Table mysql.plugin doesn’t exist的解决方法
MySql报错Table mysql.plugin doesn't exist的解决方法 一般产生原因是手工更改my.ini的数据库文件存放地址导致的 mysql服务启动时候找不到内置数据库" ...
- logstash mysql eror_Logstash安装记录(报错com.mysql.jdbc.Driver not loaded的解决)
Logstash是es官方标配的ELK中的"L",它们三者的关系是这样:"E"指elasticsearch,用来提供核心的搜索服务:"L"指 ...
- mysql报错3534_win7下安装MYSQL报错:MYSQL 服务无法启动的3534问题
上午在win7下安装MYSQL,只到"net start mysql"这一步报错:3534的错误: 于是在百度中搜索关键字"mysql服务无法启动3534". ...
- mysql数据库-1.文件导入mysql表secure_file_priv报错问题解决 mysql select outfile不能导出亲测
1.问题 Mac系统,将文件导入mysql表中,报错secure_file_priv选项未设置. 执行导入文件到表mobile_attribute_jxl命令时: load data infile ' ...
- mysql 报错3534_win7下安装MYSQL报错:MYSQL 服务无法启动的3534问题
win7下安装MYSQL,只到"net start mysql"这一步报错:3534的错误: 是直接官网下载的压缩文件.不是安装文件. 解决方法: 1:环境变量PATH添加完成(例 ...
- eclipse启动mysql报错_Eclipse+mysql+java Eclipse中运行没有问题,但打包后运行不了,也不报错,求高手指点...
这几天用Eclipse+mysql+java编写了一个班级信息管理的软件.在Eclipse里运行没有问题所有功能都没有问题,但无论用Eclipse中自带的export生成可执行的jar包,还是用fat ...
- mysql登录报错error1045,mysql创建登录报错ERROR1045(28000)
.如下图(第四个): 而本人创建的用户为: Mysql> grant all on itcase.* to 'test'@'%' identified by '123456'; ...
最新文章
- Qt for Android (Alpha) 发布
- AI:一个20年程序猿的学习资料大全—人工智能之AI/机器学习/深度学习/计算机视觉/Matlab大赛——只有你不想要的,没有你找不到的
- 「Ubuntu: Conda」Conda相关命令
- python收集数据程序_基于Python语言的互联网数据收集软件的设计
- LongAdder,AtomicIntegerFieldUpdater深入研究
- ETL数据清洗的案例
- [BZOJ1492][NOI2007]货币兑换Cash(斜率优化+CDQ分治)
- Atitit 薪酬管理法 工作手册 员:薪酬管理办法 1.薪酬结构 所有员工的薪酬均由岗位工资、级别工资、校龄工资、特别津贴、绩效工资和季度奖金六部分组成。其中岗位工资、级别工资、校龄工资、22
- 如何开发一个油猴脚本- 从零开始编写一个油猴脚本
- 学习数据库Mysql/Oracle/SQL从入门到进阶书籍pdf版吐血整理推荐附网盘链接(珍藏版)
- gitlab 屏蔽注册功能
- DNS域名详细解析过程(最全面,看这一篇就够)
- Java组合模式(Composite)
- 面向中国企业关系抽取的双向门控递归单元神经网络
- Serializable的含义
- 【解决方法汇总】SpringBoot项目报错 Could not resolve placeholder ‘‘ in value “${}“
- python 入门到实践期末考试常出现的考试内容_测试类——python编程从入门到实践...
- 一条优质公链需要具备哪些条件?
- 今天聊:2~3年前端处于离职困境与舒适区能做些什么
- 最小的k个数(Java)
热门文章
- Java 主流垃圾收集器
- 怎么看我装的sql能不能用_深入浅出sql优化(三)之单表索引优化
- QuerWrapper常用方法
- java编译器代码检查_Java编译器可以优化此代码吗?
- windows下如何在命令行里切换到任意目录
- c语言中ndigit用法,求C语言中头文件及函数的含意的总分类
- 源码 状态机_阿里中间件seata源码剖析七:saga模式实现
- java cpu高_Java中的CPU占用高和内存占用高的问题排查
- matlab数字通信,基于matlab时分复用数字通信系统的设计与实现.pdf
- python3 上传文件到目标机器_通过python模块实现服务器和本地机器之间快速拷贝文件...