MySQL™软件提供了一个非常快速,多线程,多用户,强大的SQL(结构化查询语言)数据库服务器
pull一个mysql镜像下来
docker pull mysql
先运行这个镜像copy出配置
docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d docker.io/mysql
移动出mysql data
docker cp mysql:/var/lib/mysql/ ~/
复制到 /mysql/mysql_data/ 文件下
mv ~/mysql /mysql/mysql_data/
同样的道理copy出 配置文件
docker cp mysql:/etc/mysql/my.cnf /mysql/mysql_conf/my.cnf
停止容器 删除容器
docker rm -f mysql
映射启动 mysql镜像 --privileged=true 是对容器赋予权限
-v是将容器内部的文件映射到外部
docker run --name mysql --privileged=true
-v /mysql/mysql_conf/my.cnf:/etc/mysql/my.cnf
-v /mysql/mysql_data:/var/lib/mysql
-e MYSQL_ROOT_PASSWORD=123456
-p 3306:3306 -d docker.io/mysql
启动完毕后 没有设置密码加密方式和远程连接所有外部不能连接 进入镜像
docker exec -it CONTAINER_ID /bin/bash
进入mysql
mysql -h127.0.0.1 -uroot -p123456
如果无法远程连接的话复制下面的话即可
alter user 'root'@'%' identified with mysql_native_password by '123456';