ホームページ > データベース > mysql チュートリアル > MySQL データベースとそのテーブルの名前を効率的に変更するにはどうすればよいですか?

MySQL データベースとそのテーブルの名前を効率的に変更するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-21 04:51:09
オリジナル
438 人が閲覧しました

How to Efficiently Rename a MySQL Database and its Tables?

MySQL データベースの名前変更: 包括的なアプローチ

MySQL データベースの名前変更 (スキーマ名の変更とも呼ばれます) は、特に大規模なデータベースや InnoDB ストレージ エンジンを使用するデータベース。ここでは、これらの複雑さに対処する効果的な方法について詳しく説明します。

InnoDB テーブルの名前変更

InnoDB テーブルの場合、次のアプローチが効果的であることが証明されています。

  1. 必要な内容を含む新しい空のデータベースを作成します。 name.
  2. 次のコマンドを使用して、古いデータベースから新しいデータベースに各テーブルの名前を順番に変更します:
RENAME TABLE old_db.table TO new_db.table;
ログイン後にコピー

権限の調整

テーブルの名前を変更した後、適切な権限を確保するために権限を調整する必要がある場合があります。 access.

プロセスの自動化

シェル スクリプトで名前を効率的に変更するには、次のコマンドのいずれかを利用できます:

mysql -u username -ppassword old_db -sNe 'show tables' | while read table; \
    do mysql -u username -ppassword -sNe "rename table old_db.$table to new_db.$table"; done
ログイン後にコピー

または

for table in `mysql -u root -ppassword -s -N -e "use old_db;show tables from old_db;"`; do mysql -u root -ppassword -s -N -e "use old_db;rename table old_db.$table to new_db.$table;"; done;
ログイン後にコピー

追加考慮事項

  • トリガーを使用してテーブルの名前を変更する前に、トリガーを削除する必要があります。
  • ストアド プロシージャは、後で mysqldump -R old_db | を使用してコピーできます。 mysql new_db.

以上がMySQL データベースとそのテーブルの名前を効率的に変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート