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/ | +--------------------------+----------------------------+
詳しい方、アドバイスお願いします。。。
そもそもなんですがutf8ではなくutf8mb4 にすることを検討するほうがいいと思います、さもないと全部の文字はいらないですし(????????問題もあるけどあれはまた別
