ubuntu虚拟机安装包括jdk,mysq,tomcat环境

2023-10-12 13:30

本文主要是介绍ubuntu虚拟机安装包括jdk,mysq,tomcat环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Ubuntu20.04虚拟器安装

安装过程需要包括配置静态ip,启动ssh远程连接,和文件传输,配置常用的jdk,python等编程语言的开发环境安装配置mysql数据库,以及将ubuntu配置为web服务器的过程。使用的ubunt版本为20.04。

配置静态ip

虚拟机默认安装时dhcp协议,就是同一局域网下有主机自动分配ip给用户(虚拟机)。需要将其改为静态避免出现变动。

系统默认配置(有的可能不一样,没有ethernets内容):

network:ethernets:ens33:dhcp4: yesaddresses: []version: 2

配置成如下后面内容:(用管理员账号root,一般用户无法更改配置内容)

每个人的ip时不一样的将其配置为dhcp分配的一个就可以了,配置的相关信息可以通过如下方式查看:

在这里插入图片描述

通过ip addr查看dhcp分配的ip,结合上面的信息进行配置如下:

在这里插入图片描述

注意要找到该系统文件,本来就有的,不是新文件,不同版本文件名可能不一样。配置完成后输入sudo netplan apply

ubuntu配置静态ip

应用网络配置后查看网络的连通性:ping [自己主机号]

在这里插入图片描述

ctrl + c 停止,如上图配置成功。

SSH远程连接

在本机上测试同一局域网下虚拟机的连通性:

在这里插入图片描述

为什么在window上可以ping同虚拟机的网络联通性呢?

Ping 的原理是 ICMP 协议.ICMP 的全称是 Intent Control Message Protocol, 中文过来就是 互联网控制报文协议。它是互联网协议族的核心协议之一。它用于TCP/IP网络中发送控制消息,提供可能发生在通信环境中的各种问题反馈,通过这些信息,使管理者可以对所发生的问题作出诊断,然后采取适当的措施解决。

Vmware工具 为我们提供了三种网络工作模式,分别是:Bridged(桥接模式)、NAT(网络地址转换模式)、Host-only(仅主机模式)。

在这里插入图片描述

VMware 虚拟机三种网络模式详解感谢作者https://www.cnblogs.com/cnjavahome/p/11266931.html

ping后就在winodw上用软件连接虚拟机了。如Xshell远程连接软件。如下:

虚拟机上who命令查看当前用户名:

在这里插入图片描述

Xshell连接部分就不叙述了,主要描述遇到的问题:

当信息无误的填写后去连接不上:

在这里插入图片描述

也不知道什么原因,看到这位博主才解决,感谢@柳风123的文章Xshell连接虚拟机中的Ubuntu

Xshell等远程连接软件都是通过ssh协议连接的,SSH 为 [Secure Shell]的缩写,SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

在虚拟机上开启ssh远程连接:

sudo service sshd start
sudo /etc/init.d/ssh start

如果出现Failed to start sshd.service: Unit sshd.service not found.类似这种命令就需要安装该服务:

sudo apt install openssh-server

安装成功后默认就会启动服务,输入ps -e | grep ssh命令查询ssh服务,出现sshd就完成了。

在这里插入图片描述

接下来就可以通过Xshell连接了,弹出以下信息表示连接成功(ssh服务默认端口号为22):

在这里插入图片描述

在这里插入图片描述

Xshell连接ubuntu

FTP协议传输文件

虚拟机上没有可视化界面,不便于文件管理,通过使用FTP的软件像虚拟机传送文件如Xftp(其连接和Xshell差不多,都是通过):

在这里插入图片描述

FTP与SFTP

配置jdk环境

这里以jdk环境为例,其他语言配置的过程都一样。

上传或下载jdk的压缩包:

在这里插入图片描述

#解药到当前目录
tar -zxvf test.tar.gz#解压到指定目录
tar -zxvf test.tar.gz  -C /home/user/    #从系统目录写全

在这里插入图片描述

Ubuntu各种压缩文件解压命令大全

cd 切换到解压的jdk的bin目录,输入pwd查看当前目录,并复制

配置environment文件 vi /etc/environment先切换root用户

#path后追加 :$JAVA_HOME/bin
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:$JAVA_HOME/bin"#set java environment
export JAVA_HOME=/home/server/Java/jdk1.8.0_11
export JRE_HOME=$JAVA_HOME/jre

