当前位置: 首页 > article >正文

pt-archiver删除数据库的数据表/各种报错类型

这篇帖子是前面文的一部分延申

mysqlimport导入一亿数据的csv文件/一行命令删除表-CSDN博客

如需转载,标记出处

目录

pt-archiver命令格式

如果执行后出现下面报错

1)Cannot find an ascendable index in table at /usr/bin/pt-archiver line 3233.

2)ERROR 1030 (HY000): Got error 100 - 'InnoDB error' from storage engine或者ERROR 3 (HY000): Error writing file '/tmp/MLfd=35' (OS errno 28 - No space left on device)

3)DBD::mysql::st execute failed: Incorrect TIMESTAMP value: '0000-00-00 00:00:00' [for Statement "SELECT /*!40001 SQL_NO_CACHE */ `userid`,`itemid`,`categoryid`,`timestamp` FROM `uba`.`userBehavior` FORCE INDEX(`idx_userid`) WHERE (timestamp != '0000-00-00 00:00:00') ORDER BY `userid` LIMIT 1000"] at /usr/bin/pt-archiver line 6586.

4)文件系统根目录上的磁盘空间不足

5)ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

报错原因

解决方法


这个删除好慢要等挺久的,如果要数据表里的数据全删,直接用就好了

TRUNCATE TABLE LargeTableGO

pt-archiver命令格式

 先下载一个pt-archiver,时间太久忘记原来的命令了,复制黏贴下面的命令他会提示你安装命令

pt-archiver --source h=127.0.0.1,D=uba,t=userBehavior \
> --purge --limit 10000 --commit-each --no-check-charset \
> --where "timestamp = '0000-00-00 00:00:00'" \
> --user root --password 'root'

解释:

  • --source h=127.0.0.1,D=uba,t=userBehavior:指定 MySQL 数据库连接的主机(127.0.0.1),数据库名(uba)以及表名(userBehavior)。
  • --purge:在删除数据后,直接从数据库中删除这些记录,而不是将其转移到其他地方。
  • --limit 10000:控制每次处理的记录数,增加它的值可以减少操作次数
  • --commit-each:每删除一批数据(1000条),就立即提交事务,确保数据删除不会因为其他问题导致回滚。
  • -no-check-charset 跳过字符集检查,减少不必要开销
  • --where "timestamp = '0000-00-00 00:00:00'":仅删除 timestamp 等于 '0000-00-00 00:00:00' 的记录
  • --user root --password 'root':使用用户名 root 和密码 'root' 进行 MySQL 连接。

整体来说,这条命令的目的是从 userBehavior 表中按批次删除数据,每次删除最多 1000 条记录,且仅删除 timestamp 字段为 '0000-00-00 00:00:00' 的记录。

如果执行后出现下面报错

1)Cannot find an ascendable index in table at /usr/bin/pt-archiver line 3233.

说明没创建索引

其中id_userID下划线后面的userID一定要和表中的列名保持一致,大小写也一样

CREATE INDEX idx_userID ON userBehavior(userID);

2)ERROR 1030 (HY000): Got error 100 - 'InnoDB error' from storage engine或者ERROR 3 (HY000): Error writing file '/tmp/MLfd=35' (OS errno 28 - No space left on device)

这俩表明存储不够,将存储目录tmpdir 移动到更大的分区

1.显示数据库服务器的临时目录路径。

SHOW VARIABLES LIKE 'tmpdir';


#创建新的 tmpdir 目录sudo mkdir -p /mnt/mysqltmp
sudo chown -R mysql:mysql /mnt/mysqltmp
sudo chmod 1777 /mnt/mysqltmp  # 确保目录对 MySQL 具有正确权限#修改 MySQL 配置 编辑 MySQL 配置文件(通常是 /etc/mysql/my.cnf 或 /etc/my.cnf)
#Ubuntu/Debian: /etc/mysql/my.cnf 是主配置文件
#CentOS/RHEL: /etc/my.cnf 是默认的主配置文件[mysqld]
tmpdir=/mnt/mysqltmp#重启 MySQL 以使更改生效sudo systemctl restart mysql
--sql里面验证是否生效 执行:SHOW VARIABLES LIKE 'tmpdir';

如果你的mnt也满了,换更大空间的目录,我自己用/dev/shm/mysqltmp成功的

成功了!!


