当我需要将数据库从一台机器复制到另一台机器时,我通常会这样做 mysqldump -u root -ppassword database> backup.sql 然后在另一台机器上 mysql -u root -ppassword databsae< backup.sql
但是我现在正在处理一个1 GB的sql文件,这需要几个小时!还有其他方法吗?
答案 0 :(得分:2)
不幸的是,问题中缺少太多变量。 db datadir和同一磁盘上的文件是否挂载?转储是否使用扩展插入? (假设没有)
如果文本转储是唯一的解决方案(意味着你不想使用xtrabackup或LVM快照)那么你想让你musqldump使用扩展插入(所以每个整个表一个插入,更快)并尝试拥有该文件位于数据目录的单独挂载上以减少磁盘搜索。对于那一点,它是所有IO绑定的,磁盘速度是你的瓶颈。
答案 1 :(得分:0)
我个人使用HeidiSQL来管理我的备份。一旦在工具中设置了连接,就可以很快地从source1备份到source2。
答案 2 :(得分:0)
如果您使用的是Windows,那么您的数据就是这样的路径:
C:\ Program Files \ MySQL \ MySQL Server 5.0 \ data
在那里,您将拥有包含数据库名称的文件夹,您可以将这些文件夹复制并粘贴到其他计算机上,并且可以正常工作。
答案 3 :(得分:0)
停止服务器,只需复制存档并压缩db目录中的文件,然后在目标计算机上执行相反操作。您需要将权限等等添加到新服务器上的dbs。在可行的情况下复制mysql数据库可能会让您陷入困境。
这不是备份,不要将它用作一个,更像是一个图像。