MySQL InnoDB auto_increment 值增加 2 而不是 1。 病毒?

2024-04-03

有一个 InnoDB 表,用于存储自定义构建的 Web 应用程序使用的博客文章的评论。

最近我注意到评论的自动递增主键值增加了 2 而不是仅增加 1。

我还注意到,在另一个用于记住最后几个评论者的足迹签名(例如 ip、会话 id、uagent 字符串等)的 MySQL 表中,PHP 会话的名称以“viruskinq”开头,这很奇怪,因为我认为它应该始终是类似 md5 的十六进制字符串。

谷歌只给出了几个“viruskinq”的结果,全部都是土耳其语。有趣的是,大约一年前,该网站被土耳其恶棍破坏。 (我 100% 确定攻击者没有成功,因为我的应用程序中存在任何安全漏洞,因为当时由同一家公司托管的其他网站也遭到了破坏。)

该站点位于使用 Linux 的共享主机上。

您认为服务器本身有可能仍然受到那些黑客的影响吗?检查评论的 id 值发现,这种翻倍现象自今年 5 月以来就存在,但污损发生在大约一年前。

还有哪些其他原因可以解释自动增量值的奇怪行为?该应用程序尚未更改,并且在较旧的注释中,自动递增的主键值是有序的。

编辑:解决方案摘要

托管公司告诉我,自动增量值翻倍的原因是因为他们使用了主从MySQL架构,根据他们的说法,这种现象是正常的。

他们还承认,各种黑客不断攻击他们的服务器,“尤其是会话”,而他们对此无能为力。

我想我最好开始打包我的东西并转向更好的网络主机。


我真的真的怀疑这是病毒。仔细检查这是否真的是会话ID以该字符串开头(这确实是一些担忧的原因)。我猜这是一个发现了如何改变用户代理浏览器中的字符串,您将看到其结果,这是完全无害的。

