O sistema que uso é:
- CentOS 7 (servidor de nuvem Tencent)
- macOS 10.14
1. Premissa operacional
- Instale o Docker
- Leia este tutorial com paciência
2. Etapas de operação
- Criar contêiner
docker pull mysql:5.7 # 拉取mysql5.7的镜像,我是用的是5.7 #docker pull mysql:latest # 拉取mysql8.0+的镜像
- 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
- 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
- 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)