在虚拟机中运行数据库是很常见的一个操作, 这样可以让主机的后台进程干净,且隔离开发环境和主机环境。但要从主机连接虚拟机上的数据库需要一些简单的配置,这里就介绍下如何连接虚拟机中的mysql数据库。

配置

主机系统:macOS 虚拟机:vmware Fusion 虚拟机操作系统: Ubuntu20.04 数据库:mysql 8.0

操作

在ubuntu上运行 ip address 查看虚拟机的ip地址

我这里运行结果如下:

1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

valid_lft forever preferred_lft forever

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: ens33: mtu 1500 qdisc fq_codel state UP group default qlen 1000

link/ether 00:0c:29:07:85:a0 brd ff:ff:ff:ff:ff:ff

inet 192.168.106.128/24 brd 192.168.106.255 scope global dynamic noprefixroute ens33

valid_lft 1645sec preferred_lft 1645sec

inet6 fe80::a45b:ab06:208a:275a/64 scope link noprefixroute

valid_lft forever preferred_lft forever>

ip地址是192.168.106.128

打开mysql的配置文件,在我的机器上是/etc/mysql/mysql.conf.d/mysqld.cnf

找到bind-address = 127.0.0.11这一行,这一行的作用是指定mysql只来自监听localhost的请求,这样你从主机是连不了该数据库的。所以这里要注释掉该行。

此时你就可以在主机连该数据库了,切换到主机系统,输入mysql -h ipOfVM -u root -p, 就可以连上虚拟机中的数据库了。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