输入source /etc/environment命令使配置文件生效。

配置profile文件 vi /etc/profile

#set Java environment
#在文件后面追加
export JAVA_HOME=/usr/local/java/jdk1.8.0_271   #jsk的bin目录完整路径,刚复制的部分
export JRE_HOME=$JAVA_HOME/jre  
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH  
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH 

输入source /etc/profile命令使配置文件生效。

查看是否配置成功java -versionjavac -version

在这里插入图片描述

ubuntu配置jdk环境变量

python语言配置步骤基本一样(只有解析器路径)。

除了自己配置环境变量外,还有系统默认配置:

# 安装python3,通过命令行安装系统会自动配置环境变量
sudo apt-get install python3#安装python2
sudo apt-get install python# 安装的python3在/usr/bin下,为python3建立软连接
sudo ln -s /usr/bin/python3 /usr/local/bin/python3  # 在系统根目录下不是/home目录# 安装pip3
sudo apt-get install python3-pip# 更新pip
sudo pip3 install --upgrade pip

重启后环境变量自动生效。输入python或python3能进入python编辑环境就行了。

安装mysql数据库

下载数据库

# 下载数据库
sudo apt install mysql-server#安装出错就跟新系统再次安装
sudo apt update#sudo 是赋予root权限,切换超级用户root后就不需要了

刚学数据运维,配置过程参考的资料:

  1. ubuntu安装mysql感谢作者

  2. Ubuntu20.04安装MySQL8.0配置远程连接感谢作者@哲这这

  3. Ubuntu20.04安装Mysqlg感谢作者@風の住む街~

  4. Ubuntu配置访问权限感谢作者@lduzhenlin

输入sudo systemctl status mysql查看mysql是否启动,出现下面active(running)即为正在运行:

在这里插入图片描述

mysql启动后对其进行初始化

初始化最重要的就是配置用户名和密码输入sudo mysql_secure_installation指令:

进入第一个配置:

在这里插入图片描述

是否进行密码的强校验?no

第二个配置:

在这里插入图片描述

为数据库设置密码。要输入两次,密码不会显示出来,尽量用字母和数字,不要出现其他字符。上面已经说了为root设置密码,默认用户是root。

第三个配置:

在这里插入图片描述

是否删除匿名用户:N

第四个配置:

在这里插入图片描述

是否禁止远程连接? no,命令行操作数据库不方便,需要借助可视化工具,需要远程连接。

第五个配置:

在这里插入图片描述

是否删除测试数据库?删不删都可以。

第六个配置:

在这里插入图片描述

配置是否生效? y

配置完成:

在这里插入图片描述

总结以下主要又以下几个配置项:

#1
VALIDATE PASSWORD PLUGIN can be used to test passwords...
Press y|Y for Yes, any other key for No: N (选择N ,不会进行密码的强校验)#2
Please set the password for root here...
New password: (输入密码)
Re-enter new password: (重复输入)#3
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them...
Remove anonymous users? (Press y|Y for Yes, any other key for No) : N (选择N,不删除匿名用户)#4
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network...
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : N (选择N,允许root远程连接)#5
By default, MySQL comes with a database named 'test' that
anyone can access...
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : N (选择N,不删除test数据库)#6
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y (选择Y,修改权限立即生效)

连接数据库

检查数据库状态:

systemctl status mysql.service和之前一样,启动后就可以访问数据了。

和window上一样mysql -u root -p命令访问,注意要是root用户下,普通用户没权限,或添加sudo前缀:

在这里插入图片描述

配置远程访问

使用Navicat软件对数据库访问,知道ip就可以了:

在这里插入图片描述

确定后却报错:

在这里插入图片描述

故障原因:默认状态下Mysql不允许除本机外的主机访问(SSH除外),修改mysqld.cnf文件即可解决问题,但修改文件后可能会导致安全问题,所以建议配置ufw防火墙。

在这里插入图片描述

  1. 连接虚拟机mysql报错10061
  2. bind-address参数配置要求,以及怎么去使得mysql能够允许远程的客户端访问

解决方案:

  1. 更改mysql默认配置允许远程访问

    # 编辑配置文件
    sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf#修改默认配置允许远程访问
    bind-address		= 127.0.0.1 [虚拟机ip地址]   #中间用空格隔开
    
  2. 重启mysql应用配置

    #重启mysql数据库
    sudo /etc/init.d/mysql restart
    
  3. 又出现了新的错

在这里插入图片描述

