----------------【推荐】docker配置多个mysql------------------
参考文章:
https://www.cnblogs.com/hello-tl/p/9238298.html
1, docker exec -it mysqlxxx bash
其中mysqlxxx就是自己叫了什么名字,例如:docker run -d -e MYSQL_ROOT_PASSWORD=
123456
--name mysql5.
7
--restart always -v /data/mysql/data5.
7
:/var/lib/mysql -p
3307
:
3306
mysql:
5.7
那么mysqlxxx就是mysql5.7,即docker exec -it mysql5.7 bash
2,
修改权限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
3,离开某个容器
Ctrl+P+Q依然是我认为的最佳用法-离开且不关闭容器
---------------------------------下面是8.0或者最新版的-----------------
- $ docker search mysql (搜索mysql镜像)
- $ docker pull mysql (下载mysql镜像,默认最新版本)
docker run \
--name mysql \
-p 3306:3306 \
--restart=always \
-e MYSQL_ROOT_PASSWORD=密码 \
-v /var/lib/mysql/:/var/lib/mysql/ \
-d mysql \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci
参考文章
https://www.linuxidc.com/Linux/2019-02/157029.htm
------------------------------------------下面是5.7版本的-------------------------------------------
0,查找所有的关于mysql的镜像 docker search mysql
1,下载镜像:sudo docker pull mysql:5.7
2,与本地做映射
sudo docker run --name mysql5.7 -p 3308:3306 -v /usr/local/docker-mysql/cnf3308:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=密码 -d mysql:5.7 --character-set-server=utf8 --collation-server=utf8_general_ci
3,此时是无法连接到mysql的,必须修改成允许远程连接
先进入容器
docker exec -it mysql5.7 bash
再进入数据库(防火墙什么的记得关闭哦)
mysql -u root -p
修改权限:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
尝试远程链接
参考文章
https://www.cnblogs.com/liuyublog/p/9099376.html
-------------------------------镜像加速-------------------------
用xshell复制黏贴运行上面代码。成功之后据说用下面命令看到小尾巴就成功。(然而我的没有,是不是代表我失败了)