要用到mysql 数据库,原本想在本机装,后来想一想仍是有点污染环境,既然有docker为何不用呢?
因而开启了采坑之旅,与其说采坑,倒不如说看文档不仔细看。mysql
docker pull mysql:5.7 docker run --name mysql -d mysql:5.7 docker ps
竟然不暴露端口,真是醉了,和mssql差远了,mssql docker版直接暴露端口。sql
docker rm -f mysql docker run --name mysql -d -p 3306:3306 mysql:5.7 docker ps
此次终于用客户端连上了,可是没有root的密码。
经过查文档得知:会生成一个随机的root密码
Once initialization is finished, the command's output is going to contain the random password generated for the root user;
能够经过docker
docker logs <containerName> 2>&1 | grep GENERATED
获得密码。
数据库
进入容器:dom
docker exec -it <containerName> mysql -uroot -p
接下来会提示你输入密码。成功进入。
3d
就能够执行sql cmd了。
这时能够修改密码code
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
若是我想在建立容器的时候指定密码怎么办?
因而我在docker官方文档上找到了答案。地址。你要设置变量,就能够生效了。blog
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=<your pwd> --name mysql mysql:5.7
这样就OK了。文档
待后续更新。get
今天踩到坑了,容器丢了以后数据也丢了。
docker run -d -p 3306:3306 -v /mysql/path:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=<your pwd> --name mysql mysql:5.7