gpt4 book ai didi

mysql - 如何打开和使用在转储中生成的非常大的 .SQL 文件?

转载 作者:行者123 更新时间:2023-11-29 01:34:42 24 4
gpt4 key购买 nike

我有一个非常大的 .SQL 文件,有 90 GB

它是通过服务器上的转储生成的:

mysqldump -u root -p siafi > /home/user_1/siafi.sql

我在装有 Ubuntu 16.04 和 MySQL Community Server (8.0.16) 的计算机上下载了这个 .SQL 文件。它有 8GB 的​​内存

所以我在终端中执行了这些步骤:

# Access
/usr/bin/mysql -u root -p

# I create a database with the same name to receive the .SQL information
CREATE DATABASE siafi;

# I establish the privileges. User reinaldo
GRANT ALL PRIVILEGES ON siafi.* to reinaldo@localhost;

# Enable the changes
FLUSH PRIVILEGES;

# Then I open another terminal and type command for the created database to receive the data from the .SQL file
mysql --user=reinaldo --password="type_here" --database=siafi < /home/reinaldo/Documentos/Code/test/siafi.sql

我用其他 .SQL 文件键入了这些相同的命令,只有较小的文件,最大为 2GB。并且工作正常

但是这个 90GB 的文件正在不停地处理超过 12 个小时。不知道有没有效果

请问,有没有更有效的方法来做到这一点?也许拆分 .SQL 文件?

最佳答案

将文件分成更小的 block 并分别处理它们。

您可能正在达到日志记录的高水位线,而 mysql 正在尝试回滚所有内容,这是一个缓慢的过程。

将文件拆分成大约 1Gb 的 block ,按整行拆分。也许使用:

split -l 1000000 bigfile.sql part.

然后使用您当前的命令按顺序运行它们。

您必须尝试使用​​ split 来获得正确的大小,并且您还没有说明您的操作系统是什么,并且 split 实现/选项各不相同。 split --number=100 为你工作。

关于mysql - 如何打开和使用在转储中生成的非常大的 .SQL 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57074839/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com