mysql> show character set;
mysql> status
<略>
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
<略>
| フィールド |
意味 |
|---|---|
| Server characterset |
サーバーのデフォルトキャラクタセット。 |
| Db characterset |
デフォルトデータベース(use
xxxで選択したデータベース)で使用される文字コード。デフォルトデータベースがまだ選択されていない場合は、Server
charactersetと同じものが表示される。 |
| Client characterset |
クライアントから送られてくるクエリの文字コードを指定。 |
| Conn. characterset |
サーバーはクエリを受信した後に変換する文字コードを指定する。サーバーはクライアントから送られたクエリをClient charactersetからConn. charactersetに変換する。(introducerがない文字列に限る) |
mysq> SHOW VARIABLES;
mysql> select @@character_set_client,
@@character_set_connection,
@@character_set_server, @@character_set_database;
# ./configure --with-character-set=utf8
# mysqld --default-character-set=utf8
[mysqld] default-character-set=utf8
mysql> status
<略>
Server characterset: utf8
Db characterset: utf8 (*1)
Client characterset: latin1
Conn. characterset: latin1
<略>
# mysql -u xxxx -p --default-character-set=latin1
[mysql] default-character-set=utf8
SET NAMES utf8 or SET CHARACTER SET utf8
mysql> status; Server characterset: utf8 Db characterset: utf8 Client characterset: utf8 Conn. characterset: utf8
SET NAMES utf8 or SET CHARACTER SET utf8のSQLを実行して、クライアントから送信される SQL ステートメントのキャラクタセットと、サーバからクライアントに返される結果セットのキャラクタセットを指定する必要がある。
[mysqld] skip-character-set-client-handshake