您好,匿名用户
随意问技术百科期待您的加入

为什么mysql 用命令行导出同一个数据库sql脚本和用客户端导出sql脚本的大小不一样呢?

0 投票

今天在本机上测试时发现:
mysql -u root xx > xx/xxx/xx.sql
与mysql客户端工具导出的sql文件大小不一样。
这个是为什么呢?是不是用命令的时候少了一些不必要的数据库信息呢?会不会造成我的脚本数据不正确呢?

用户头像 提问 2012年 12月1日 @ Caitlyn 上等兵 (452 威望)
分享到:

1个回答

0 投票

mysqldump 有个 --extended-insert 参数
会影响插入数据的脚本:


当 --extended-insert = false时,结果为:

INSERT INTOtable(col,col1,col2) VALUES (1,2,3);
INSERT INTOtable(col,col1,col2) VALUES (4,5,6);
INSERT INTOtable(col,col1,col2) VALUES (7,8,9);

----------------------------------------------------------

当 --extended-insert =true时,结果为:

INSERT INTOtable(col,col1,col2) VALUES
(1,2,3),(4,5,6),(7,8,9);

-----------------------------------------------------------

这两种结果一样,但是文件大小差别很大,我建议使用 --extended-insert = false,

使用 --extended-insert =true能提高插入效率,但是可能会受到 max_allowed_packet 参数的影响而导致插入失败。

用户头像 回复 2012年 12月1日 @ Brand 上等兵 (185 威望)
编辑 2012年 12月3日 @Saber
提一个问题:

相关问题

0 投票
1 回复 31 阅读
0 投票
1 回复 32 阅读
用户头像 提问 2012年 12月1日 @ Rengar 上等兵 (236 威望)
0 投票
1 回复 35 阅读
用户头像 提问 2013年 11月10日 @ Redis 上等兵 (114 威望)
0 投票
1 回复 249 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...