2015-12-13 18 views
5

私のUbuntu 14.04にMySQL 5.7.8をインストールしました。MySQL 5.7の文字セットを変更できません(latinからutf8へ)

しかし、私はMySQLのデフォルト文字セットを変更することはできません。私はutf8に文字セットを変更したい。

私はインターネット上で多くの記事を検索して閲覧しましたが、試したすべての方法は私には適用されません。

私は既に/etc/mysql/my.cnfに 'character-set-server = utf8'と 'collat​​ion-server = utf8_general_ci'を追加しています。しかし、それは動作していません...

MySQLの私の文字セットを変更するにはどうしたらいいですか?私に答えてください!

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:     1 min 24 sec 
  • ショー変数 'Cの%'

    | 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/ | 
    | check_proxy_users  | OFF      | 
    | collation_connection  | utf8_general_ci   | 
    | collation_database  | latin1_swedish_ci   | 
    | collation_server   | latin1_swedish_ci   | 
    | completion_type   | NO_CHAIN     | 
    | concurrent_insert  | AUTO      | 
    | connect_timeout   | 10       | 
    | core_file    | OFF      | 
    
  • のmy.cnfのようなMySQLの(での/ etc/mysqlの)中

    • ステータス

      [mysqld] 
      # 
      # * Basic Settings 
      # 
      character-set-server=utf8 
      collation-server=utf8_general_ci 
      user   = mysql 
      pid-file  = /var/run/mysqld/mysqld.pid 
      socket   = /var/run/mysqld/mysqld.sock 
      port   = 3306 
      basedir   = /usr 
      datadir   = /var/lib/mysql 
      tmpdir   = /tmp 
      lc-messages-dir = /usr/share/mysql 
      skip-external-locking 
      character-set-server=utf8 
      collation-server=utf8_general_ci 
      init_connect=set collation_connection=utf8_general_ci 
      init_connect=set names utf8 
      character-set-client-handshake=FALSE 
      
  • 答えて

    5
    • MySQLサーバのためのUTF-8 character setcollationの設定:

    sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

    その後を押して、次の行を追加します。その後、

    ... 
    [mysqld] 
    character-set-server=utf8 
    collation-server=utf8_general_ci 
    ... 
    

    押しEscキーwq

    は、その後、サーバーを再起動します。

    sudo /etc/init.d/mysql restart 
    

    は、あなたの設定を確認します。

    データベースとテーブルのためのUTF-8 character setcollationを設定
    mysql> show variables like "%character%"; 
    
    
    +--------------------------+----------------------------+ 
    | 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/ | 
    +--------------------------+----------------------------+ 
    8 rows in set (0.01 sec) 
    
    mysql> show variables like "%collation%"; 
    
    
    +----------------------+-----------------+ 
    | Variable_name  | Value   | 
    +----------------------+-----------------+ 
    | collation_connection | utf8_general_ci | 
    | collation_database | utf8_general_ci | 
    | collation_server  | utf8_general_ci | 
    +----------------------+-----------------+ 
    3 rows in set (0.00 sec) 
    

    指定しますそれは明白にwhデータベースを作成する途中:

    mysql> SHOW CREATE DATABASE ... 
    mysql> SHOW CREATE TABLE ... 
    

    CREATE DATABASE some_database CHARACTER SET utf8 COLLATE utf8_general_ci;

    設定をチェック

    関連する問題