macOS High Sierra 10.13
ubuntu on docker
1.クライアントライブラリ系をインストール
クライアントから接続するための各種ライブラリをインストール
apt-get install -y libmysqlclient-dev
pip install mysqlclient
何をするものかはよく分かっていません。
-y
は、
処理中に現れるプロンプトに対して常に"yes"と解答するらしいです。
2.文字コードをutf8に変更
インストール後は文字コードがlatin1になっているものも多いので全てutf8に変更する。
このままでも問題ないかもしれないが、昔から文字コードで悩んだことが多かったのでこのようにしました。
mysql> show 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に変更
set character_set_client = utf8;
set character_set_connection = utf8;
set character_set_database = utf8;
set character_set_filesystem = utf8;
set character_set_results = utf8;
set character_set_server = utf8;
mysql> show variables like "%character%";
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | utf8 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
ただ、ログアウトすると元に戻ってた。。
my.cnfとかを変更しないとダメなようです。
以下のように追記したらOKでした。
(バージョンによって書きかたが違うようです。)
/etc/mysql/my.cnf
[mysqld]
character-set-server = utf8
skip-character-set-client-handshake
[mysql]
default-character-set=utf8
最後にユーザなどを作成して一旦終了。
ユーザの追加などは以下サイトを参考させて頂きました 。
MySQLのユーザー作成でハマったこと解決策メモ。
http://blog.codebook-10000.com/entry/20130806/1375794910