3)DBD::mysql::st execute failed: Incorrect TIMESTAMP value: '0000-00-00 00:00:00' [for Statement "SELECT /*!40001 SQL_NO_CACHE */ `userid`,`itemid`,`categoryid`,`timestamp` FROM `uba`.`userBehavior` FORCE INDEX(`idx_userid`) WHERE (timestamp != '0000-00-00 00:00:00') ORDER BY `userid` LIMIT 1000"] at /usr/bin/pt-archiver line 6586.

表明时间戳出错

解决办法

关掉严格模式(临时性解决)

-- 临时禁用严格模式
SET GLOBAL sql_mode = '';-- 恢复严格模式
SET GLOBAL sql_mode = 'STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';

4)文件系统根目录上的磁盘空间不足

我自己的虚拟机已经扩充过一次,直接去看教程吧

【2023年全新保姆级教程】解决Ubuntu文件系统磁盘空间不足low disk space on filesystem root-CSDN博客

5)ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

报错原因

这个报错大部分情况下是配置文件和sock文件的问题。今天下午按照常规处理实在没辙了,直接返回之前的快照。现在晚上又遇到它了,冤家路窄,结果我搞定了

数据库存储的太多,日志文件满了

比如我的

解决方法

这个问题有点普遍,我单开了一篇

如何安全清理无用以释放磁盘空间(开源+节流)-CSDN博客

相关文章:

pt-archiver删除数据库的数据表/各种报错类型

这篇帖子是前面文的一部分延申 mysqlimport导入一亿数据的csv文件/一行命令删除表-CSDN博客 如需转载,标记出处 目录 pt-archiver命令格式 如果执行后出现下面报错 1)Cannot find an ascendable index in table at /usr/bin/pt-archiver line 3233. …...

LLM 学习(一 序言)

文章目录 LLM 学习(一 序言)知识点1:“Embedding” 在人工智能领域:知识点2:Embedding 引入位置信息的原因知识点3:在 Transformer 的 Decoder 翻译第 i 个单词时进行 Mask 第 i1 个单词的操作 LLM 学习&am…...

STM32-HAL库初始化时钟

使能和失能外设GPIOA 时钟信号初始化函数 HAL_RCC_OscConfig函数: HAL_StatusTypeDef是该函数的返回值类型,最顶上的那句话只是这个函数的原型 HAL_RCC_ClockConfig函数: 因为FLASH实际上只能支持24MHz的时钟信号所以如果用高于24MHz的信号输入则要用到等…...

MySQL主从架构配合ShardingJdbc实现读写分离

文章目录 目录架构搭建读写分离pom.xmlfdy-live-user-provider 模块application.ymlfdy-db-sharding.yamlShardingJdbcDatasourceAutoInitConnectionConfig.java 目录 架构搭建 基于Docker去创建MySQL的主从架构 读写分离 pom.xml <dependency><groupId>mysql…...

批量将 Word 拆分成多个文件

当一个 Word 文档太大的时候&#xff0c;我们通常会将一个大的 Word 文档拆分成多个小的 Word 文档&#xff0c;在 Office 中拆分 Word 文档是比较麻烦的&#xff0c;我们需要将 Word 文档的页面复制到另外一个 Word 文档中去&#xff0c;然后删除原 Word 文档中的内容。当然也…...

【算法系列】桶排序算法介绍及实现

文章目录 桶排序算法介绍及实现桶排序的基本原理算法实现步骤Java代码实现性能优化结论 桶排序算法介绍及实现 桶排序的基本原理 桶排序&#xff08;Bucket Sort&#xff09;是一种基于分组的排序算法&#xff0c;其核心思想是将一组数据按某种 规则分配到多个桶中&#xff0…...

当AI开始“思考“:拆解大模型训练与推理的秘密(以DeepSeek为例)

如果你用过deepseek&#xff0c;可能体验过它在几秒内编故事、写代码的震撼。但你是否想过&#xff0c;这种"智能输出"背后存在两种完全不同的底层机制&#xff1f;就像人类需要先学习知识&#xff08;训练&#xff09;才能考试答题&#xff08;推理&#xff09;&…...

13.数据结构(软考)

13.数据结构&#xff08;软考&#xff09; 13.1:线性表 13.1.1 顺序表 顺序存储方式:数组的内存是连续分配的并且是静态分配的&#xff0c;即在使用数组之前需要分配固定大小的空间。 时间复杂度&#xff1a; 读&#xff1a;O(1) 查询&#xff1a;1&#xff0c;(n1)/2&#x…...

拉拉扯扯adfda

