MongoDBバージョン4.2 copydb
とそのcopyDatabase
ラッパーは非推奨になりました。MongoDBのマニュアルは、私たちが今、使用すべきことを示唆しているmongodump
とmongorestore
。しかし、PHP MongoDBドライバーを使用してPHPからcopyコマンドを呼び出していました。ダンプおよび復元コマンドは、コマンドラインから実行する必要があるコマンドであり、同等のPHPがありません。PHPを使用してデータベースをコピーするにはどうすればよいですか?
1
shell_execのような関数を使用してPHPからmongodump / mongorestoreを実行することは可能ですが、データベース全体をクライアントにダウンロードしてからアップロードすることはほとんど不可能です。
—
Alex Blex
私はあなたのワークフローを理解していないと思います。単にマシン上にデータベースのバックアップ/復元を作成したいですか、それともウェブサイト/サービス(php経由)を介して同じもののアップ/ダウンロードを提供したいですか?
—
mrgremlin
テスト用にデータベースをコピーしたい。テストのためのすべての初期設定を含むデータベースがあり、テストを実行する前にそれをテストデータベースにコピーしたいと思います。これは通常、PHPによって処理されたリクエストを通じてリモートで開始されました
—
Carlos Granados
内部ソリューションが優れている理由を明確にするために、DebianやAlpineなどのシステム(MongoDBをまだ出荷している旧バージョン)では、追加のシェルツール用に別のパッケージをインストールする必要がありました。これらは、MongoDBセットアップが実行されているすべてのシステムに存在するわけではありません
—
Nico Haase