この記事では、mysql5.7.18 の文字セット設定チュートリアルを写真とテキストで紹介します。これは非常に優れており、必要な方は参考にしていただければ幸いです。
ストーリーの背景:
昔 (2017.6.5、記事には適時性があり、特に使用されるツールは頻繁に更新されます。今回のことを覚えておいてください。価値がなくなった場合は、すべて公式ドキュメントに準拠する必要があります)このツールの最新バージョンは mysql5.7.18 です。このマシンは win10 の 64 ビット システムです。手順は大きく分けて:
1. ダウンロード:公式サイト(https://www.mysql.com)を参照、ダウンロードはシステムバージョンに応じて行います
2. 初期化:コマンドライン(cmd)を入力します。解凍ディレクトリ bin フォルダ(ダウンロードしたら解凍したほうがいいですよね?時間がかかりすぎて忘れていました。あと、ダウンロード後のデータフォルダやiniファイルはありません) 初期化方法は2つあります。 1 つは安全でない初期化と呼ばれるもので、「mysqld --initialize」と入力します。この初期化では、root ユーザーにパスワードがありません (パスワードがないため安全ではありません)。もう 1 つは、いわゆる「安全な初期化」です。「mysqld --initialize」と入力します。 Initialize-insecure、パスワードを生成する root ユーザー、パスワードは生成後に表示されるログ ファイル、初期化後に生成されるデータ ファイルで確認できます
3. サービスを開始します: Enter: net start mysql (サービスを閉じる: Enter: net stop mysql)、プロンプトが表示されたら net は内部コマンドではないので、net がインストールされていない、または環境変数が設定されていない可能性がありますので、確認してください
4. 基本的には次のようになります。 mysql コマンドリストを確認してください。
次に、文字セットの設定の問題について話しましょう。
原因:
昨日、mysql コマンドラインでデータを表示するには抽象的すぎたので、最初に mysql (ビジュアル インターフェイス) 用の Navicat をダウンロードしたところ、見た目がはるかに良くなりました。図に示すように:
その後、テーブルにデータを挿入すると、「文字列値が正しくありません」というエラーが報告されます。これは、他のエンコーディングでは保存できないためです。一部の特殊文字 詳細 Baidu を使用できます。
変更後:
文字セットを変更するには、まず mysql を入力します: mysql -uroot (パスワードなしのものが初期化に選択されているため、ユーザーログイン)、次のように 'char%' のような変数を表示します (文字エンコーディングを確認してください)。画像内:
コマンドラインに例えば setcharacter_set_server=utf8mb4 と入力して文字セットを変更できますが、それはその時点でのみ有効で、サービスが再起動されるとデフォルト値が復元されます。次に、他の方法を試してください。インターネット上にはさまざまな意見があり、それらは曖昧で真実と偽りを区別するのが困難です。それで、公式ウェブサイトに行って見てみました(公式ウェブサイトも非常にわかりにくく、参考になる例がありません。目の見えない人に白は白で、私はその目の見えない人です、と言っているようなものです)。ドキュメント内の変数を表示するコマンドがあること: mysqld --verbose -- help、表示される変数はオプション ファイルで設定でき、サービスが開始されるたびに、オプション ファイルに従って自動的に設定されます。すると、ここに文が表示されます:
デフォルトのオプションは、指定された順序で次のファイルから読み取られます
私は、オプションファイルが存在する可能性がある場所にあるはずだと思います、つまり、新しく作成されたオプションファイルは、名前にちなんで名付けられる必要があります配置すべき場所に表示され、配置されます。図に示すように:
新しい my.ini ファイルを作成し、D: mysql の下に配置します。これは、上に示したように、たまたま表示される場所の 1 つです。 my.ini の内容は次のとおりです:
ここでは、原因となるcharacter_set_serverのみを取得します。当然、関連する文字セットの設定は統一されている必要があります。そうしないと文字化けする可能性があります。 Baidu にアクセスしてそれぞれを確認できます 文字セットとは何を意味しますか?
その後、mysql サービスを閉じて、設定を開始します (mysqld --install と入力します):
1. 管理者以外が cmd を開いて mysqld --install を入力すると、コマンドが拒否されたことを示す次のメッセージが報告されます。
2. 代わりに管理者で開くと、サービスがすでに存在していることが表示されます (その後、最初に削除します):
3. mysql サービスにクエリを実行します: sc query mysql (次の場所にもあります)コントロール パネル - 管理ツール - サービス) 、またはサービスを直接検索します)
4. 削除します: (コントロール パネル - 管理ツール - サービスでアンインストールするか、サービスを直接検索することもできます)
5. もちろん、最初に削除したとしても、再インストールする前に mysql を停止する必要があります。そうでないと、次のメッセージが表示されます:
6. 前にアンインストールしたので、今回はコントロール パネルで停止しました。停止すると表示されなくなり (コマンド ライン: net stop mysql)、再実行して、mysql サービスを正常に開始します:
7. 正常に再起動し、上に移動して、変更が正常に行われたかどうかを確認します:
8. その後、my.ini を変更し、mysql サービスを閉じて再起動する限り、毎回 my.ini が変更されてしまいます。今後は、これをもう一度使用せず、my.ini を変更してサービスを再起動してください。写真に示すように:
もう一度変更します:
関連する推奨事項:
centos7.3 mysql5.7.18インスタンスのインストールの詳細説明
centos6.4 での mysql5 .7.18 のインストールと設定チュートリアル (写真とテキスト)
以上がMySql5.7.18 文字セット構成のグラフィック例の共有の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。