在MongoDB 4.2版copydb
及其copyDatabase
包装器中,已弃用。MongoDB手册建议我们现在应该使用mongodump
和mongorestore
。但是我是使用PHP MongoDB驱动程序从PHP调用copy命令的,而dump和restore命令是需要从命令行运行的命令,并且没有任何等效的PHP。现在如何使用PHP复制数据库?
1
即使可以使用shell_exec之类的功能从PHP运行mongodump / mongorestore,也很难将整个数据库下载到客户端,然后再上传回客户端。
—
亚历克斯·布莱克斯
我想我不理解您的工作流程。您是否只是想在计算机上创建数据库备份/还原,还是要通过网站/服务(通过php)提供数据库的备份/还原?
—
mrgremlin
我要复制数据库以进行测试。我们有一个包含所有用于测试的初始设置的数据库,我想在运行测试之前将其复制到测试数据库。这通常是通过PHP处理请求远程启动
—
卡洛斯·格拉纳多斯
只是为了阐明为什么一些内部解决方案会很棒:在像Debian或Alpine这样的系统(仍在MongoDB之前发行的以前的版本)上,您必须安装其他软件包用于其他Shell工具。这些可能并非在所有运行MongoDB设置的系统上都存在
—
Nico Haase