1.搜索镜像
命令:docker search mysql,mysql的这种安装方式和上一节我们介绍的tomcat的步骤很相似。
2.拉取下载镜像
命令:docker pull mysql:5.6,这里以5.6版本为例。
3.查看下载到的镜像
命令:docker images |grep mysql
4.运行docker容器
docker run -itd -p 3306:3306 --name mysql -v $PWD/mysql/conf:/etc/mysql/conf.d -v $PWD/mysql/logs:/logs -v $PWD/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql
命令说明:
-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。
-v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。
-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。
-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。
-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。
5.查看启动情况
命令:docker ps
#查看所有容器包括停止运行容器:docker ps -a
6.启动mysql容器
命令:docker start mysql
7.停止mysql容器
docker stop mysql
8.设置docker启动时启动mysql
docker update mysql --restart=always
9.docker登录mysql
完整示例
# 步骤一:查看已运行的docker容器
docker ps
# 假设我们找到了mysql容器的名称或ID为 "mysql-container"
# 步骤二:登录mysql容器
docker exec -it mysql-container /bin/bash
# 步骤三:登录mysql
mysql -u root -p
#设备root远程访问
grant all privileges on *.* to 'root'@'%' with grant option;
#刷新权限
flush privileges;
Mysql8应该如何安装
如果mysql的镜像是8,第一步仍然是先下载镜像,下载后通过docker进行启动,命令是“
docker run --name mysql -p 3306:3306-e MYSQL_ROOT_PASSWORD=123456-d mysql
”,然后通过命令“docker exec-it mysql bash”进入容器,进入容器后就可以通过linux中的登录方式登录mysql了。
docker run --name mysql -p 3306:3306 \
-v /home/dzp/data/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 -d mysql
附linux命令:
mysql -u root -p123456
如果需要远程登录的,需要执行授权命令
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;