上一篇写了访问局域网内其他主机的虚拟机上的项目 ,现在说说访问局域网内其他主机的虚拟机上的数据库和缓存

  博主使用的linux是Ubuntu16.04:

  

  一、安装数据库和缓存

  这里连接的数据库和缓存以mysql和redis为例

  安装mysl:sudo apt install mysql-server-5.7  

  安装redis:sudo apt install redis-server

  安装mysql可以选择其它版本,这里使用的是mysql5.7,安装过程会让你输入root用户的密码,这里的密码我选择直接输入123456,输入后等待安装完成就可以了

  

  二、验证安装与配置

  验证是否正确,只需要确定在虚拟机本地可以使用即可,不过首选要确定mysql和redis的服务是启动的

  分别输入:service mysql status  和 service redis-server status  查看mysql和redis的服务是否启动,没有则可使用 service 服务名 start 启动服务

  

  验证mysql

  输入 mysql -h localhost -u root -p 回车之后输入密码,看是否可以进入mysql命令行界面:

  

  注意,到这里说明mysql已经安装好了,但是我们要做一点小小的改动,因为root用户默认只有本地登录的权限,而我们是要使用局域网内的其他主机访问,这个就是一个远程访问,那么root就不能用了,当然,我们可以新增一个用户来解决问题,但是还是觉得使用root用户来做方便点,我们在上面的mysql命令行输入 grant all privileges on *.* to 'root'@'%' identified by '123456'; 再使用 flush privileges; 刷新权限即可

  

  另外,mysql默认只能本地访问的,要想能远程访问,需要修改一下配置,先进入/etc/mysql目录

  

  然后分别在mysql.cnf,my.cnf和conf.d,mysql.conf.d目录下的配置文件中找bind-address节点,在签名加#号将它注释掉,我的是在mysql.conf.d下的mysqld.cnf

  

  保存退出后,重启mysql:service mysql restart

  

  验证redis

  验证redis只需要输入 redis-cli 看能否进入redis脚手架的命令界面即可  

  

  另外,redis默认也是只支持本地访问的,所以需要修改一下配置,找到redis的配置文件,注释掉bind就可以了

  输入:sudo vim /etc/redis/redis.conf

  

  保存退出后重启redis: service redis-server restart

  

  三、配置端口转发

  博主的虚拟机是挂在Vmware上的,所以端口转发需要在VMware上进行

  打开VMware,菜单栏=》编辑=》虚拟网络编辑器

  选择NAT模式的网络类型,如果没有就添加,再选择NAT设置

  

  在设置窗口中点击端口转发的添加按钮

  

  然后分别添加mysql和redis的端口转发配置

         

  添加完成是这样的

  

  然后一路确定保存之后可以了。

  局域网内其他主机访问当前主机的3307端口,就会被转发到虚拟机上的3306端口,从而可以访问到虚拟机的mysql数据路了

  局域网内其他主机访问当前主机的6378端口,就会被转发到虚拟机上的6379端口,从而可以访问到虚拟机的redis了

