docker查找mysql镜像

docker search mysql

docker拉取mysql8镜像

#安装MySQL8  
docker pull mysql:8.0.16

#默认安装mysql最新版: docker pull mysql

启动MySQL

#创建数据存储目录
mkdir -p /data/docker_volumn/mysql/conf
mkdir -p /data/docker_volumn/mysql/data
mkdir -p /data/docker_volumn/mysql/mysql-files
#设置忽略大小写
docker run -p 3306:3306 --name=mysql \
-v /data/app/docker_volumn/mysql/conf/:/etc/mysql/ \
-v /data/app/docker_volumn/mysql/data:/var/lib/mysql \
-v /data/app/docker_volumn/mysql/mysql-files/:/var/lib/mysql-files \
-e MYSQL_ROOT_PASSWORD=_Admin123 \
-d --privileged=true --restart=unless-stopped mysql:8.0.16 --lower-case-table-names=2

参数说明

  • run run 是运行一个容器
  • -d  表示后台运行
  • -p  表示容器内部端口和服务器端口映射关联
  • –privileged=true 设值MySQL 的root用户权限, 否则外部不能使用root用户登陆。
    忽略大小写:lower-case-table-names=2
  • -v /docker/mysql/conf/my.cnf:/etc/my.cnf 将服务器中的my.cnf配置映射到docker中的/docker/mysql/conf/my.cnf配置
  • -v /docker/mysql/data:/var/lib/mysql  同上,映射数据库的数据目录, 避免以后docker删除重新运行MySQL容器时数据丢失
  • -e MYSQL_ROOT_PASSWORD=_Admin123   设置MySQL数据库root用户的密码
  • –name mysql     设值容器名称为mysql mysql:8.0.16  表示从docker镜像mysql:8.0.16中启动一个容器
  • –character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci 设值数据库默认编码

进如容器

docker exec -it mysql bash

登录MySQL

mysql -uroot -p

创建新用户(用户名: test , 密码: test123)

#mysql8
grant all privileges on *.* to 'root'@'%';
#mysql5
#GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY 'test123' WITH GRANT OPTION;

查看容器日志

docker logs --tail=500 ID
docker logs -f mysql:8.0.16

启停容器内的应用

docker start/stop/restart  ID(CONTAINER ID)
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