我有一个新数据库,类似于旧数据库,但有更多的列和表。所以旧表上的数据仍然可用,需要转移。
旧数据库与新数据库位于不同的服务器上。我想将数据从一个数据库传输到另一个数据库。
我有navicat,但使用主机到主机数据传输似乎需要很长时间。还下载一个 sql 文件然后执行也需要很长时间(它每秒执行大约 4 次插入)。
下载的 SQL 文件大约 40mb(带有完整的插入语句)。最后一个可能是 60mb 到 80mb。
传输这些数据的最佳方式是什么?(我需要重复几次测试的过程)
我有一个新数据库,类似于旧数据库,但有更多的列和表。所以旧表上的数据仍然可用,需要转移。
旧数据库与新数据库位于不同的服务器上。我想将数据从一个数据库传输到另一个数据库。
我有navicat,但使用主机到主机数据传输似乎需要很长时间。还下载一个 sql 文件然后执行也需要很长时间(它每秒执行大约 4 次插入)。
下载的 SQL 文件大约 40mb(带有完整的插入语句)。最后一个可能是 60mb 到 80mb。
传输这些数据的最佳方式是什么?(我需要重复几次测试的过程)
在源机器上做一个 mysqldump 然后在另一边把它吃掉,即使是在一个 40-100MB 的文件上也是合理的。从命令行执行。
(source machine)
mysqldump -u user -p password database > database.sql
..将文件传输到收件人机器...
(recipient machine)
mysql -u user -p password database < database.sql
不能先只传输一部分数据进行测试吗?然后,稍后,当您对测试结果满意时,转移整个事情?
(它每秒执行大约 4 次插入)
这听起来更像是你的数据库有问题。你确定没问题吗?
科迪谢谢你的指导。出于某种原因,它对我不起作用,但在我的 redhat linux 服务器上执行以下操作:
(接收方机器)mysql -u [用户名] -p -h localhost 数据库 < database.sql
(源机)我刚用过 php myadmin
是否有可以运行的命令从另一台服务器中提取数据库,类似于:mysqldump -u [username] -p -h [host address] [dbname] > [filename].sql 谢谢