首页 文章

程序打开大型MySQL转储[关闭]

提问于
浏览
3

是否有可以读取大型MySQL转储(200MB)或任何大型文本文件的GUI程序?

大多数现代编辑器似乎无法处理大文件,因为它们似乎喜欢将整个文件加载到内存中 .

我想在Ubuntu(Linux)上打开它,但我也想在Windows上阅读它 .

2 回答

  • 4

    vi(或Vim)可以处理它,没问题 .

  • 0

    我所做的是运行一个PHP代码来创建大量的小文件(每个表一个),这样就很容易用gedit打开它们或者只能逐个恢复我想要的表 .

    这是代码,它是不完美的,有一些错误(它正在运行,但文件太小,很可疑)它将创建一个名为“tables”的文件夹,并将它们放在所有文件中:

    <?php
    // Put here the name of the Huge sql file
    $hugeFileName="test.sql";
    
    $text=file_get_contents($hugeFileName);
    $arr=explode("-- Table structure for table", $text);
    
    $first=true;
    
    if(!is_dir("tables")){
        mkdir("tables");
    }
    
    foreach($arr as $table){
    if($first){
        $first=false;
        continue;
    }
    
    list($tableName, $tableCreate, $nothing, $nothing, $tableData)=explode("--", $table);
    
    
    $tableName=trim($tableName, "\n");
    $tableName=trim($tableName, " ");
    $tableName=trim($tableName, "`");
    $tableName=trim($tableName, "`\r");
    
    file_put_contents("tables/".$tableName.".sql", $tableCreate.$tableData);
    }?>
    

相关问题