部署 MySQL 容器

116 阅读1分钟

部署 MySQL 容器

官方文档

hub.docker.com/_/mysql?tab…

安装步骤

  1. 拉取 MySQL 镜像:docker pull mysql,默认拉取最新版本,指定版本:docker pull mysql:5.7
  2. 启动容器:docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=1234 -e TZ=Asia/Shanghai --restart always mysql
    • d 后台运行容器并打印容器 id ,Run container in background and print container ID
    • p 将容器端口映射到宿主机,冒号前为宿主机端口,冒号后为容器端口, Publish a container's port(s) to the host
    • name 容器名称
    • e 设置容器环境变量
    • --restart 容器重启策略,具体参数值参考 docs.docker.com/engine/cont…
  3. 查看容器:docker ps
  4. 如果使用 navicat 12 连接,可能会报错Authentication plugin 'caching_sha2_password' cannot be loaded,需要修改 MySQL 加密方式
    1. 进入容器docker exec -it mysql bash
    2. 登录 MySQL mysql -u root -p
    3. 修改加密方式ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '1234';
    4. 这一步可以不用, navicat 登录容器中 MySQL 属于远程登录,不需要修改本地帐号的加密方式ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '1234';
    5. 刷新权限FLUSH PRIVILEGES;,可有可无
  5. 如果在运行容器时没有设置TZ,会发现 MySQL 中时间不是北京时间,还需要修改时区,百度 linux 修改时区