首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysqlsh转储和加载完整模式

mysqlsh转储和加载完整模式
EN

Stack Overflow用户
提问于 2022-08-20 21:53:51
回答 1查看 300关注 0票数 1

我想使用mysqlsh执行以下操作:

mysqldump -R DATABASE > DATABASE.sql)

  • Load

  • 将给定数据库的完整模式(不仅仅是表,而是函数、触发器、与此数据库模式相关的所有内容)转储到我刚刚创建的全新数据库中(类似于mysql --database=NEWDATABASE < DATABASE.sql)

)。

当我运行mysqlsh --execute 'util.dumpTables("DATABASE", [], "SQL/DATABASE", {all:true});'时,它当然只是转储表,并且可以使用这个命令mysqlsh --database=NEWDATABASE --execute 'util.loadDump("SQL/DATABASE", {schema: 'NEWDATABASE', ignoreVersion:true,resetProgress:true});轻松地导入到一个全新的数据库中。问题是它缺少函数和存储过程。

然后我尝试了mysqlsh --execute 'util.dumpSchemas(["DATABASE"], "DATABASE");',然后用mysqlsh --database=NEWDATABASE --execute 'util.loadDump("DATABASE", {dryRun: true, ignoreVersion:true});'将它加载到一个新的DB中,但是我立即注意到它试图加载到原始数据库,而不是我的新数据库。那么,如何将其加载到一个新的数据库中,一个名称完全不同的数据库呢?

如果您想知道,我正在尝试学习如何为我的用例最大化mysqlsh。因此,在这种情况下,旧的mysqldump不是一个选项。

EN

回答 1

Stack Overflow用户

发布于 2022-08-20 22:41:20

我认为,在尝试加载.sql文件之前,您只需使用文本编辑器编辑它。

这个工具实际上是用于转储模式并将它们导入到不同的MySQL实例,但保持模式名称不变。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73430362

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档