美文网首页Docker
Docker安装Mysql5.7(9)

Docker安装Mysql5.7(9)

作者: ROCK_杰哥 | 来源:发表于2018-05-10 23:40 被阅读102次

    首先明确一点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]# 
    

    相关文章

      网友评论

      本文标题:Docker安装Mysql5.7(9)

      本文链接:https://www.haomeiwen.com/subject/ixltdftx.html