搜索镜像
[root@localhost ~]# docker search mysql
拉取镜像
[root@localhost ~]# docker pull mysql
查看拉取的镜像:
通过镜像创建容器
docker run -di --name=mjw_docker_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=1234 mysql
参数:
-p : 指定端口映射
-e : MYSQL_ROOT_PASSWORD环境变量是root用户登陆密码。
登陆容器
[root@localhost ROOT]# docker exec -it mjw_docker_mysql /bin/bash
root@e8e89f794875:/# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.13 MySQL Community Server - GPL
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
客户端无法连接mysql
这里的mysql版本为8.0 加密方式与之前不同,很多客户端工具无法连接。或者未开启远程访问。(还有防火墙就不说了)
解决:
修改本地连接密码为password
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
修改远程连接密码为password
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
开启远程访问权限
GRANT ALL ON *.* TO 'root'@'%';
刷新权限
flush privileges;
再进行连接基本就没什么问题了