十五、linux之搭建JavaEE环境

server/2024/12/27 2:42:02/

1 概述

如果需要在 Linux 下进行 JavaEE 的开发,我们需要安装如下软件
在这里插入图片描述

2 安装 JDK

安装步骤

    1. mkdir /opt/jdk
mkdir /opt/jdk

在这里插入图片描述

    1. 通过 xftp6 上传到 /opt/jdk 下
      在这里插入图片描述
    1. cd /opt/jdk
      在这里插入图片描述
    1. 解压 tar -zxvf jdk-8u261-linux-x64.tar.gz
tar -zxvf jdk-8u261-linux-x64.tar.gz

在这里插入图片描述
在这里插入图片描述

    1. 创建目录 /usr/local/java
mkdir /usr/local/java 
    1. 移动目录到/usr/local/java 统一管理
mv /opt/jdk/jdk1.8.0_261 /usr/local/java 
    1. 配置环境变量的配置文件(在Linux的任何下都能找到java和javac)
#查看PATH目前的环境变量有哪些
echo $PATH

在这里插入图片描述
编辑etc下的profile 文件

vim /etc/profile 

#找到profile文件的最后输入

 export JAVA_HOME=/usr/local/java/jdk1.8.0_261  #引入到PATH环境变量export PATH=$JAVA_HOME/bin:$PATH  

在这里插入图片描述

 #让新的环境变量生效source /etc/profile 

在这里插入图片描述

测试是否安装成功

  1. 编写一个简单的 Hello.java 输出"hello,world!
vim Hello.java
public class Hello{public static void main(String[] args){System.out.println("Hello,World!");}
}

3 tomcat 的安装

步骤

1、创建目录

#在/opt下创建目录
mkdir /opt/tomcat

在这里插入图片描述
2、使用xftp上传文件到tomcat目录下
在这里插入图片描述
3、解压缩到/opt/tomcat

tar -zxvf apache-tomcat-8.5.59.tar.gz

在这里插入图片描述
4、进入apache目录下

cd apache-tomcat-8.5.59/bin

在这里插入图片描述

5、启动 tomcat ./startup.sh

./startup.sh 

在这里插入图片描述
6、在物理机上ping一下linux的ip
在这里插入图片描述

7、 开放端口 8080

firewall-cmd --permanent --add-port=8080/tcp
#或者
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#重启防火墙
firewall-cmd --reload#查看已开启的端口
firewall-cmd --list-ports 
或者
firewall-cmd  --query-port=8080/tcp
#查看防火墙状态
firewall-cmd --state
#开启防火墙
systemctl start firewalld
#开启端口;zone:作用域
firewall-cmd --zone=public --add-port=8080/tcp --permanent
#重启防火墙
firewall-cmd --reload

在 windows、Linux 下 访问 http://linuxip:8080
在这里插入图片描述
例子:在tomcat的访问文件夹加一个自己的html文件
在这里插入图片描述

demo.html

<!-- tomcat目录下的webapps/ROOT -->
<h3>demo</h3>

在这里插入图片描述

4 idea2020 的安装

步骤

  1. 下载地址: https://www.jetbrains.com/idea/download/#section=windows
    在这里插入图片描述

  2. 解压缩到/opt/idea

mkdir /opt/idea
tar -zxvf ideaIU-2020.2.3.tar.gz

在这里插入图片描述

  1. 启动 idea bin 目录下 ./idea.sh,配置 jdk(需要到虚拟机操作)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
设置字体大小
file----settings
在这里插入图片描述

  1. 编写 Hello world
public class hello {public static void main(String[] args) {System.out.println("hello");}
}

在这里插入图片描述

5 mysql5.7 的安装(!!)

PS:centos7.6自带的类mysql数据库是mariadb,会跟mysql冲突,要先删除

  1. 运行rpm -qa|grep mari,查询mariadb相关安装包
rpm -qa|grep mari

在这里插入图片描述

  1. 运行rpm -e --nodeps mariadb-libs,卸载
rpm -e --nodeps mariadb-libs
rpm -e --nodeps marisa

在这里插入图片描述

  1. 新建文件夹/opt/mysql,并cd进去
mkdir /opt/mysql
cd /opt/mysql

在这里插入图片描述

  1. 运行wget http://dev.mysql.com/get/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar,下载mysql安装包(因为包比较大,直接使用xftp上传)
    链接: https://pan.baidu.com/s/1ZVHnBvFTb3mHbSa5YUqfAQ?pwd=kd33 提取码: kd33
    在这里插入图片描述

5.运行tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar

#因为这个文件后面没有.gz,所以解压的时候是-xvf,而不是-zxvf
tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar

在这里插入图片描述
在这里插入图片描述
6. 开始真正安装mysql,依次运行以下几条(需要按顺序执行)

rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
7. 运行systemctl start mysqld.service,启动mysql

systemctl start mysqld.service

在这里插入图片描述

  1. Mysql自动给root用户设置随机密码,运行grep “password” /var/log/mysqld.log可看到当前密码
grep "password" /var/log/mysqld.log

在这里插入图片描述
9. 开始设置root用户密码,运行mysql -u root -p,用root用户登录,提示输入密码可用上述的(不要自己敲,要复制粘贴),可以成功登陆进入mysql命令行

mysql -u root  -p

在这里插入图片描述
10. 设置root密码,对于个人开发环境,如果要设比较简单的密码(生产环境服务器要设复杂密码),可以运行

#提示密码设置策略,(validate_password_policy默认值1,)
set global validate_password_policy=0; 
#设置登录密码()
set password for 'root'@'localhost' =password('12345678');
#使密码设置生效
flush privileges;

