Docker方式安装

在命令行下运行

docker run -d -p 3306:3306
--restart always
--privileged=true
--name mysql
-e MYSQL_USER="test"
-e MYSQL_PASSWORD="test"
-e MYSQL_ROOT_PASSWORD="root"
-v /data/docker/mysql/data/conf:/etc/my.cnf
-v /data/docker/mysql/data/db:/var/lib/mysql
mysql
--default-authentication-plugin=mysql_native_password

参数说明

 –restart always  开机启动
 -e MYSQL_USER=”test”  添加用户test
 -e MYSQL_PASSWORD=”test”  设置test的密码为test
 -e MYSQL_ROOT_PASSWORD=”root” 设置root的密码为test
 –privileged=true  提升容器内权限(如果没有添加--privileged=true参数,容器创建后可能不能正常启动)
 -v /data/docker/mysql/data/conf:/etc/my.cnf  映射配置文件
 -v /data/docker/mysql/data/db:/var/lib/mysql  映射数据目录
 --default-authentication-plugin=mysql_native_password  更改默认的身份认证插件

docker-compose方式安装

创建 docker-compose.yml文件

version: '3'
services:
  db:
    #构建mysql镜像
    image: mysql
    container_name: mysql # 容器名
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: root #root管理员用户密码
      MYSQL_USER: test   #创建test用户
      MYSQL_PASSWORD: test  #设置test用户的密码
    ports:
    - '3306:3306'  #host物理直接映射端口为6606
    volumes:
    #mysql数据库挂载到host物理机目录
    - "/data/docker/mysql/data/db:/var/lib/mysql"
    #容器的配置目录挂载到host物理机目录
    - "/data/docker/mysql/data/conf:/etc/mysql/conf.d"

在 docker-compose.yml文件下的目录下,执行下面命令

docker-compose up
09-22 06:25