安装步骤
1.从docker镜像仓库中拉取mysql镜像
docker pull mysql:5.7
2.创建实例,并启动
# --name指定容器名字 -v目录挂载 -p指定端口映射 -e设置mysql参数 -d后台运行
sudo docker run -p 3306:3306 --name mysql5.7 \
-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 --lower_case_table_names=1
虚拟机(主机)中3306端口与docker容器中的3306端口(mysql)相对应
–name :为我们当前启动的容器命名
-p 3306:3306:将容器的3306端口映射到主机的3306端口
-v/mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机,目录挂载,将容器内部的文件 挂载到 虚拟机目录中
-v /mydata/mysg/log:/ar/log/mysql:将日志文件夹挂载到主机
-v /mydata/myq/data/var/lib/mysql/:将配置文件夹挂载到主机
-e MYSQL ROOT PASSWORD=root: 初始化root用户的密码
-d:后台启动 版本为5.7的mysql的镜像
--lower_case_table_names=1 数据库名忽略大小写在数据库初始的时候才能设置成功
--restart=always docker中的mysql开机自动启动或者docker update 容器命名 --restart=always
番外:whereis mysql
3.查看docker中正在运行的容器
docker ps
4.进入容器内部操作数据库
docker exec -it mysql5.7 /bin/bash 进入mysql容器内部
mysql -uroot -p 或mysql -u root -p 或mysql -u root -proot
出现问题
MySQL5.7 没有/etc/my.cnf
小技巧
查找文件,前提是进入到容器内部mysql --help | grep my.cnf
结果是/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf