docker 安装mysql
查看可安装的mysql版本:
docker search mysql
拉取最新的版本镜像
查找mysql最新版本
https://hub.docker.com/_/mysql?tab=tags docker pull mysql:latest
查看本地拉取的镜像文件:
docker images
运行myql,设置端口和密码
docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.31 参数说明: -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。 MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。 docker run -p 3306:3306 --name mysql --restart=always --network common-network -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7 -p 指定在容器内部的端口 以及对外暴露的端口 --name 设置服务器名称 --restart 是否运行跟随docker一起启动 --network 容器之间内部通信网络 -v 挂载命令 将容器中的配置挂载在外部来方便修改 -d 指定版本 -e 修改配置 -e 指定root的密码
docker 查看是否安装成功:
docker ps
进入docker中创建的容器
docker exec -it 6433654a15c6 bash 6433654a15c6 为docker ps 中的容器id bash 以bash的方式进入 进入容器后 相当于在主机上面操作 exit 进行退出
docker设置 外部访问
登录mysql容器: docker exec -it ada965b21ca1 bash ada965b21ca1 :容器id mysql -uroo -p 登录 容器中的mysql show databases; use mysql; select host,user,plugin from user; alter user 'root'@'%' identified with mysql_native_password by '123456'; 然后就可以远程登录了
修改my.conf
新建以下内容 vi 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
设置重启可以访问
docker update mysql --restart=always
本文来自博客园,作者:diligently,转载请注明原文链接:https://www.cnblogs.com/luo12828-foxmail/p/16963998.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理