Linux下docker安装 mysql
一、安装msyql
- 在https://hub.docker.com 搜索 mysql
- 启动虚拟机 连接虚拟机 vagrant ssh ,查看当前账号 whoami
- 下载镜像文件:sudo docker pull mysql:5.7 ,查找镜像 images ID :sudo docker images
- 登录管理员账号 su root 密码 vagrant
- 创建实例并启动:
docker run -p 3306:3306 --name mysql \ -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 3306:3306:将容器的3306端口映射到主机的3306端口 -v /mydata/mysql/log:/var/log/mysql\ 将日志文件夹挂载到主机 -v /mydata/mysql/data:/var/lib/mysql\ -v /mydata/mysql/conf:/etc/mysql\ 将配置文件夹挂载到主机 -e MYSQL_ROOT_PASSWORD=123456:初始化root用户的密码 -d: 后台运行容器,并返回容器ID
二、测试连接本机的mysql
三、改字符集
进入容器 : docker exec -it mysql /bin/bash , whereis mysql exit cd /mydata/ ls cd mysql/ ls cd conf ls vi my.cnf 进入 敲i ,复制粘贴 [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 按ESC ,敲:wq 退出 重启Mysql : docker restart mysql 进入容器 : docker exec -it mysql /bin/bash cd /etc/mysql/ 查看文件 cat my.cnf
四、自动启动 docker update mysql --restart=always
五、docker常用命令
//重启实例 docker restart ebc54f9f98e2(容器 ID)/ (容器名字) //停止实例 docker stop ebc54f9f98e2(容器 ID)/ (容器名字)
//移除一个镜像
docker rm ba51fc8d04e1(CONTAINER ID)
//删除docker上的镜像 docker rmi 7bb2586065cd(IMAGE ID)
1. docker search mysql 这条命令表示查询mysql的所有镜像信息
2. docker pull mysql 表示从官方下载默认版本的mysql,latest
docker pull mysql:5.5 表示下载mysql版本5.5的
3. docker images 查看当前本地的所有镜像
4. docker rmi image-id 删除制定镜像,image-id是每个镜像独有的id
5. docker rum ...... 根据镜像启动容器
6. docker ps 查看运行中的容器
7. docker ps -a 查看所有容器
8. docker start 容器id 启动容器
9. docker stop 容器id 停止容器
10. docker rm 容器id 删除容器
11. service firewalld status 查看防火墙状态
12. service firewalld stop 关闭防火墙