MySQLデータベースのデフォルトのエンコード

MySQLデータベースのデフォルトのエンコード

使用するビューのエンコーディング

1.ステータス表示

MySQLの>状況

--------------
mysql  Ver 14.14 Distrib 5.6.44, for Linux (x86_64) using  EditLine wrapper

Connection id:      22
Current database:   
Current user:       root@localhost
SSL:            Not in use
Current pager:      stdout
Using outfile:      ''
Using delimiter:    ;
Server version:     5.6.44 MySQL Community Server (GPL)
Protocol version:   10
Connection:     Localhost via UNIX socket
Server characterset:    latin1
Db     characterset:    latin1
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:        /var/run/mysqld/mysqld.sock
Uptime:         6 hours 31 min 31 sec

Threads: 1  Questions: 905  Slow queries: 1  Opens: 74  Flush tables: 1  Open tables: 67  Queries per second avg: 0.038
--------------

するCharacterSetサーバー:latin1の
DbとするCharacterSet:LATIN1(符号化形式のデータベース)
クライアント・キャラクタ:UTF8(クライアントがエンコード形式を結ぶ)
コネティカットするCharacterSet :. UTF8(アクセスエンコード形式)

2.ショー変数を使用します

「文字」のようなショーの変数

mysql> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | latin1                     |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

な/etc/my.cnf設定ファイルの情報を変更します

  1. デフォルトの設定情報を使用します

    • ネイティブデータベースへのアクセス:サーバーのキャラクタ:latin1の

      状態

      Server characterset:   latin1
      Db     characterset:   latin1
      Client characterset:   utf8
      Conn.  characterset:   utf8

      「は文字%」のようなショーの変数

      +--------------------------+----------------------------+
      
      | Variable_name            | Value                      |
      
      +--------------------------+----------------------------+
      
      | character_set_client     | utf8                       |
      
      | character_set_connection | utf8                       |
      
      | character_set_database   | latin1                     |
      
      | character_set_filesystem | binary                     |
      
      | character_set_results    | utf8                       |
      
      | character_set_server     | latin1                     |
      
      | character_set_system     | utf8                       |
      
      | character_sets_dir       | /usr/share/mysql/charsets/ |
      
      +--------------------------+----------------------------+
      

      データベースencodtestを作成し、その符号化された情報を参照してください

      Server characterset:   latin1
      Db     characterset:   latin1
      Client characterset:   utf8
      Conn.  characterset:   utf8
      mysql> show variables like 'character%';
      +--------------------------+----------------------------+
      | Variable_name            | Value                      |
      +--------------------------+----------------------------+
      | character_set_client     | utf8                       |
      | character_set_connection | utf8                       |
      | character_set_database   | latin1                     |
      | character_set_filesystem | binary                     |
      | character_set_results    | utf8                       |
      | character_set_server     | latin1                     |
      | character_set_system     | utf8                       |
      | character_sets_dir       | /usr/share/mysql/charsets/ |
      +--------------------------+----------------------------+

      character_set_databaseエンコード形式データベース

      デフォルトのエンコード形式を確認するためにテストテーブルを作成します。

      ショーは、テーブルのテストを作成します。

      +-------+-------------------------------
      | Table | Create Table                                                                                               |
      +-------+-------------------------------
      | test  | CREATE TABLE `test` (
      `id` int(11) NOT NULL,
      PRIMARY KEY (`id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
      +-------+-------------------------------

      DEFAULT CHARSET = latin1のデフォルトのエンコード形式は、同じ符号化形式のデータベースにlatin1です

  2. プロフィールな/etc/my.cnfを変更

    設定を追加します。

    [client]
    default-character-set = utf8
    [mysqld]
    character-set-server=utf8
    collation-server=utf8_unicode_ci
    • ユニットは、データベースに入ります

      ビューのエンコード形式:

      状態

      Server characterset:   utf8
      Db     characterset:   utf8
      Client characterset:   utf8
      Conn.  characterset:   utf8

      「char型%」のような変数を表示。

      +--------------------------+----------------------------+
      | Variable_name            | Value                      |
      +--------------------------+----------------------------+
      | character_set_client     | utf8                       |
      | character_set_connection | utf8                       |
      | character_set_database   | utf8                       |
      | character_set_filesystem | binary                     |
      | character_set_results    | utf8                       |
      | character_set_server     | utf8                       |
      | character_set_system     | utf8                       |
      | character_sets_dir       | /usr/share/mysql/charsets/ |
      +--------------------------+----------------------------+

      データベースを作成すると、そのコードを表示します

      同上

      テーブルビューのコードを作成します。

      +-------+------------------------------------------------------
      | Table | Create Table                                                                                                                     |
      +-------+------------------------------------------------------
      | test  | CREATE TABLE `test` (
      `id` int(11) NOT NULL,
      PRIMARY KEY (`id`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
      +-------+-----------------------------------------------------
      

      デフォルトの文字セット= UTF8 COLLATE = utf8_unicode_ci内のデフォルトのエンコード形式は同じで設定します

おすすめ

転載: blog.51cto.com/14449767/2431913