首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何生成包含代码的注释,如mysqldump?

问如何生成包含代码的注释,如mysqldump?
EN

Database Administration用户
提问于 2015-11-17 07:44:52
回答 1查看 639关注 0票数 2

我需要在Python中复制mysqldump命令,并且我试图弄清楚如何自动生成类似mysqldump生成的代码注释。

如果您想知道我为什么要做这么愚蠢的事情,那是因为我正在创建一个实用程序,它将生成生产服务器的每日转储,以便在dev环境中使用,但是我必须匿名所有在转储过程中包含私有数据的字段。它还将更改API密钥以测试帐户、更改重要用户帐户的密码等(显然,这不是我们的主要备份系统,而是专门为devs所用的东西,以便它们始终可以使用生产数据库的安全快照来使用)。

我已经能够完成很多工作,但是我不知道如何自动生成mysqldump在CREATE语句和INSERT语句之前/之后包含的正确的“代码注释”(例如,"/*!40101 SET @saved_cs_client = @@character_set_client */;")。显然,我可以对它们进行硬编码,但这感觉是错误的,而且在代码的可移植性和使用寿命方面可能是短视的。

谢谢你能分享的任何想法!

EN

回答 1

Database Administration用户

发布于 2015-11-17 08:05:28

好吧,你可以复习一下什么mysqldump在git上的作用并试着去做!!虽然我不会走这条路。

有几件事可以说明:

  • 你想隐藏列名

->使用--不创建-信息只转储数据.(onlydata.sql)

->为dev server准备并完好无损地准备标准表定义。(definition.sql)

-->刷新dev => load definition.sql,然后刷新onlydata.sql

  • 请注意,您还可以使用--where子句限制datadump,甚至将其限制为只转储几行。

mysqldump --no-create-info --where " true limit 10000" | gzip > dump.sql.gz

。

  • 您想从转储中移除几个值吗?好的,用于搜索字符串的编写工具将再次导致长时间的解析!

->您可以考虑设置一个特殊的奴隶,对其进行更改,然后执行完整的数据转换。

->您可以准备好SQL命令,以便在转储加载完成后运行,如下所示:update secrettable set secretcolumn='xxxxxx' where secretcolumn='reallysecretthing';

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

https://dba.stackexchange.com/questions/121306

复制
相关文章

相似问题

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