Docker (3) - Instale o MySQL no Docker

O sistema que uso é:

  • CentOS 7 (servidor de nuvem Tencent)
  • macOS 10.14

1. Premissa operacional

  1. Instale o Docker
  2. Leia este tutorial com paciência

2. Etapas de operação

  1. Criar contêiner
docker pull mysql:5.7 # 拉取mysql5.7的镜像,我是用的是5.7
#docker pull mysql:latest # 拉取mysql8.0+的镜像
  1. Inicie o contêiner
docker run -p 3306:3306 --name mysql MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
parâmetro valor efeito
corre Execute um contêiner com base em uma imagem
-p 3306: 3306 Mapeie a porta 3306 no contêiner para a porta 3306 do host (porta do contêiner a ser mapeada: porta do host a ser mapeada)
-nome mysql Dê um nome ao recipiente
-v Volume de montagem
-e MYSQL_ROOT_PASSWORD = 123456 Crie variáveis ​​de ambiente para o contêiner
-d mysql: 5.7.19 A imagem usada pelo contêiner
  1. Verifique se o contêiner MySQL foi iniciado
docker ps

Se você puder ver informações semelhantes às seguintes, significa que o contêiner do MySQL foi iniciado.

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
e8d8030753f3        mysql:5.7           "docker-entrypoint.s…"   6 seconds ago       Up 4 seconds        0.0.0.0:3306->3306/tcp, 33060/tcp   mysql
  1. Alterar senha (permitir acesso externo)

Primeiro, use o comando Docker para entrar no contêiner mysql

docker exec -it mysql /bin/bash

Selecione a biblioteca mysql para ver algumas informações na tabela do usuário

SELECT host,user FROM mysql.user;

Contanto que as informações retornadas pelo mysql sejam as seguintes

mysql> select host,user from mysql.user;
+-----------+---------------+
| host      | user          |
+-----------+---------------+
| %         | root          |
| localhost | mysql.session |
| localhost | mysql.sys     |
| localhost | root          |
+-----------+---------------+

Entre eles, se o host do root tiver%, podemos conectar remotamente ao mysql do servidor (o número da porta é 3306)

Se não houver nenhum resultado acima, você precisa executar a seguinte instrução (as aspas após BY podem ser substituídas pela senha desejada)

USE mysql;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;

Confirme novamente e comece a usar a conexão Navicat depois que estiver correta (software como o SQLyog está disponível)


Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/JikeStardy/article/details/103931548
Recomendado
Clasificación