首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用二进制文件的mysql批处理模式

问使用二进制文件的mysql批处理模式
EN

Stack Overflow用户
提问于 2012-07-25 03:05:13
回答 2查看 292关注 0票数 1

我只是想知道我们是否可以在批处理模式下执行二进制文件。我知道可以使用mysql < batch-file以批处理模式执行文本文件。

使用这种特性的一个可能的动机是,如果你正在从一个程序创建一个sql文件,那么你可能想要以二进制模式进行读/写,因为它很快。在mysql中有这样的方式存在吗,我只是好奇!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-25 03:35:37

您可能希望尝试使用mysqldump的--hex-blob选项来创建纯文本的转储文件。通常,您将执行以下操作:

代码语言:javascript
复制
mysqldump --hex-blob ... | gzip -9 > backup.sql.gz

稍后,您将恢复:

代码语言:javascript
复制
gunzip -dc backup.sql.gz | mysql ...

在这两种情况下,...都表示连接到数据库所需的命令行选项。

这不是在大型数据库中加载的最有效的方法,但它在实践中工作得很好。

票数 1
EN

Stack Overflow用户

发布于 2012-07-25 03:25:00

mysql生成二进制日志,通常用于复制。您可以生成一个假的复制日志,并说服mysql加载它,尽管这很麻烦。通常使用mysqlbinlog将复制日志加载到mysql中:

代码语言:javascript
复制
mysqlbinlog replication_log | mysql

其在执行二进制复制日志之前将其转换为文本文件。

请注意,执行sql几乎肯定比解析它慢得多,尤其是在生成sql时。所以你几乎肯定是在优化错误的东西。

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

https://stackoverflow.com/questions/11637620

复制
相关文章

相似问题

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