docker安装myql5.7和mysql8.0

docker安装mysql5.7

  1. 下载镜像

    docker pull mysql:5.7
    
  2. 创建映射文件夹

    mkdir -p /docker/mysql/conf
    mkdir -p /docker/mysql/logs
    mkdir -p /docker/mysql/data
    
  3. 创建容器

    docker run  --privileged=true -p 3306:3306  --name mysql  -v /docker/mysql/conf:/etc/mysql/conf.d  -v /docker/mysql/logs:/var/log/mysql  -v /docker/mysql/data:/var/lib/mysql  -e MYSQL_ROOT_PASSWORD=223345 -d mysql:5.7 
    
    • -p 3306:3306 主机端口跟容器端口映射
    • –name mysql 设置容器名字
    • -v /docker/mysql/conf:/etc/mysql/conf.d 挂载配置文件
    • -v /docker/mysql/logs:/var/log/mysql 挂载日志
    • -v /docker/mysql/data:/var/lib/mysql 挂载数据文件,持久化到主机
    • -e MYSQL_ROOT_PASSWORD=223345 设置密码
    • -d mysql:5.7 后台启动,使用的镜像为mysql:5.7
  4. 配置my.cnf

    #创建my.cnf
    cd /docker/mysql/conf/
    vim my.cnf 
    
    #插入配置
    [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
    
    

    注意

    上面这里一定不能有任何换行的操作

  5. 重启mysql

    docker restart mysql
    

docker 安装mysql8.0

  1. 下载镜像

    docker pull mysql:8.0
    
  2. 创建映射文件夹

    mkdir -p /docker/mysql8/data
    mkdir -p /docker/mysql8/logs
    mkdir -P /docker/mysql8/conf
    
  3. 创建容器

    docker run  --privileged=true -p 3307:3306  --name mysql8  -v /docker/mysql8/conf:/etc/mysql/conf.d  -v /docker/mysql8/logs:/var/log/mysql  -v /docker/mysql8/data:/var/lib/mysql  -e MYSQL_ROOT_PASSWORD=223345 -d mysql:8.0
    
  4. 设置root账户外网可访问

    # 进入容器
    docker exec -it mysql8 bash
    
    #进入mysql终端
    mysql -uroot -p
    
    #设置root账户外网可访问
    use mysql;
    ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
    flush privileges;
    
    #退出
    exit
    exit
    
  5. 配置my.cnf

    [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
    
  6. 重启mysql

    docker restart mysql8
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一定会去到彩虹海的麦当

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值