关于增量问题。

  • 首先,检查auto_increment_increment http://dev.mysql.com/doc/refman/5.0/en/replication-options-master.html#sysvar_auto_increment_incrementMySQL 服务器的设置。也许出于某种原因它被设置为 2?

  • 其次,如果不是那样的话,我会看看所有DELETE评论系统对表运行的操作。被识别为垃圾邮件的评论会被删除吗?您可以暂时记录删除,或者切换到软删除吗?

  • 另外,尝试自己创建一些后续评论。是否也会出现同样的现象呢?如果使用 mySQL 手动添加记录会怎样?

  • 查看插入提交注释的 PHP 代码,确保没有任何内容可能导致此行为。

  • 尝试将评论系统移至另一台服务器(最好是本地服务器,可能是新设置的),看看该行为是否仍然存在。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL InnoDB auto_increment 值增加 2 而不是 1。 病毒? 的相关文章

  • MySQL JOIN 滥用?情况会变得有多糟糕?

    我读了很多关于关系数据库的文章 在每个 SELECT 上使用许多 JOIN 语句 但是 我一直想知道滥用这种方法从长远来看是否会出现任何性能问题 例如 假设我们有一个users桌子 我通常会添加 最常用 的数据 而不是进行任何额外的联接 例
  • 如何从表中检索特定列 --- JPA 或 CrudRepository?我只想从用户表中检索电子邮件列

    用户模型 Entity Table name user uniqueConstraints UniqueConstraint columnNames email public class User implements Serializab
  • MySQL:如何仅获取正值的平均值?

    假设我有 INT 列 并且我使用 1 来表示插入时没有可用数据 我想获得该列中所有 0 或更大值的平均值 这可能吗 Thanks 我忘了提及 我正在与其他 AVG 一起执行此操作 因此从选项卡中选择 avg a avg b avg d 所以
  • Tomcat 6找不到mysql驱动

    这里有一个类似的问题 但关于类路径 ClassNotFoundException com mysql jdbc Driver https stackoverflow com questions 1585811 classnotfoundex
  • 使用 MYSQL 将 h:mm pm/am 时间格式插入数据库

    我正在尝试将以 h mm am pm 格式写入的时间插入到存储为标准 DATETIME 格式 hh mm ss 的数据库中 但我不知道如何将发布的时间转换为标准格式所以数据库会接受它 这是我到目前为止一直在尝试的 title POST in
  • 无法连接到 MAMP 上的 phpMyAdmin

    我收到此错误消息 MySQL 说道 无法连接 设置无效 phpMyAdmin 尝试连接 MySQL 服务器 但服务器拒绝连接 您应该检查配置中的主机 用户名和密码 并确保它们与 MySQL 服务器管理员提供的信息相对应 用户和通行证是默认的
  • 休眠以持久保存日期

    有没有办法告诉 Hibernate java util Date 应该持久保存 我需要这个来解决 MySQL 中缺少的毫秒分辨率问题 您能想到这种方法有什么缺点吗 您可以自己创建字段long 或者使用自定义的UserType 实施后User
  • MySQL NOT IN 来自同一个表中的另一列

    我想运行 mysql 查询来选择表中的所有行films其中的值title该列不存在于另一列的所有值中的任何位置 collection 这是我的表格的简化版本 其中包含内容 mysql gt select from films id titl
  • 如何对 SQL 进行多次查询

    我正在尝试创建一个表 并在 PHP 脚本的帮助下在数据库中插入一些值 虽然只插入 1 行 但效果很好 当我尝试输入更多行数时 出现错误 我需要为每个查询编写完整的插入语句 因为我正在使用在线 Excel 到 SQL 查询转换器
  • MySQL:@@ 是什么意思?

    我正在阅读本页上的 MySQL 文档 http dev mysql com doc refman 5 1 en set statement html http dev mysql com doc refman 5 1 en set stat
  • MYSQL:如何在同一查询中联接两个表,两次引用同一个表

    我有两张桌子 我正在尝试将下面的示例两个表与表 1 引用表 2 两次结合起来 例如 如果我查看表 1 组 2 和成员 7 它应该查找表 2 中的 ID 并给出输出 Group Members Name Name 2 7 Blue Dog T
  • 在 MySQL 数据库中保持 TEXT 字段唯一的最佳方法

    我想让 TEXT 字段的值在我的 MySQL 表中唯一 经过小型研究 我发现由于性能问题 每个人都不鼓励在 TEXT 字段上使用 UNIQUE INDEX 我现在想用的是 1 创建另一个字段来包含 TEXT 值的哈希值 md5 text v
  • 仅使用 varchar 作为外键的 MySQL 表

    我有一个包含单个唯一 VARCHAR 512 字段的表 我想让另一个表保存对第一个表的外键引用 两个表都使用 InnoDB 如果我向第二个表添加 VARCHAR 512 键并在其上添加外键约束 512 字节长的数据是否会保存两次 如果是这样
  • 处理ON INSERT触发器时,innodb表如何锁定?

    我有两个 innodb 表 articles id title sum votes 1 art 1 5 2 art 2 8 3 art 3 35 votes id article id vote 1 1 1 2 1 2 3 1 2 4 2
  • 无法从我的 java 应用程序访问 mysql 数据库(在 AWS 实例上运行)

    我有一个在 AWS EC2 Ubuntu 实例上运行的 xampp 服务器 并且那里有一个名为 androiddb 的数据库 我可以通过在导航器中写入来访问数据库http public ip phpmyadmin http public i
  • 复杂的sql树行

    表结构 id message reply id 1 help me 0 434 love to 1 852 didn t work 434 0110 try this 852 2200 this wont 0 5465 done 0110
  • 限制分页页数

    objConnect mysql connect localhost root or die mysql error objDB mysql select db Test strSQL SELECT FROM UserAddedRecord
  • 如何检查一个值是否已经存在以避免重复?

    我有一个 URL 表 但我不想要任何重复的 URL 如何使用 PHP MySQL 检查给定 URL 是否已在表中 如果您不想重复 可以执行以下操作 添加唯一性约束 use REPLACE http dev mysql com doc ref
  • PHP:如何检查总数。 URL 中的参数?

    我正在使用 REQUEST 检索参数 有没有办法找到总数 URL 中的参数 而不是检索每个参数然后进行计数 这将为您提供总数 分隔的 URL 查询参数 count explode SERVER QUERY STRING 如果您只想要唯一的参
  • Innodb页面大小设置

    在innodb中 页面大小默认为16kb 如何将页面大小设置为 8kb 是否有在源编译步骤中设置的选项 您不需要在源编译步骤中指定页面大小 MySQL 5 6 及更高版本支持不同的页面大小 无需重新编译 但是 您必须在初始化 InnoDB

