Docker

Docker安装Mysql5.7(9)

2018-05-10  本文已影响102人  ROCK_杰哥

首先明确一点mysql5.6和5.7的安装是有很大差异的,安装5.7开始

开始

docker pull mysql:5.7

如果拉去慢的话,可以配置为中国的docker镜像地址

vi /etc/docker/daemon.json
#加上这个
{ 
“registry-mirrors”: [“[https://registry.docker-cn.com](https://registry.docker-cn.com/)“] 
}

运行

docker run -p 3306:3306 --privileged=true -v /opt/docker_v/mysql/conf:/etc/mysql/conf.d -v /opt/docker_v/mysql/logs:/logs -v /opt/docker_v/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

--privileged=true 获取临时的selinux的权限
-v 宿主机目录挂在到容器的地址,映射
-e MYSQL_ROOT_PASSWORD 初始化密码

测试过程,通过可视化工具连接到mysql--加入数据--关掉mysql容器--再启动mysql容器--观察数据是否还在

通过可视化工具连接到mysql--加入数据

image.png

关掉mysql容器--再启动mysql容器

[root@localhost logs]# docker ps
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                    NAMES
17f828cd5dfe        mysql:5.7                     "docker-entrypoint..."   12 minutes ago      Up 12 minutes       0.0.0.0:3306->3306/tcp   happy_yalow
e4a2a607b63e        192.168.9.129:5000/registry   "/entrypoint.sh /e..."   54 minutes ago      Up 54 minutes       0.0.0.0:5000->5000/tcp   objective_goldwasser
[root@localhost logs]# docker stop 17f828cd5dfe
17f828cd5dfe
[root@localhost logs]# docker run -p 3306:3306 --privileged=true -v /opt/docker_v/mysql/conf:/etc/mysql/conf.d -v /opt/docker_v/mysql/logs:/logs -v /opt/docker_v/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
e18928a1506ff278c7be5b01ad42633c054a5b7e627e6b27b51e91f69f590021
[root@localhost logs]# 

观察数据是否还在

刷新可视化工具,数据还在,可以再宿主机的目录下看看

images

数据库中文乱码问题

docker exec -ti xxx(容器id) /bin/bash
vim /etc/mysql/mysql.conf.d/mysql.cnf
如果vim不起作用
apt-get update
apt-get install vim
如果ping不起作用
apt-get install iputils-ping
再次
vim /etc/mysql/mysql.conf.d/mysql.cnf

加入: 
[mysql] 
default-character-set = utf8

[mysql.server] 
default-character-set = utf8

[mysqld_safe] 
default-character-set = utf8

[client] 
default-character-set = utf8

[mysqld] 
character_set_server=utf8 
init_connect=’SET NAMES utf8’
##重启mysql容器
docker restart 容器ID
[root@localhost data]# pwd
/opt/docker_v/mysql/data
[root@localhost data]# ll
总用量 188484
-rw-r-----. 1 polkitd ssh_keys       56 5月  10 17:13 auto.cnf
-rw-------. 1 polkitd ssh_keys     1679 5月  10 17:13 ca-key.pem
-rw-r--r--. 1 polkitd ssh_keys     1107 5月  10 17:13 ca.pem
-rw-r--r--. 1 polkitd ssh_keys     1107 5月  10 17:13 client-cert.pem
-rw-------. 1 polkitd ssh_keys     1675 5月  10 17:13 client-key.pem
-rw-r-----. 1 polkitd ssh_keys      417 5月  10 17:28 ib_buffer_pool
-rw-r-----. 1 polkitd ssh_keys 79691776 5月  10 17:28 ibdata1
-rw-r-----. 1 polkitd ssh_keys 50331648 5月  10 17:28 ib_logfile0
-rw-r-----. 1 polkitd ssh_keys 50331648 5月  10 17:13 ib_logfile1
-rw-r-----. 1 polkitd ssh_keys 12582912 5月  10 17:29 ibtmp1
drwxr-x---. 2 polkitd ssh_keys     4096 5月  10 17:13 mysql
drwxr-x---. 2 polkitd ssh_keys     8192 5月  10 17:13 performance_schema
-rw-------. 1 polkitd ssh_keys     1675 5月  10 17:13 private_key.pem
-rw-r--r--. 1 polkitd ssh_keys      451 5月  10 17:13 public_key.pem
-rw-r--r--. 1 polkitd ssh_keys     1107 5月  10 17:13 server-cert.pem
-rw-------. 1 polkitd ssh_keys     1675 5月  10 17:13 server-key.pem
drwxr-x---. 2 polkitd ssh_keys     8192 5月  10 17:13 sys
drwxr-x---. 2 polkitd ssh_keys       52 5月  10 17:13 test
[root@localhost data]# 
上一篇下一篇

猜你喜欢

热点阅读