Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 将sql文件导入新数据库的速度_Mysql_Sql_Database - Fatal编程技术网

Mysql 将sql文件导入新数据库的速度

Mysql 将sql文件导入新数据库的速度,mysql,sql,database,Mysql,Sql,Database,当我需要将数据库从一台机器复制到另一台机器时,我通常会这样做 mysqldump-u root-ppassword数据库>backup.sql 然后在另一台机器上 mysql-u root-ppassword-databsae

当我需要将数据库从一台机器复制到另一台机器时,我通常会这样做 mysqldump-u root-ppassword数据库>backup.sql 然后在另一台机器上 mysql-u root-ppassword-databsae
然而,我现在正在处理一个1GB的sql文件,这需要几个小时!还有其他方法吗?

我个人使用HeidiSQL来管理备份。一旦在该工具中设置了连接,您就可以很快地从source1备份到source2。

如果您使用的是windows,则数据的路径如下所示:

C:\Program Files\MySQL\MySQL Server 5.0\data


在那里,您将拥有带有数据库名称的文件夹,您可以将这些文件夹复制并粘贴到其他计算机上,并且应该可以正常工作。

停止服务器,只需复制归档文件并将FLE压缩到db目录中,在目标机上执行相反的操作。您需要为新服务器上的dbs设置权限等。在doable时复制mysql数据库可能会让您陷入一片混乱


但这不是备份,不要将其用作备份,更像是一个映像。

不幸的是,问题中缺少太多变量。db datadir和文件是否在同一磁盘装载上?转储是否使用扩展插入?(假设没有)


如果文本转储是唯一的解决方案(意味着您不想使用xtrabackup或LVM快照),那么您希望让musqldump使用扩展插入(因此每个整张表插入一个,速度更快),并尝试将文件从数据目录单独装入,以减少磁盘搜索。在这一点上,它的所有IO绑定和磁盘速度是你的瓶颈

1GB文件只是一个表吗?还是多个表/数据库?一个数据库有几十个表