1130 - Host XXX is not allowed to connect to this MySQL server。

  1. 登录要连接的数据库的主机(虚拟机)

    修改数据库内部信息,将将用户localhost改为%(通配符,允许任何用户访问)

    # 进入数据
    sudo mysql -u root -p#进入user(用户表)修改用户信息,允许所有用户使用数据库
    use mysql;select host from user where user='root';

在这里插入图片描述

  1. 修改用户信息允许需要的ip访问

    # 将localhost改为%允许所有ip访问
    update user set host = '%' where user ='root';#或者insert将允许的ip插入
    insert into user values ('192.168.xxx.xxx');

在这里插入图片描述

  1. 重启mysql,重新连接

    sudo service mysql restart

Host XXX is not allowed to connect to this MySQL server

Host ‘192.168.1.3’ is not allowed to connect to thisMySQL server

  1. 本以为可以连接成功了,结果。。。。出现了以下错误 ,继续改错吧

在这里插入图片描述

上网查了很多资料,发现是由于版本的问题,我使用的是Linux的mysql的加密规则在版本8前后改变了。mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,所以可以升级navcat的版本或者改变mysql的加密规则

#输入该指令查看加密规则
select host,user,plugin,authentication_string from mysql.user;#是caching_sha2_password而不是mysql_native_password

在这里插入图片描述

加密规则改变了,navcat的还是原来的,所以升级以下或者修改加密规则即可。

  • 修改加密规则
  • client does not support authentication protocol requested by server
  • Navicat连接mysql出现1251Client does not support authentication protocol requested by server的解决方案
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'newpassword'; #更新一下用户的密码 root用户密码为newpassword

为了更上时代去升级版本了!

  1. 本以为跟新后就可以连接了,结果又报错,真的服了!

在这里插入图片描述

这次原因是密码错误,但是我是输的正确的呀,是由于数据库中没有密码:

select host, user, authentication_string, plugin from user;查询发现,密码那行为空的,

在这里插入图片描述

sql语句跟新或插入一个密码即可。当我跟新以一个密码后连接成功:

在这里插入图片描述

参考教程:

  1. Ubuntu20.04安装Mysql

  2. ubuntu20.04安装mysql8.0

  3. ubuntu安装mysql8.0并远程连接

  4. 在Ubuntu 20.04上安装MySQL教程

虚拟机模拟远程服务器

模拟远程服务器最重要的就是web服务器,浏览器发送http请求,需要服务器来解析。

为了避免配置环境变量,直接在虚拟机用shell命令下载。

下载并安装Tomcat

#更新系统
sudo apt update
#查询tomcat版本,选择安装版本

在这里插入图片描述

#安装tomcat9-admin
sudo apt install tomcat9

使用apt-get install自动安装的就不需要配置环境变量了,配置环境变量的目的是告诉系统,有这样一些资源,典型的是你使用tab键能够找到可以运行的程序,如果这个程序的位置没有设置在path环境变量里面就无法自动提示。像上传,解压,自己配置了路径虽然也能允许但系统并不知道,所以需要配置环境变量。

安装完成会出现这样的ERROR,输入sudo apt update后再次安装

在这里插入图片描述

安装完成后会自动开启服务,输入ss -ltn查看8080端口是否占用,tomcat默认使用8080端口:

在这里插入图片描述

如上图所示,tomcat已经启动,通过下面的指令对tomcat实现开关:

# 开启tomct
sudo systemctl enable tomcat9
# 关闭tomcat
sudo systemctl disable tomcat9

在主机上的浏览器输入[ip]:8080端口,出现下图所示内容就可以了:

在这里插入图片描述

大致意思是:

它工作了!

如果您通过 Web 浏览器看到此页面,则表示您已成功设置 Tomcat。 恭喜!

这是默认的 Tomcat 主页。 它可以在本地文件系统上找到:/var/lib/tomcat9/webapps/ROOT/index.html

Tomcat 的老手可能会很高兴得知这个 Tomcat 系统实例安装在 :CATALINA_HOME : /usr/share/tomcat9以及CATALINA_BASE:/var/lib/tomcat9,遵循的规则在/usr/share/doc/tomcat9-common/RUNNING.txt.gz压缩包中。

如果您还没有这样做,您可以考虑安装以下软件包:

tomcat9-docs:该软件包安装了一个允许在本地浏览 Tomcat 9 文档的 Web 应用程序。 安装后,您可以通过单击此处访问它。

