SQLyog、navicat连接虚拟机里面docker容器中的mysql

1、Docker 安装 MySQL

详细的安装过程可见菜鸟教程(https://www.runoob.com/docker/docker-install-mysql.html

1)拉取镜像

docker pull mysql:latest

2)查看本地镜像

docker images

3)运行容器

安装完成后,我们可以使用以下命令来运行 mysql 容器:

$ docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

参数说明:

  • -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
  • MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。

4)安装成功

通过 docker ps 命令查看是否安装成功:

 

2、对mysql添加远程登录(重要)

1)查询出docker容器中mysql的container_id

docker ps 

2)登录mysql容器,其中mysql就是上面查出来的container_id

docker exec -it mysql bash
mysql -uroot -p

3)授权

GRANT ALL ON *.* TO 'root'@'%';

4)刷新权限

flush privileges;

5)此时,还不能远程访问,因为Navicat/sqlou只支持旧版本的加密,需要更改mysql的加密规则

   更改加密规则 password就是启动容器的时候的密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

6)更新root用户密码 

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; 

7)刷新权限并退出

flush privileges;
exit;//退出mysql

示例

3、建立连接

1)首先确定虚拟机IP

详见(https://blog.csdn.net/qq_35854212/article/details/90749650)

在终端输入命令: ifconfig -a 即可,其中centos的ip地址是ens33条目中的inet值,在navicat for MySQL中需要输入的IP

然后选择连接

2)其他注意事项

1、虚拟机中网络适配器要选择桥接模式,可在虚拟机-》设置-》网络适配器中更改

2 、注意虚拟机防火墙的设置(简单点的话可直接将虚拟机中的防火墙关了)

执行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示FirewallD is not running,如下图所示。

centos出现“FirewallD is not running”怎么办

通过systemctl status firewalld查看firewalld状态,发现当前是dead状态,即防火墙未开启。

centos出现“FirewallD is not running”怎么办

通过systemctl start firewalld开启防火墙,没有任何提示即开启成功。

centos出现“FirewallD is not running”怎么办

再次通过systemctl status firewalld查看firewalld状态,显示running即已开启了。

centos出现“FirewallD is not running”怎么办

如果要关闭防火墙设置,可能通过systemctl stop firewalld这条指令来关闭该功能。

centos出现“FirewallD is not running”怎么办

再次执行执行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示success,表示设置成功,这样就可以继续后面的设置了。

centos出现“FirewallD is not running”怎么办步骤阅读

要使用 SQLyog 连接到运行在 Windows 虚拟机上的 MySQL 数据库,请按照以下步骤进行操作: 1. 确保您的虚拟机已运行,并且 MySQL 数据库已正确安装和配置。 2. 在本地计算机上下载和安装 SQLyog 客户端。您可以从 SQLyog 官方网站下载适用于 Windows 的客户端版本。 3. 打开 SQLyog 客户端,在连接管理器点击 "New"(新建)按钮。 4. 在连接属性,输入以下详细信息: - Connection Name(连接名称):为连接指定一个名称,以便于识别。 - MySQL Hostname(MySQL 主机名):输入虚拟机的 IP 地址。 - MySQL User(MySQL 用户名):输入在虚拟机上设置的 MySQL 用户名。 - MySQL Password(MySQL 密码):输入对应的 MySQL 用户名的密码。 - MySQL Port(MySQL 端口):默认为 3306,如果您的虚拟机上使用了不同的端口,请相应地进行更改。 5. 点击 "Test Connection"(测试连接)按钮,以确保能够成功连接虚拟机上的 MySQL 数据库。 6. 如果测试连接成功,点击 "Save"(保存)按钮保存连接设置。 7. 在连接管理器选择您刚刚创建的连接,并点击 "Open"(打开)按钮,以连接虚拟机上的 MySQL 数据库。 现在,您应该能够使用 SQLyog 客户端连接到运行在 Windows 虚拟机上的 MySQL 数据库了。请确保您已正确配置虚拟机的网络设置,并且在虚拟机上设置了适当的 MySQL 用户权限和凭据。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值