質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

受付中

MySQLの文字コードがlatin1になってしまう。utf8にしたい。

ucan-lab
ucan-lab

総合スコア886

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

3回答

0リアクション

2クリップ

20207閲覧

投稿2016/12/01 04:37

MySQL初心者です。

character_set_serverとcharacter_set_databaseの値がlatin1となってしまいます。
どこのサイトを見てもcharacter-set-server = utf8とすれば文字コードが直るような記述があるのですが、etc/my.cnfを書き換えて再起動しても文字コードはlatin1のままです。

my.cnfの中身は次のようになっています。

[client] port = 3306 socket = /var/lib/mysql/mysql.sock default-character-set = utf8 [mysqld] port = 3306 socket = /var/lib/mysql/mysql.sock datadir = /var/lib/mysql log-error = /var/log/mysqld.log pid-file = /var/run/mysqld/mysqld.pid tmpdir = /tmp log-bin = mysql-bin expire_logs_days = 7 symbolic-links = 0 default_password_lifetime = 0 character-set-server = utf8 language = /usr/share/mysql/japanese/ [mysqld_safe] log-error = /var/log/mysqld.log pid-file = /var/run/mysqld/mysqld.pid [mysqldump] socket = /var/lib/mysql/mysql.sock default-character-set = utf8

MySQLのバージョンは5.7系です。

# mysql -V mysql Ver 14.14 Distrib 5.7.16, for Linux (x86_64) using EditLine wrapper

文字コードの確認コマンド

> 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/ | +--------------------------+----------------------------+ > show variables like "%collation%"; +----------------------+-------------------+ | Variable_name | Value | +----------------------+-------------------+ | collation_connection | utf8_general_ci | | collation_database | latin1_swedish_ci | | collation_server | latin1_swedish_ci | +----------------------+-------------------+ > show global variables like 'character%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+

詳しい方、アドバイスお願いします。。。

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

yumetodo

2020/01/10 08:49

そもそもなんですがutf8ではなくutf8mb4 にすることを検討するほうがいいと思います、さもないと全部の文字はいらないですし(????????問題もあるけどあれはまた別

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。