序文 フィールドの追加は誰でもよく知っていると思います。簡単に記述できます。MySQL テーブルにフィールドを追加するには、次の SQL を実行するだけです。 ALTER TABLE tbl_tpl ADD title(255) DEFAULT '' COMMENT 'Title' AFTER id; ただし、オンライン テーブルに大量のデータがある場合、フィールドを追加するとテーブルがロックされます。このプロセスには長い時間がかかったり、サービスがクラッシュしたりする可能性があるため、この操作は非常に危険です。 したがって、大きな MySQL テーブルにフィールドを追加するアイデアは次のとおりです。 ① 一時的な新しいテーブルを作成し、まず古いテーブルの構造(インデックスを含む)をコピーします old_table のようなテーブル new_table を作成します。 ②新しいテーブルに新しいフィールドを追加する ③ 古いテーブルからデータをコピーする 新しいテーブルに挿入(フィールド1、フィールド2…) 古いテーブルからフィールド1、フィールド2、…を選択 ④ 古いテーブルを削除し、新しいテーブルの名前を古いテーブルの名前に変更します。 ただし、3 番目のステップを実行する場合、このプロセスにも時間がかかる可能性があることに注意してください。このとき、新しいデータが入ってくるので、元のテーブルにデータが書き込まれた時間を記録するフィールドがあるのが最適です。このステップを実行した後、データを見つけて、データの差が非常に小さくなるまで繰り返し新しいテーブルにインポートすることができます。ただし、ごく少量のデータが失われる可能性があります。 したがって、テーブル内のデータが特に大きく、データの整合性を保証する必要がある場合は、操作をシャットダウンするのが最善です。 別の方法: 1. スレーブデータベースにフィールドを追加し、マスターとスレーブを切り替える 2. サードパーティのオンラインフィールド変更ツールを使用する 一般的に、数十万のデータ量の場合は、フィールドを直接追加できます。 要約する 上記は、大規模な MySQL テーブルにフィールドを追加する実装のアイデアです。この記事の内容が、皆さんの勉強や仕事に役立つことを願っています。ご質問がある場合は、メッセージを残してコミュニケーションを取ることができます。 以下もご興味があるかもしれません:
|
<<: node-media-serverを使用してシンプルなストリーミングメディアサーバーを構築する
>>: Linux サーバーに埋め込まれた ddgs および qW3xT.2 マイニング ウイルスの対処の実践記録
ネットワーク通信の概要オンライン ゲームを開発する場合、必然的にネットワーク通信に対処する必要があり...
GUNスクリーン:公式サイト: http://www.gnu.org/software/screen...
参考までに、シンプルなナンバープレート入力コンポーネント(vue)です。具体的な内容は次のとおりです...
Ubuntu ではデフォルトで root ログインが許可されていないため、初期の root アカウン...
結合クエリ結合クエリとは、2 つ以上のテーブル間のマッチング クエリを指し、一般的には水平操作と呼ば...
ブログを書くのは初めてです。開発に携わって2年になります。仕事の後に何か有意義なことを見つけたいと思...
目次序文1. ルーティングの遅延読み込み1. ルートの遅延読み込みが必要なのはなぜですか? 2. ル...
相対パスの概念現在のファイルの場所を参照ポイントとして使用して、ターゲット ファイルへのパスを確立し...
目次Vue.jsにおける属性とプロパティ値および関連する処理として属性とプロパティの概念属性とプロパ...
目次1. 親コンポーネントが子コンポーネントに値を渡す1. 親コンポーネント.vue 2. サブコン...
環境セントロス6.6 MySQL 5.7インストールシステムがインストールされている場合は、まずアン...
書き換えモジュールは ngx_http_rewrite_module モジュールです。その主な機能は...
ユーザーのホーム ディレクトリがどんどん大きくなってきたら、ホーム ディレクトリを新しいパーティショ...
私が使用しているデータベースはMySQLデータベースバージョン5.7ですまずデータベーステーブルを自...
目次1. トランジションとアニメーションの違い2. Vueを使用して基本的なCSSトランジションとア...