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

MySQL导出数据库中每个表前 3000 条数据

以下是一个 Bash 脚本,它会连接到 MySQL 数据库,获取所有表名,并对每个表导出前 3000 条数据:

#!/bin/bashUSERNAME="citycard"
PASSWORD="密码"
DATABASE="citycard"
LIMIT=3000# 导出数据库结构
mysqldump -u $USERNAME -p$PASSWORD --no-data $DATABASE > citycard_structure.sql# 获取所有表名并导出每个表的前3000条数据
TABLES=$(mysql -u $USERNAME -p$PASSWORD -D $DATABASE -e 'SHOW TABLES;' | awk '{ print $1}' | grep -v '^Tables' )for TABLE in $TABLES
doecho "导出表 $TABLE 的数据..."mysqldump -u $USERNAME -p$PASSWORD --where="1 LIMIT $LIMIT" $DATABASE $TABLE >> citycard_data.sql
doneecho "导出完成。"

这个脚本首先导出了数据库的结构,然后使用 mysql 命令来获取数据库中的所有表名,存储到变量 TABLES 中。之后,它遍历这个变量中的每个表名,并使用 mysqldump 导出每个表的前 3000 条数据。

安全提示:这个脚本在命令行中包含了明文密码,这可能会导致安全问题。一个更好的做法是移除 -p$PASSWORD 部分,mysqldumpmysql 命令将提示你输入密码。另外,请在一个安全的环境中测试这个脚本,以确保它按预期工作,同时不要在有安全风险的公共或不安全的系统上留下密码。

在运行脚本之前,请确保你有权限访问服务器和数据库,而且当前用户具有执行脚本的权限。如果你使用的是一个图形界面的 FTP 或 SSH 工具,你可以通过工具的上传功能来上传这个脚本文件到服务器上。然后,通过 SSH 连接到服务器,给脚本文件赋予执行权限:

chmod +x script_name.sh

然后执行脚本:

./script_name.sh

请记得替换 script_name.sh 为你的脚本文件名。

http://www.lryc.cn/news/246937.html

相关文章:

  • Spring事件注解@EventListener【观察】
  • 玩转Spring中强大的spel表达式!
  • HTTPS攻击原理 被攻击该如何防护
  • 【.NET Core】委托(Delegate)应用详解
  • 【LeetCode:1457. 二叉树中的伪回文路径 | 二叉树 + DFS +回文数】
  • 《golang设计模式》第三部分·行为型模式-06-备忘录模式(Memento)
  • Cache学习(4):Cache分配策略Cache更新策略Cache逐出策略
  • 角色管理--产品经理岗
  • SQL数据迁移实战:从产品层级信息到AB测试表
  • VMware系列:VMware安装Android虚拟机
  • 链接1:编译器驱动程序
  • 经典滑动窗口试题(二)
  • easyexcel指定sheet页动态给行列加背景色
  • 设计模式在实际业务中应用 - 模版方法
  • BGP综合实验
  • Global Surface Summary of the Day 全球逐日气象站点数据 GSOD数据集
  • Harmony OS4开发入门
  • .net core 事务
  • 【Python】python天气数据抓取与数据分析(源码+论文)【独一无二】
  • MPPT工作流程及算法和硬件的选择
  • C#,《小白学程序》第十九课:随机数(Random)第六,随机生成任意长度的大数(BigInteger)
  • 每日一练【移动零】
  • QT修改windowTitle的名字以及图片
  • C语言-指针讲解(3)
  • 慢 SQL 分析及优化
  • PTA:计算m到n之间所有素数的和
  • Golang实现YOLO:高性能目标检测算法
  • 文档 + 模型
  • 计算机毕业设计php+bootstrap小区物业管理系统
  • Osg线程模型(选择不当,会引发崩溃)