ホームページ  >  記事  >  データベース  >  外部スクリプトを使用せずに同じインスタンス内で MySQL データベースのクローンを作成するにはどうすればよいですか?

外部スクリプトを使用せずに同じインスタンス内で MySQL データベースのクローンを作成するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-01 16:38:02239ブラウズ

How to Clone a MySQL Database Within the Same Instance Without Using an External Script?

同じインスタンス内での MySQL データベースのクローン作成: 代替アプローチ

同じインスタンス上で MySQL データベースのコピーを作成することが多くの場合不可欠です開発またはテストの目的で。データベースを SQL スクリプトにダンプしてからインポートするのが一般的な方法ですが、これには中間ファイルが必要です。この記事では、外部スクリプトを必要とせずにデータベースのクローンを作成するより直接的な方法について説明します。

MySQL ドキュメントが示唆しているように、次のコマンドを使用してデータベース ダンプを MySQL クライアントに直接パイプ処理できます。

mysqldump --routines --triggers db_name | mysql new_db_name

このコマンドは、データベース構造、データ、ルーチン、トリガーを db_name からエクスポートし、それらを new_db_name に直接インポートします。これは、データベースをファイルにダンプしてからインポートするよりも簡単で効率的なアプローチです。

MyISAM テーブルを使用している場合は、テーブル ファイルを直接コピーすることを検討してください。ただし、コピーされたファイルが適切に初期化されず、新しいデータベース内で構成されていない場合、データ破損につながる可能性があるため、これはお勧めできません。

さらに、mysqldump と mysql コマンドの両方で、次のようなオプションを使用して接続の詳細を指定できます。ユーザー名には -u、パスワードには --password= として使用します。これにより、資格情報を対話的に提供する必要がなく、データベースへの安全な接続が保証されます。

たとえば、指定したユーザー名とパスワードを使用して new_db という名前でoriginal_db のクローンを作成するには、次のコマンドを使用できます。

mysqldump -u username --password=password original_db | mysql -u username -p new_db

このコマンドを実行する前に、new_db データベースが存在しない場合は作成する必要がある場合があります。これは、コマンド echo "create database new_db_name" を使用して行うことができます。 mysql -u username -p.

上記のパイプ技術を利用すると、中間ファイルを必要とせずに同じインスタンス上で MySQL データベースのクローンを効率的に作成でき、より便利で信頼性の高いデータベース レプリケーションの方法が提供されます。

以上が外部スクリプトを使用せずに同じインスタンス内で MySQL データベースのクローンを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。