tomcat9-examples:这个包安装了一个允许访问 Tomcat 9 Servlet 和 JSP 示例的 Web 应用程序。 安装后,您可以通过单击此处访问它。

tomcat9-admin:这个包安装了两个 Web 应用程序,可以帮助管理这个 Tomcat 实例。 安装后,您可以访问 manager webapp 和 host-manager webapp。

注意:出于安全原因,使用 manager webapp 仅限于角色为“manager-gui”的用户。 host-manager webapp 仅限于角色为“admin-gui”的用户。 用户在 /etc/tomcat9/tomcat-users.xml 中定义。

参考文档:

  1. 如何在 Ubuntu 20.04 上安装 Tomcat 9感谢作者@雪梦科技
  2. Ubuntu20.04 安装tomcat感谢作者@白不懂黑的静

相关目录及作用说明:(默认安装,自己配置环境的不一样)

  • /etc/tomcat9- 全局配置
  • /usr/share/tomcat9/- 程序主目录
  • /usr/share/tomcat9/conf/Catalina/localhost/- 本机部署的 Catalina 配置
  • /var/lib/tomcat9/- 工作主目录,
  • /var/lib/tomcat9/webapps- (web文件实际存放于此)

安装了tomcat9-admin的需要在全局配置中创建用户才可以访问admin管理页面:

  • /etc/tomcat9下是 tomcat 的全局配置,这里需要修改 tomcat-users.xml添加新管理员

启动和关闭tomcat

除了上面命令关闭tomcat外(默认配置了环境变量)还可以通过.sh脚本关闭:

  • /usr/share/tomcat9是 tomcat 的主程序目录。
  • /usr/share/tomcat6/bin/startup.sh是开启命令。(window上也有,不过用不上,用.bat开启)
  • /usr/share/tomcat6/bin/shutdown.sh是关闭命令。

其目录和window上差不多:

在这里插入图片描述

存放开关tomcat脚本的目录:

在这里插入图片描述

localhost/```- 本机部署的 Catalina 配置

  • /var/lib/tomcat9/- 工作主目录,
  • /var/lib/tomcat9/webapps- (web文件实际存放于此)

安装了tomcat9-admin的需要在全局配置中创建用户才可以访问admin管理页面:

  • /etc/tomcat9下是 tomcat 的全局配置,这里需要修改 tomcat-users.xml添加新管理员

启动和关闭tomcat

除了上面命令关闭tomcat外(默认配置了环境变量)还可以通过.sh脚本关闭:

  • /usr/share/tomcat9是 tomcat 的主程序目录。
  • /usr/share/tomcat6/bin/startup.sh是开启命令。(window上也有,不过用不上,用.bat开启)
  • /usr/share/tomcat6/bin/shutdown.sh是关闭命令。

其目录和window上差不多:

在这里插入图片描述

存放开关tomcat脚本的目录:

在这里插入图片描述

注意是运行shutdown.sh脚本而不是shutdown

这篇关于ubuntu虚拟机安装包括jdk,mysq,tomcat环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/196153

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

Centos7安装JDK1.8保姆版

工欲善其事,必先利其器。这句话同样适用于学习Java编程。在开始Java的学习旅程之前,我们必须首先配置好适合的开发环境。 通过事先准备好这些工具和配置,我们可以避免在学习过程中遇到因环境问题导致的代码异常或错误。一个稳定、高效的开发环境能够让我们更加专注于代码的学习和编写,提升学习效率,减少不必要的困扰和挫折感。因此,在学习Java之初,投入一些时间和精力来配置好开发环境是非常值得的。这将为我

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

常用的jdk下载地址

jdk下载地址 安装方式可以看之前的博客: mac安装jdk oracle 版本:https://www.oracle.com/java/technologies/downloads/ Eclipse Temurin版本:https://adoptium.net/zh-CN/temurin/releases/ 阿里版本: github:https://github.com/

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

高并发环境中保持幂等性

在高并发环境中保持幂等性是一项重要的挑战。幂等性指的是无论操作执行多少次,其效果都是相同的。确保操作的幂等性可以避免重复执行带来的副作用。以下是一些保持幂等性的常用方法: 唯一标识符: 请求唯一标识:在每次请求中引入唯一标识符(如 UUID 或者生成的唯一 ID),在处理请求时,系统可以检查这个标识符是否已经处理过,如果是,则忽略重复请求。幂等键(Idempotency Key):客户端在每次

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能