首页 > 数据库 >mysqldump实现通配符匹配表名的导出

mysqldump实现通配符匹配表名的导出

时间:2024-01-11 11:56:41浏览次数:48  
标签:通配符 导出 sys entrypoint mysqldump 库名 表名

接到个需求,导出一个数据库所有表格结构,不要数据,但是 sys_ 开头的表要数据

mysqldump是不支持通配符导出的,经过一番研究还是实现了

1.mysqldump只导出全量表结构

mysqldump -uroot -p'密码' -d 库名 > /docker-entrypoint-initdb.d/库名.sql

 

2.mysqldump导出部分表

#导出所有的sys_开头的表名到文件
mysql -uroot -p'密码' -N information_schema -e "select table_name from tables where TABLE_schema='库名' and table_name like 'sys_%' " > /docker-entrypoint-initdb.d/tbs.txt
#读取文件表名并通过mysqldump导出
 cat /docker-entrypoint-initdb.d/tbs.txt|xargs mysqldump -uroot -p'密码'  库名  > /docker-entrypoint-initdb.d/库名_sys.sql

 

3.导入数据

由于sql文件自带DROP TABLE IF EXISTS 所以只用先导入全量表结构,再导入sys表数据即可

 

参考文档:https://blog.csdn.net/oddrock/article/details/130044864

标签:通配符,导出,sys,entrypoint,mysqldump,库名,表名
From: https://www.cnblogs.com/allay/p/17958232

相关文章

  • 如何正确使用CSS选择器通配符
    Laravel是一个流行的PHP框架,它具有出色的可测试性,可以帮助开发人员在更短的时间内编写可靠的代码。但是,即使使用了这个框架,也可能会出现测试覆盖率较低的情况。测试覆盖率是指代码中已由测试案例覆盖的部分比例。测试覆盖率越高,代码质量越高。在本文中,我们将分享几种技巧,帮助您提......
  • 基于各种场景使用mysqldump逻辑备份数据库
    1.mysqldump备份工具的语法格式mysqldump的使用语法:备份指定数据库mysqldump选项数据库备份指定数据库下的某张表mysqldump选项数据库表备份多个数据库mysqldump选项--database/-B数据库1数据库2备份所有数据库mysqldump选项--all-databases/-......
  • 无涯教程-Java泛型 - 无界通配符
    问号(?)代表通配符,代表泛型中的未知类型。有时可以使用对象类中提供的功能来实现方法,或者代码独立于type参数时,可以使用任何对象。下面的示例说明如何使用扩展来指定无界通配符。packagecom.learnfk;importjava.util.Arrays;importjava.util.List;publicclassGeneric......
  • 无涯教程-Java泛型 - 上界通配符
    问号(?)代表通配符,代表泛型中的未知类型。有时您可能想限制传递给类型参数的种类。如,对数字进行操作的方法可能只希望接受Number或其子类。要声明一个上限的通配符参数,需要使用“?”,其次是extends关键字,然后是其上限。以下示例说明了如何使用extends来指定上限通配符。packag......
  • MongoDB 通配符索引 (wildcard index) 的利与弊
    MongoDB支持在单个字段或多个字段上创建索引,以提高查询性能。MongoDB支持灵活的模式,这意味着文档字段名在集合中可能会有所不同。使用通配符索引可支持针对任意或未知字段的查询。·一个集合中可以创建多个通配符索引·通配符索引可以覆盖与集合中其他索引相同的字段·通配符......
  • mysql设计表名称要不要加表前缀
    在MySQL中设计表时,是否添加表前缀主要取决于你的具体需求和设计考虑。以下是一些关于是否使用表前缀的考虑因素:1,避免表名冲突:如果你的应用程序要与其他应用程序或系统共享数据库,或者你预计将来会有多个应用程序或系统使用同一个数据库,使用表前缀可以帮助避免表名冲突。例如,你......
  • MySQL导入导出 —— mysqldump 简介及常见用法
    一、导出导出用户需要有导出对象的权限,例如导出表要有select权限、导出视图要有showview权限、导出触发器要有trigger权限、需要锁表时要有locktables权限等。如果dump文件中包含了GTID信息,则无法导入到未启用GTID的数据库(低于5.6.9版本的数据库不支持GTID,因此也无法导入到这......
  • insert into 表名 set
    #insertinto表名setCREATETABLE`tbl_str`(`id`INTDEFAULTNULL,`Str`VARCHAR(30)DEFAULTNULL)##批量INSERTINTO`mytest`.`tbl_str`(`id`,`Str`)VALUE('1','helloworld'),('2','mysqlstring'),......
  • Leetcode 044. 通配符匹配
    https://leetcode.cn/problems/wildcard-matching/description/给你一个输入字符串(s)和一个字符模式(p),请你实现一个支持'?'和'*'匹配规则的通配符匹配:'?'可以匹配任何单个字符。'*'可以匹配任意字符序列(包括空字符序列)。判定匹配成功的充要条件是:字符模式必须能够......
  • easyexcel只通过表名来动态查询并动态导出数据
    EasyExcel动态表头即动态数据生成1️⃣业务需求需要将数据库中的所有表放在一个下拉框中,下拉框支持模糊查询到相关的表,然后通过这个表名查询到数据库的数据,切换不同的表查询出来相关表的列和数据需要注意的点:1)js实现模糊搜索   2)导出的表头和数据都是动态生......