栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

docker部署mysql

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

docker部署mysql

1.搜索镜像: docker search 镜像名称
    docker search mysql;
2.拉取镜像:docker pull 镜像名称                                                                                                          docker pull mysql;

3.创建容器: mysql8是镜像名称                                                                                                             sudo docker run -p 3307:3306 --name mysql8 -v /my/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql8

-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
-e 代表添加环境变量 MYSQL_ROOT_PASSWORD 是root用户的远程登陆密码(如果是在容器中使用root登录的话,那么其密码为空)                                                                                                 -v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件
映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t
两个参数,创建后就会自动进去容器)。
操作容器MYSQL:
# 容器中操作MySQL 命令
docker exec -it mysql8  /bin/bash
# 登录容器里面的mysql
mysql -u root -p
然后输入密码
 

外部连接mysql:
注意: 最新的mysql外部连接需要授权
登录到mysql里运行命令:
CREATE USER 'user'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

1.因为是在linux虚拟机上装的docker,查虚拟机的ip地址,用命令ifconfig
然后用navicat连接,主机是linux虚拟机ip,端口是宿主机端口3307,帐号是授权的user和密码
登录成功

注意:又遇到问题
用授权的用户登录是成功了,但是创建数据库报错1044.
因此还是要用root登录,因此对docker容器的mysql对root授权执行以下命令:
1,进行授权远程连接(注意mysql 8.0跟之前的授权方式不同)
  GRANT ALL ON *.* TO 'root'@'%';                                 此时,还不能远程访问,因为Navicat只支持旧版本的加密,需要更改mysql的加密规则                        2,更改加密规则                                                                                                                                 ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;        3,更新root用户密码                                                                                                                   ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
4.刷新权限:
  flush privileges;

用root连接后就可以创建数据库了。

 附上我mysql的版本。

 

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/361513.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号