1.Docker命令安装

  • 下载MySQL5.7的docker镜像:
docker pull mysql:5.7
  • 使用如下命令启动MySQL服务:
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root  \
-d mysql:5.7
  • 参数说明
    • -p 3306:3306:将容器的3306端口映射到主机的3306端口
    • -v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂在到主机
    • -v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
    • -v /mydata/mysql/data:/var/lib/mysql/:将数据文件夹挂载到主机
    • -e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码

2.Docker Compose安装

编写mysql-compose.yml配置文件,如下

version: '3'
services:
  mysql:
    image: mysql:5.7
    container_name: mysql
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=root
    ports:
      - 3306:3306
    volumes:
      - /mydata/mysql/log:/var/log/mysql
      - /mydata/mysql/data:/var/lib/mysql
      - /mydata/mysql/conf:/etc/mysql

然后在当前目录执行命令:

docker-compose -f mysql-compose.yml up -d

3.其他

  • 进入运行MySQL的docker容器:
docker exec -it mysql /bin/bash
  • 使用MySQL命令打开客户端:
mysql -uroot -proot --default-character-set=utf8
  • 创建mall数据库:
create database mall character set utf8
  • 安装上传下载插件,并将xxx.sql上传到Linux服务器上:
yum -y install lrzsz
  • xxx.sql文件拷贝到mysql容器的/目录下:
docker cp /mydata/xxxx.sql mysql:/
  • 将sql文件导入到数据库:
use mall;
source /xxx.sql;
  • 创建一个reader:123456帐号并修改权限,使得任何ip都能访问:
grant all privileges on *.* to 'reader' @'%' identified by '123456';