Linux システムで MySQL の文字セットを UTF8 に変更する手順

Linux システムで MySQL の文字セットを UTF8 に変更する手順

Linux で MySQL の文字エンコードを UTF8 に変更する

Linux に MySQL サービスをインストールしました。その後の使用中に、レコードを挿入するときに一部のフィールドを中国語にできないことに突然気付きました。エラー メッセージは次のとおりでした。

mysql> insert into syudent values(1,'陶盼',21);
エラー 1366 (HY000): 行 1 の列 'name' の文字列値 '\xE9\x99\xB6\xE7\x9B\xBC' が正しくありません

ここに画像の説明を挿入

粘り強く情報を探した結果、ついに問題を解決しました。ここで私の解決策を皆さんと共有します:

1. データベース内の MySQL ステータスを確認します。

# mysql のステータスを確認しますmysql> status;
mysql> 終了します。

ここに画像の説明を挿入

2. 設定ファイルを変更します。

#データベースを終了します systemctl stop mysqld.service
#my.cnf 設定ファイルを編集する vim /etc/my.cnf
[client] //[client]セクションがない場合は自分で追加してください default-character-set=utf8
[mysqld]
文字セットサーバー=utf8
照合サーバー=utf8_general_ci

設定ファイルを編集した後、MySQL サービスを再起動します。

systemctl で mysqld を起動します。 

再起動が成功した後、MySQL のステータスを再度クエリすると、次のように表示されます。

mysql -u root -p 'あなたのパスワード'
mysql> ステータス;

ここに画像の説明を挿入

この時点で、データベースに通常どおり入力し、テキスト セグメント データを挿入できます。

3. それでも失敗する場合は、MySQL 作成時の構成、または my.cnf 構成ファイルを編集する前の手順で MySQL サービスが停止されなかったことが原因である可能性があります。

ここで、テーブルとフィールドの文字セットを utf8 に設定する必要があります。

#テーブル作成プロセスを確認しますmysql> use ky15;
mysql> show テーブル syudent を作成します。

ここに画像の説明を挿入

#テーブルの文字セットをutf8に設定する
mysql> alter table テーブル名 文字セット utf8;
#中国語の文字を挿入したいフィールドの文字セットをutf8に変更します
mysql> alter table テーブル名変更 name name char(20) 文字セット utf8;
# テーブルの文字セットとフィールドの文字セットを表示します。mysql> show create table syudent;

ここに画像の説明を挿入

#テスト、中国語を挿入 mysql> insert into syudent values(1,'陶盼',21);
mysql> insert into syudent values(2,'王旭',21);
mysql> syudent から * を選択します。

ここに画像の説明を挿入

Linux で MySQL の文字セットを UTF8 に変更する手順に関するこの記事はこれで終わりです。Linux で MySQL の文字セットを変更することに関する関連コンテンツの詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL での utf8mb4 照合の例
  • MySQL エンコーディング utf8 および utf8mb4 utf8mb4_unicode_ci および utf8mb4_general_ci
  • MySQL データベースのエンコーディングを utf8mb4 に変更する方法
  • mysql charset=utf8 本当に意味が分かりますか
  • MySQL の文字セット utf8 を utf8mb4 に変更する方法
  • mysql 文字化けした文字 latin1 文字を UTF8 に変換 詳細

<<:  Vue3 トランジションアニメーションの落とし穴記録について

>>:  適応型ウェブページを設計および作成する方法

推薦する

パーティクルダイナミックボタン効果を実現するCSS

オリジナルリンクhttps://github.com/XboxYan/no…ボタンは、おそらく We...

js シンプルで粗雑なパブリッシュとサブスクライブのサンプルコード

パブリッシュ/サブスクライブとは何ですか?例を挙げてみましょう。あなたは服を買うために店に行きます。...

ホワイトボードを踏まないようにするゲームを実装するための HTML+CSS+JS

目次背景1. 思考分析2. ページ構成2.1 HTML レイヤー2.2 CSS レイヤー2.3 JS...

マークアップ言語 - リスト再び

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

JavaScript 変数の昇格についての簡単な説明

目次序文1. どのような変数が促進されますか? 2. 可変プロモーションがあるのはなぜですか? (1...

ECMAScript6 におけるマップマッピングの基本概念と一般的な方法

目次マッピングとは何かオブジェクトとマップの違いマップの共通メソッド宣言と初期化割り当てセットキー値...

純粋な CSS3+DIV で小さな三角形の境界線効果を実現するためのサンプル コード

具体的なコードは次のとおりです。 HTMLコードは次のとおりです <div class=&qu...

docker を使用して Kong クラスター操作を構築する

docker コンテナの下に kong クラスターを構築するのは非常に簡単です。公式サイトの紹介も非...

Linux 論理ボリューム管理 (LVM) の使用法の概要

ディスク領域の管理は、システム管理者にとって重要な日常的なタスクです。ディスク領域が使い果たされると...

Mysql の varchar 型に関する注意点

varchar の保存ルール4.0 未満のバージョンでは、varchar(20) は 20 バイトを...

MySQL 8.0 Windows zip パッケージ版の詳細なインストール手順

MySQL 8.0 Windows zipのインストール手順は次のように紹介されています。準備する:...

Docker Docker の保存場所を変更する コンテナイメージのサイズ制限を変更する操作

これは新しいバージョンではもう不可能なようで、推奨されません。そうでない場合は、ソフト リンクを直接...

Linux システムのパフォーマンスを分析するための top コマンドの詳細な説明

Linux topコマンドの紹介top コマンドは、Linux でよく使用されるパフォーマンス分析ツ...

React.FCとReact.Componentの使用に関する簡単な説明

目次1. React.FC<> 2. クラスxxはReact.Componentを拡張し...

JavaScript の便利な配列トリック 12 選

目次アレイ重複排除1. from() を新しい Set() メソッドに重ねる2. スプレッド演算子 ...