随机推荐

  • 返回 false 不起作用

    我创建了一种带有动态创建复选框的表单 我使用了一个 j 查询脚本来检查天气用户是否选中了至少一个复选框 如果没有 那么它会发出错误消息警报 HTML 代码 print
  • android:应用程序不支持设备 - 为什么?

    我目前正在开发一个相机应用程序 现在 一位用户抱怨他的设备不受支持 它是宏碁A200 http www specsbox com 819 acer iconia a200 tablet html 我不明白为什么 android market
  • 如何从Qt调用evaluateJavaScript()函数?

    我无法从 QT 调用 javascript 函数 我正在使用下面的代码 QT代码 QWebFrame frame m d gt m webView gt page gt mainFrame frame gt evaluateJavaScri
  • Acumatica 实时动态下拉列表

    我有以下用例 Acumatica 组合框 下拉列表 可以有 8 个左右的值 其选择决定了用于在组合框 下拉列表中呈现的表 DAC e g 如果当前StatusProfileID WO1 和Status WCMP WCMP 是当前版本User
  • jQuery 选择器检查元素是否动画隐藏

    有没有办法判断一个元素是否被隐藏或当前正在隐藏 通过动画 我能想到的唯一方法是将标志存储在元素的data你打电话时show or hide 但我想知道是否还有其他方法 你能为它做一个自定义的 jQuery 选择器吗 function var
  • 可达性 - 奇怪的问题

    Reachability r Reachability reachabilityWithHostName www google com 这条线在设备上工作正常 但在模拟器上我崩溃了 由于未捕获的异常 NSInvalidArgumentExc
  • 如何在 jQuery 中读取绑定的悬停回调函数

    我使用 jQuery 为页面上的元素设置悬停回调 我现在正在编写一个模块 需要临时为某些元素设置新的悬停行为 新模块无法访问悬停功能的原始代码 我想在设置新的悬停功能之前存储旧的悬停功能 以便在完成临时悬停行为后可以恢复它们 我认为这些可以
  • 从 bash 在默认编辑器中打开文件

    如何使用 bash 打开使用默认 GUI 编辑器生成的脚本生成的文件 在 OS X 上有命令open 但据我所知 linux 上不存在 什么是好的跨平台替代方案 执行open somefile ext在 OS X 上 效果与我在 Finde
  • 无法在 ASP.NET 中纠正 VeraCode CWE ID 918 - (SSRF)

    长话短说 无论我如何尝试 VeraCode 都会继续将我的 8 行代码标记为 CWE 918 缺陷 这是旧代码 所以我不确定为什么它突然被标记 这是一个示例 offending 方法 其中标记行以粗体显示 public virtual as
  • ItemTouchHelper startSwipe 不起作用

    我尝试在适配器内使用 startSwipe 但似乎不起作用 奇怪的是 当我尝试用手指手动滑动它时 它起作用了 只是当我单击支架内的按钮时 startSwipe 不起作用 需要这方面的帮助 这是我调用 startSwipe 的地方 在 onC
  • Intellij+Springboot+Thymeleaf+gradle - 自动重新加载html资源

    我正在使用 IntelliJ Ultimate Spring Boot 和 Thymeleaf 我想启用 HTML 自动重新加载 而无需重新启动服务器 也无需使用 CTRL F9 我已经阅读了以下内容 我认为它应该有效 但事实并非如此 ht
  • 自定义适配器不显示任何项目

    这是先前问题的后续 ListView android 行中的 ImageButton 不工作 https stackoverflow com questions 29819256 imagebutton within row of list
  • Google 地图路线 API - 到达时间?

    我使用 Google Directions API 来计算两个地点之间所需的时间 API 给了我一个选择departure time 我可以在其中传递出发时间 或 现在 的时间戳 那么答案就是duration in traffic 这真的很
  • 使用 PyQT 逐帧加载 opencv 视频

    我正在尝试加载一个 mat 文件 具有被跟踪对象的位置坐标 并加载一个视频文件 为了加载视频文件 我使用 opencv 我制作了一个 GUI 来加载它们 一旦有人按下开始按钮 视频就会开始播放 暂停会停止播放 这是它的 GUI 这是我遇到的
  • 如何从 Perl 设置 Windows PATH 变量?

    我需要在 Perl 中设置环境变量 理想情况下 我需要查询一个变量 然后在不需要时更改它 具体来说 我要更改的是 PATH 变量 我如何获取和设置这些变量 如果您需要全局且永久地更改环境变量 就像在控制面板中设置它一样 那么您必须与注册表混
  • 捕获一个索引位置中的字符串并移动到 xml 文件中的另一个索引位置

    我是一名 Python 初学者 想要将现有的 xml 文件转换为 LaTeX 文档 xml 包含许多脚注 有时会被拆分 因为它们不适合原始文档 一本旧书 中的一页 并且 xml 文件的创建者希望布局尽可能接近原始文档 在分割的脚注之间有普通
  • git log 不显示提交,但 git log 显示编辑文件的提交

    我在寻找丢失的零钱时发现了这个奇怪的问题 我输入 git log httpd conf 我按照预期得到了一堆提交哈希 但不是我所做的 当我输入 git log 我看到了我所做的承诺 当我跑步时 git show
  • 安装最新版本的 jenkins 时出现问题

    在我的 Ubuntu 机器上 我尝试本地安装 jenkins 我已经遵循了这个指南 https wiki jenkins ci org display JENKINS Installing Jenkins on Ubuntu https w
  • 无法使用 add() 添加 jvmArgs,为什么?

    谁能解释为什么第一个示例有效而第二个示例不起作用 test jvmArgs Xdebug Xrunjdwp transport dt socket server y suspend y address 4000 test jvmArgs a
  • MySQL InnoDB auto_increment 值增加 2 而不是 1。 病毒?

    有一个 InnoDB 表 用于存储自定义构建的 Web 应用程序使用的博客文章的评论 最近我注意到评论的自动递增主键值增加了 2 而不是仅增加 1 我还注意到 在另一个用于记住最后几个评论者的足迹签名 例如 ip 会话 id uagent