Skip to content
  1. docker search mysql 查找mysql
  2. docker pull mysql:版本号(选填)
  3. docker run -p 3306:3306 --name mysql -v /sun/mysql/conf:/ect/mysql/conf.d -v /sun/mysql/logs:/logs -v /sun/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.5.20
    • 命令说明:
      • -p3306:3306 将主机端口映射到docker容器的3306端口上
      • –name mysql 运行服务的名字
      • -v /sun/mysql/conf:/ect/mysql/conf.d 将主机/sun/mysql/conf目录下挂载到etc/mysql/conf.d
      • -v /sun/mysql/logs:/logs 挂载到容器/logs
      • -e MYSQL_ROOT_PASSWORD=123456 初始化root密码
      • -d mysql:8.5.20 后台运行
  4. 注:由于mysql8.0以上密码的加密方式不一样,所以修改之后才能连接数据库
    • docker exec -it mysql /bin/bash 进入容器
    • mysql -uroot -password #登录
    • use mysql; #选择数据库
    • ALTER USER 'root'@'localhost' IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER; #更改加密方式
    • ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新用户密码
    • FLUSH PRIVILEGES; #刷新权限
    • 远程连接将'localhost'换成'%'

Released under the MIT License.