Mysql 导入缓慢

Mysql 导入缓慢

我导入了一个数据库,当我运行 mytop 时,只看到一个线程在运行插入操作。对于 80GB 的大数据库,这将花费很长时间。是否有任何工具或选项可以增加线程数?

答案1

并行转储/加载的最佳选择是我的转储程序. 由精通其领域的人撰写。

这与主题无关,但顺便说一句,innotop 是一个比 mytop 功能更强大的工具。

答案2

你可以尝试 Maatkit 并行倾倒恢复工具。

Maatkit 工具被纳入Percona 工具包但是我找不到这两个工具在文档中

您可能看不到速度的提高,具体取决于磁盘的配置方式。有些人已经看到了一些显著改进

答案3

您可以尝试将 my.cnf 中的 key_buffer_size 变量的值增加到可用 RAM 的 20-25%。它通常设置得相当低,增加它将允许更快的导入/转储速度。更多信息请访问: http://www.notesbit.com/index.php/web-mysql/mysql/mysql-tuning-optimizing-my-cnf-file/

我的知识有限,没有涉及多线程,所以我无法帮助你。

答案4

您也可以将 /var/lib/mysql 文件夹 rsync 到任何其他机器。最好的情况是,如果您有一个从属服务器正在运行。此时,您可以停止并关闭 mysql 服务。这样,/var/lib/mysql 下的文件就不会被更改。

rsync -avhzr ssh user@yourmachine:/var/lib/mysql .

这样,我就可以在 20 分钟内导入我的 40G 数据库,这取决于您的互联网带宽。

相关内容