docker mysql允许远程连接_Docker 运行MySQL,开启远程访问

1、下载MySQL docker镜像,运行mysql

docker pull mysql/mysql-server:latest

8a3980969b3b87dea93a2ae20583a577.png

执行docker run命令,运行mysql

docker run --name sc-mysql -v /data/mysql-8.0:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql/mysql-server:latest

2、查看MySQL镜像运行状态

docker ps -a | grep mysql

d0a834f81aaf6e28ad52f6c1e71812d1.png

3、用容器id进入MySQL容器,执行mysql命令登录MySQL

docker exec -it d498d9f00612 /bin/bash

mysql -uroot -p123456

e4d9d45587ab71ed6ed07cea48b7a0d2.png

4、查看用户信息

select  host, user, authentication_string, plugin from mysql.user;

4832bc40ff76d67102da19e7152ac7dc.png

5、修改 root 用户 ,把host修改为%

use mysql;

update user set host = '%' where user = 'root';

FLUSH PRIVILEGES;

alter user 'root'@'%' identified with mysql_native_password by '123456';

b42e11fd3545befbcff696f0339029e0.png

用Navicat 测试连接

f9f39a6dda83915a31025841d742d3fa.png

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 若要在Docker镜像中启用MySQL远程连接,你可以按照以下步骤进行设置。首先,使用下面的命令启动一个MySQL容器,并设置相关的数据卷和环境变量: docker run -d -p 3306:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:latest 其中,-p参数用于设置端口映射,将主机的3306端口映射到容器的3306端口;-v参数用于设置数据卷,将主机的配置文件目录映射到容器的/etc/mysql/conf.d目录,将主机的数据目录映射到容器的/var/lib/mysql目录;-e参数用于设置环境变量,这里设置了MySQL的root密码为123456。 接下来,你可以使用MySQL客户端连接到这个容器中的MySQL实例。如果你在本机上使用MySQL客户端,可以使用以下命令连接到容器: mysql -h 127.0.0.1 -P 3306 -u root -p 这里,-h参数指定连接的主机为127.0.0.1,-P参数指定连接的端口为3306,-u参数指定连接的用户名为root,-p参数表示需要输入密码。 如果你希望从远程主机连接到这个容器中的MySQL实例,可以将"-h 127.0.0.1"修改为容器所在主机的IP地址或域名。 请注意,为了安全起见,建议将容器的MySQL实例绑定到特定的IP地址或仅在特定网络接口上监听,以限制远程连接的访问范围。这可以通过修改MySQL的配置文件来实现,具体的配置方法可以参考Docker官方文档中关于MySQL容器的说明。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值