read -p "请输入一个成绩&#xff1a;" sorce if [ "$sorce" -ge 90 -a "$sorce" -le 100 ] thenecho A elif [ "$sorce" -ge 80 -a "$sorce" -lt 90 ] thenecho B elif [ "$sorce" -ge 70 -a "$sorce"…...

【计算机网络】TCP

1.基本概念及报文格式 基本概念&#xff1a; TCP的中文全称为传输控制协议&#xff08;Transmission Control Protocol&#xff09;&#xff0c;是一种可靠的&#xff0c;面向连接的&#xff0c;基于字节流的传输层通信协议。 报文格式&#xff1a; 序号 &#xff1a;占32⽐…...

doris: PostgreSQL

Doris JDBC Catalog 支持通过标准 JDBC 接口连接 PostgreSQL 数据库。本文档介绍如何配置 PostgreSQL 数据库连接。 使用须知​ 要连接到 PostgreSQL 数据库&#xff0c;您需要 PostgreSQL 11.x 或更高版本 PostgreSQL 数据库的 JDBC 驱动程序&#xff0c;您可以从 Maven 仓…...

深度学习笔记——神经网络

本文为在拓尔思智能举办的训练营中学习内容的总结&#xff0c;部分内容摘自百度百科 个人在这里推荐一个好用的软件&#xff0c;Trae&#xff0c;主要是免费。 人工神经元是人工神经网络的基本单元。模拟生物神经元&#xff0c;人工神经元有1个或者多个输入&#xff08;模拟多…...

django中路由配置规则的详细说明

在 Django 中,路由配置是将 URL 映射到视图函数或类视图的关键步骤,它决定了用户请求的 URL 会触发哪个视图进行处理。以下将详细介绍 Django 中路由配置的规则、高级使用方法以及多个应用配置的规则。 基本路由配置规则 1. 项目级路由配置 在 Django 项目中,根路由配置文…...

关于tomcat使用中浏览器打开index.jsp后中文显示不正常是乱码,但英文正常的问题

如果是jsp文件就在首行加 “<% page language"java" contentType"text/html; charsetUTF-8" pageEncoding"UTF-8" %>” 如果是html文件 在head标签加入&#xff1a; <meta charset"UTF-8"> 以jsp为例子&#xff0c;我们…...

pytest结合allure

Allure 一、文档二、指令三、装饰器3.1 allure.step装饰器3.2 allure.description装饰器3.3 allure.title装饰器3.4 allure.link、allure.issue 和 allure.testcase装饰器3.5 allure.epic、allure.feature 和 allure.story装饰器3.6 allure.severity装饰器 一、文档 allure文档…...

机器学习在地图制图学中的应用

原文链接&#xff1a;https://www.tandfonline.com/doi/full/10.1080/15230406.2023.2295948#abstract CSDN/2025/Machine learning in cartography.pdf at main keykeywu2048/CSDN GitHub 核心内容 本文是《制图学与地理信息科学》特刊的扩展评论&#xff0c;系统探讨了机…...

vue2升vue3,uniapp兼容鸿蒙app踩坑记录

前提&#xff1a;最近鸿蒙势头很好&#xff0c;公司的 uniapp vue2 项目&#xff0c;要兼容鸿蒙app。就开始了我的uniapp转鸿蒙踩坑之旅&#xff0c;请看下文&#xff08;注意下文都是在uniapp开发基础上&#xff09; 1. 首先鸿蒙开发只支持Vue3&#xff0c;不支持Vue2、不支持…...

Linux基础网络设置

文章目录 Linux基础网络设置介绍查看和配置网络接口查看活动网络接口信息临时修改网卡IP地址永久修改IP地址启用和关闭网卡 主机名设置查看和临时修改主机名永久修改主机名 路由表设置查看路由表信息 网络连接状态和接口统计信息查看网络连接状态 网络连通性测试测试网络连通性…...

DeepSeek × 豆包深度整合指南:工作流全解析

DeepSeek 豆包深度整合指南&#xff1a;工作流全解析 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;可以分享一下给大家。点击跳转到网站。 https://www.captainbed.cn/ccc 文章目录 DeepSeek 豆包深度整合指南&#xff1a;工…...

海思Hi3516DV300交叉编译opencv

OpenCV是一个开源的跨平台计算机视觉库&#xff0c;支持C、Python等多种语言&#xff0c;适用于图像处理、目标检测、机器学习等任务。其核心由C编写&#xff0c;高效轻量&#xff0c;提供实时视觉处理功能&#xff0c;广泛应用于工业自动化、医疗影像等领域。 1 环境准备 1…...

【AI赋能】AI 工具生成视频教材:从创意到成品的全流程指南

AI 工具生成视频教材&#xff1a;从创意到成品的全流程指南 目标 通过本教材&#xff0c;您将学会如何利用 AI 工具&#xff08;Grok、Sora、Speechify 和 CapCut&#xff09;生成一个完整的视频&#xff0c;包括脚本生成、视频片段制作、字幕添加、音频生成以及最终剪辑合成…...

[FE] React 初窥门径(五):React 组件的加载过程(commit 阶段)

1. 回顾 前一篇文章我们看到&#xff0c;ReactDOM.render 总共包含这些步骤&#xff0c; 然后介绍了 performSyncWorkOnRoot 做的事情&#xff0c;它主要做了两件事&#xff0c; renderRootSync 可称之为 render 阶段&#xff1a;创建了一颗 Fiber Tree&#xff08;包含 html …...

Linux(Centos 7.6)命令详解:vim

1.命令作用 vi/vim 是Linux 系统内置不可或缺的文本编辑命令&#xff0c;vim 是vi 的加强版本&#xff0c;兼容vi 的所有指令&#xff0c;不仅能编辑文本&#xff0c;而且还具有shell 程序编辑的功能&#xff0c;可以不同颜色的字体来辨别语法的正确性。 2.命令语法 usage: …...

Kubernetes Pod网络组件解析与选型指南

前言 在Kubernetes集群中&#xff0c;Pod网络插件是支撑容器间通信的核心基础设施。它决定了Pod如何跨节点互联、如何与外部服务交互&#xff0c;甚至如何实现网络安全策略。本文将从技术原理、主流方案对比到选型实践&#xff0c;全方位解析Pod网络组件的设计哲学与落地策略。…...

java环境部署

java环境部署 一、准备工作 jrejdkeclipse jdk下载&#xff1a;21和1.8-----官网&#xff1a;Oracle&#xff1a;Java 下载 |神谕 该处选择要依据自身的系统类型选择下载 idea的下载安装&#xff1a;IntelliJ IDEA | Other Versions 二、安装 三、环境配置 四、使用 五、i…...

100天精通Python(爬虫篇)——第115天:爬虫在线小工具_Curl转python爬虫代码工具(快速构建初始爬虫代码)

文章目录 一、curl是什么&#xff1f;二、爬虫在线小工具&#xff08;牛逼puls&#xff09;三、实战操作 一、curl是什么&#xff1f; 基本概念&#xff1a;curl 支持多种协议&#xff0c;如 HTTP、HTTPS、FTP、SFTP 等&#xff0c;可用于从服务器获取数据或向服务器发送数据&a…...

查看k8s集群的资源使用情况

查看Kubernetes&#xff08;k8s&#xff09;集群的资源使用情况有多种方法&#xff0c;以下是一些常见的方式&#xff1a; 使用kubectl命令行工具 查看节点资源使用情况 kubectl top nodes命令可以显示集群中各个节点的CPU和内存使用情况。例如&#xff1a; NAME …...

【渗透测试】基于时间的盲注(Time-Based Blind SQL Injection)

发生ERROR日志告警 查看系统日志如下&#xff1a; java.lang.IllegalArgumentException: Illegal character in query at index 203: https://api.weixin.qq.com/sns/jscode2session?access_token90_Vap5zo5UTJS4jbuvneMkyS1LHwHAgrofaX8bnIfW8EHXA71IRZwsqzJam9bo1m3zRcSrb…...

Electron应用中获取设备唯一ID和系统信息

让我创建一篇关于如何在Electron应用中获取设备唯一ID和系统信息&#xff0c;并在登录时使用这些信息的博客文章。我将确保步骤明确、条理清晰&#xff0c;适合初学者和有经验的开发者。 这篇博客应包含以下部分&#xff1a; 介绍 - 为什么需要获取设备信息前提条件和安装依赖…...

python-leetcode-解决智力问题

2140. 解决智力问题 - 力扣&#xff08;LeetCode&#xff09; 这道题是一个典型的 动态规划&#xff08;Dynamic Programming, DP&#xff09; 问题&#xff0c;可以使用 自底向上 的方式解决。 思路 定义状态&#xff1a; 设 dp[i] 表示从第 i 题开始&#xff0c;能获得的最高…...