2010-10-01 53 views

回答

0

这不是漂亮(因为它只是分裂的大小,而不是对什么是逻辑上的文件中),但你可以使用UNIX分割工具来实现这一点:

mysqldump mydb | split -b 100m mydbbackup 

确保检查手册页对于拆分,您的副本可能会或可能不会接受100米大小的参数。有些需要以字节指定大小。

当您从文件中恢复时,您必须使用cat将它们全部重新组合在一起。

cat mydbbackup.1 mydbbackup.2 mydbbackup.3 | mysql 
+0

对不起,这不是我说的。我拥有的是250 MB文件,旧的主机上不再存在旧的数据库。我们有一个新的主机,限制为100 MB,所以我需要多个较小的文件,并从一个250 MB的文件创建它们...现在不能对mysqldump执行任何操作...除非在本地导入它,没有限制,然后做一个mysqldump ...但cat'ing将无法正常工作。 – 2010-10-01 17:10:14

+1

@BrianTHannan您可以使用以下命令分割文件: 'split -l 5000 ./path/to/mysqldump.sql ./ mysqldump/dbpart -' 请参阅[http:// www。webmaster-source.com/2011/09/26/how-to-import-a-very-large-sql-dump-with-phpmyadmin/] – Robert 2015-02-20 08:58:34

2

您可以在Eclipse中拆分大文件。我已经在Windows尝试了105GB文件成功:

就在MySQLDumpSplitter库添加到您的项目: http://dl.bintray.com/verace/MySQLDumpSplitter/jar/

快速一份关于如何导入:

  • 在Eclipse中,右键单击您的项目 - >导入
  • 选择文件系统,然后下一页
  • 浏览jar文件的路径,然后按
  • 选择(厚)的MySQLDumpSplitter.jar文件,然后完成
  • 它将被添加到您的项目,并显示在在Package Explorer中的项目文件夹在Eclipse
  • 在Eclipse中的JAR文件(在Package Explorer中)
  • MySQL的转储文件分割赢双击打开dow,您可以指定转储文件的地址,然后继续拆分
0

您可以使用mysql_export_explode https://github.com/barinascode/mysql-export-explode

<?php 
#Including the class 

include 'mysql_export_explode.php'; 
$export = new mysql_export_explode; 

$export->db = 'dataBaseName'; # -- Set your database name 
$export->connect('host','user','password'); # -- Connecting to database 
$export->rows = array('Id','firstName','Telephone','Address'); # -- Set which fields you want to export 
$export->exportTable('myTableName',15); # -- Table name and in few fractions you want to split the table 
?> 

At the end of the SQL files are created in the directory where the script is executed in the following format 
--------------------------------------- 
myTableName_0.sql 
myTableName_1.sql 
myTableName_2.sql 
... 
+1

请不要复制和粘贴完全相同的[答案](http: //stackoverflow.com/a/35531751/189134)到多个问题。每个答案都应该定制以回答被问到的问题,而不是提供通用的复制/粘贴。 – Andy 2016-02-21 04:10:03

相关问题