web-dev-qa-db-ja.com

Mysqldump:バックアップ時に挿入用の列名を作成します

Insertステートメントで列名を使用してバックアップするようにmysqldumpに指示するにはどうすればよいですか?
私の場合、挿入SQLを使用した通常のバックアップは行われず、

LOCK TABLES `users` WRITE;
/*!40000 ALTER TABLE `users` 
INSERT INTO `users` VALUES (1

構造。

今、私は先に進み、ユーザーのスキーマから列を削除しました。この後、バックアップSQLを実行すると、列番号の不一致エラーが表示されます。

これを修正するには、列名を書き込むようにmysqldumpに指示するにはどうすればよいですか?これが今のやり方です

mysqldump --Host=${dbserver} --user=${dbusername} --password=${dbpassword} \
          --no-create-db --no-create-info --extended-insert --single-transaction \
          --compress tablename  

より広いレベルで、これらのスキーマの変更を管理するためのベストプラクティスは何ですか?

61
Quintin Par

使用する --complete-insert mysqldumpコマンドのパラメーター

147
Cherian