访问局域网内其他主机的VMware虚拟机上的mysql数据库和redis缓存的更多相关文章

  1. Windows 上连接本地 Linux虚拟机上的 mysql 数据库

    查看本机ip ifconfig  查看当前的 3306 端口状态 netstat -an|grep 3306 当前是外部无法连接状态 修改访问权限 默认的 mysql 是只能本机连接, 因此需要修改配 ...

  2. 局域网内其他主机如何访问运行在宿主机的虚拟机中的Django项目(转)

    局域网内其他主机如何访问运行在宿主机的虚拟机中的Django项目     1.在宿主机cmd中查看宿主机的ip(注意区分主机中虚拟机的ip) 我连的是无线,IP如下 2.在Django项目的mysit ...

  3. 允许局域网内其他主机访问本地MySql数据库

    mysql的root账户,我在连接时通常用的是localhost或127.0.0.1,公司的测试服务器上的mysql也是localhost所以我想访问无法访问,测试暂停. 解决方法如下: 1,修改表, ...

  4. 网络基础 利用vnc viewer访问在vmware虚拟机上的linux

    利用vnc viewer访问在vmware虚拟机上的linux by:授客 QQ:1033553122 Linux服务器为架设在VMware之上的虚拟机,那么可以直接使用VMware自带的vnc,而不 ...

  5. arp命令(windows ),nmap查看局域网内所有主机IP和MAC

    ARP命令详解 ARP是一个重要的TCP/IP协议,并且用于确定对应IP地址的网卡物理地址.实用arp命令,我们能够查看本地计算机或另一台计算机的ARP高速缓存中的当前内容.此外,使用arp命令,也可 ...

  6. VMware虚拟机上网络连接(network type)的三种模式--bridged、host-only、NAT

    VMware虚拟机上网络连接(network type)的三种模式--bridged.host-only.NAT VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络地址转换 ...

  7. 用physdiskwrite在VMware虚拟机上安装m0n0wall【转】

    在一台PC机上安装m0n0wall,相信大家都有经验.一般采用两种方法:1.在一台Windows XP或Windows 2000的PC上,下载physdiskwrite软件和m0n0wall映像文件( ...

  8. VMware虚拟机上网络连接模式bridged(桥接模式)

    VMware虚拟机上网络连接模式bridged(桥接模式)的实质就是虚拟机本身利用主机的网卡对外直接作为一个真实的物理主机存在. 也就是理论上此时的虚拟机和主机没什么关系,只是和主机公用了一块网卡,其 ...

  9. vmware虚拟机上linux操作系统进行tty1~tty6切换方法和具体步骤

    vmware虚拟机上linux操作系统怎样进行tty1~tty6切换? 现象: Linux的终端机(文字)界面与图形界面间的切换热键为: 进入终端机也就是字符界面(tty1-tty6):[Ctrl] ...

随机推荐

  1. 【Linux】【Shell】【Basic】一行代码解决常见问题

    1. 查看可用IP for i in `seq 1 255`; do ping -c 1 10.210.55.$i >> /dev/null; if [ $? -eq 1 ]; then ...

  2. 软件测试人员必备的linux命令

    1 目录与文件操作1.1 ls(初级)使用权限:所有人功能 : 显示指定工作目录下之内容(列出目前工作目录所含之档案及子目录). 参数 : -a 显示所有档案及目录 (ls内定将档案名或目录名称开头为 ...

  3. RestTemplate进行访问分页PageInfo

    废话少说,给你们看代码: //provide的controller @ResponseBody @RequestMapping(value = "details",method = ...

  4. 商城项目的购物车模块的实现------通过session实现

    1.新建购物车的实体类Cart public class Cart implements java.io.Serializable{ private Shangpin shangpin;//存放商品实 ...

  5. Django auth

    auth是django一个自带的用户验证系统,使用它可以减少我们的开发流程. 基本使用 大体流程: 自定义类 from django.contrib.auth.models import Abstra ...

  6. vue cli3.0 首次加载优化

    项目经理要求做首页加载优化,打包后从十几兆优化到两兆多,记下来怕下次忘记 运行report脚本 可看到都加载了那些内容,在从dist文件中index.html 查看首次加载都加载了那些东西,如下图:然 ...

  7. View的简单说明

    一)三个结构体:CGPoint.CGSize.CGRect 1. CGPoint struct CGPoint { CGFloat x; CGFloat y; }; typedef struct CG ...

  8. Iphone开源项目汇总

    扫描wifi信息: http://code.google.com/p/uwecaugmentedrealityproject/ http://code.google.com/p/iphone-wire ...

  9. 控制 Python 类的序列化过程

    问题 有的类是不支持在多进程间传递的,如果非要这么做,可能会引发奇怪的现象.比如下面这段代码: from concurrent.futures import ProcessPoolExecutor, ...

  10. android studio出现 Could not initialize class com.android.sdklib.repository.AndroidSdkHandler

    新的android studio  (4.2)已经不支持旧有的 com.android.tools.build:gradle:2.3.3 了,有些方法和类会找不到. 去build.gradle中把这个 ...