在这里插入图片描述
11. 查看数据库

show databases;

在这里插入图片描述

  1. 退出数据库
quit;

在这里插入图片描述

6、关于mysql数据库密码

当修改密码的时候会报错:

mysql> set password for ‘root’@‘localhost’ =password(‘123456’);
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

出现问题的主要原因是 MySQL 有默认的密码策略:

  • 至少包含 1 位大小写
  • 至少包含 1 位数字
  • 包含 1 个特殊符号
  • 必须 8 位及以上

如果不想把密码设置的那么复杂,就需要修改默认的密码策略。

查看当前的密码策略
SHOW VARIABLES LIKE 'validate_password%';
根据需求修改以下变量
  • validate_password.policy:密码策略,默认值为MEDIUM。可以设置为LOW、MEDIUM、STRONG或者自定义。例如,可以将其设置为LOW以降低密码复杂性要求。

    SET GLOBAL validate_password.policy = LOW;#或者
    SET GLOBAL validate_password.policy = 0;
    

    不同策略的要求:
    0/LOW:只验证长度;
    1/MEDIUM:验证长度、数字、大小写、特殊字符;默认值。
    2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;

  • validate_password.length:密码最小长度,默认值为8。可以根据需要修改最小密码长度

    SET GLOBAL validate_password.length = 6;
    
  • validate_password.number_count:密码中的数字要求,默认值为1。可以增加或减少数字的要求。

    SET GLOBAL validate_password.number_count = 1;
    
  • validate_password.special_char_count:密码中特殊字符的要求,默认值为1。可以增加或减少特殊字符的要求。

    SET GLOBAL validate_password.special_char_count = 1;
    
  • validate_password.mixed_case_count:密码中大写字母和小写字母的要求,默认值为1。可以增加或减少大写字母和小写字母的要求。

    SET GLOBAL validate_password.mixed_case_count = 1;
    
修改配置文件以使修改的密码策略永久生效。

打开MySQL的配置文件(通常是 mysqld.cnf 或 my.cnf),添加下面的内容到文件中:

validate_password.policy=LOW
validate_password.length=6
validate_password.number_count=1
validate_password.special_char_count=1
validate_password.mixed_case_count=1

http://www.ppmy.cn/server/147602.html

相关文章

加密算法学习笔记

可逆与不可逆 可逆 对称加密与非对称加密 不可逆 解释:一旦加密就不能反向解密得到密码原文 种类: Hash散列算法, 散列算法, 摘要算法等&#xff08;哈希算法又称散列算法&#xff09; 用途&#xff1a;一般用于效验下载文件正确性&#xff0c;一般在网站上下载文件都能见到…

开发手札:Win+Mac下工程多开联调

最近完成一个Windows/Android/IOS三端多人网络协同项目V1.0版本&#xff0c;进入测试流程了。为了方便自测&#xff0c;需要用unity将一个工程打开多次&#xff0c;分别是Win/IOS/Android版本&#xff0c;进行多角色联调。 在Win开发机上&#xff0c;以Windows版本为主版…

华为NPU服务器昇腾Ascend 910B2部署通义千问Qwen2.5——基于mindie镜像一路试错版(三)

文章目录 前言纯模型推理启动服务后面干什么?这可咋整啊?愁死了!总结前言 这是咱这个系列的第三个文章了。 毕竟,这是我好几天摸索出的经验,能帮助各位在几个小时内领会,我觉得也算是我的功劳一件了。 所以,一是希望大家耐心看下去,耐心操作下去;而是恳请各位多多关…

深度学习中的图片分类:VGG16 模型详解及代码实现

深度学习中的图片分类&#xff1a;VGG16 模型详解及代码实现 在深度学习的发展中&#xff0c;VGG16 是一个非常经典且重要的卷积神经网络&#xff08;CNN&#xff09;架构。尽管它已经不如一些更现代的网络&#xff08;如 ResNet 和 EfficientNet&#xff09;那么流行&#xf…

微服务通讯系统(2)

软件设计及核心代码展示 数据库表设计&#xff0c;ES搜索表设计&#xff0c;Redis键值对设计 数据库表设计 &#xff08;1&#xff09;用户表设计 这里的ID是指的是在系统中用户是第几个注册的&#xff08;从1开始&#xff09; user_id是指用户的唯一ID是通过uuid()函数生成…

数学建模之熵权法

熵权法 概述 **熵权法(Entropy Weight Method,EWM)**是一种客观赋权的方法&#xff0c;原理&#xff1a;指标的变异程度越小&#xff0c;所包含的信息量也越小&#xff0c;其对应的权值应该越低&#xff08;例如&#xff0c;如果对于所有样本而言&#xff0c;某项指标的值都相…

spark同步mysql数据到sqlserver

使用Apache Spark将数据从MySQL同步到SQL Server是一个常见的ETL&#xff08;Extract, Transform, Load&#xff09;任务。这里提供一个基本的步骤指南&#xff0c;以及一些代码示例来帮助你完成这项工作。 ### 前提条件 1. **安装Spark**&#xff1a;确保你的环境中已经安装了…

【计算机网络】实验9: 路由信息协议RIP

实验9 路由信息协议RIP 一、实验目的 本实验的主要目的是深入理解RIP&#xff08;路由信息协议&#xff09;的工作原理&#xff0c;以便掌握其在网络中的应用。通过对RIP的学习&#xff0c;我们将探讨该协议如何实现路由选择和信息传播&#xff0c;从而确保数据包能够在网络中…