mysql 5 のダウンロード.7Image
docker pull mysql:5.7
mysqlコンテナを作成し、起動します。
docker run -d -p 3306:3306 -e MYSQL_USER="ppx" -e MYSQL_PASSWORD="123456" -e MYSQL_ROOT_PASSWORD="123456" --name mysqltest1 mysql:5.7 --character-set-server=utf8 --collation-server=utf8_general_ci
上記パラメータの説明
-e MYSQL_USER="" ユーザ名を設定する。
-e MYSQL_PASSWORD=""このユーザのパスワードを設定する。
-e MYSQL_ROOT_PASSWORD=""root ユーザのパスワードを設定する。
--character-set-server=utf8文字セットを utf8 に設定する。
--collation-server=utf8_general_cli: 文字ルールを utf8 に設定する。_general_cli
mysqlのマウント
mkdir /opt
mkdir /opt/mysql
mkdir /opt/mysql/conf
mkdir /opt/mysql/data
 
myf 設定ファイルを作成し、変更する。
vim /opt/mysql/conf/myf
 
myf以下を追加する:
[mysqld]
user=mysql
character-set-server=utf8
default_authentication_plugin=mysql_native_password
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
マウント・ディレクトリは好きなように構築できますが、階層は正しくあるべきです。例えば、confとdataはmysqlの下にあります。
、コンテナを作成して開始
docker run -d -p 3307:3306 --privileged=true -v /opt/mysql/conf/myf:/etc/mysql/myf -v /opt/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql02 mysql:5.7
パラメータの説明
	--privileged=trueそうでない場合は、コンテナ内の root は外部の通常ユーザ権限を持つだけである。
	-v /opt/mysql/conf/myf:/etc/myfマッピング設定ファイル
	-v /opt/mysql/data:/var/lib/mysql: データディレクトリをマップする。
mysql 文字エンコーディングの設定
vi /mydata/mysql/master/conf/myf
[client]
default-character-set=utf8
 
[mysql]
default-character-set=utf8
 
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve





