十五、linux之搭建JavaEE环境

1 概述

如果需要在 Linux 下进行 JavaEE 的开发,我们需要安装如下软件

2 安装 JDK

安装步骤

    1. mkdir /opt/jdk
powershell 复制代码
mkdir /opt/jdk
    1. 通过 xftp6 上传到 /opt/jdk 下
    1. cd /opt/jdk
    1. 解压 tar -zxvf jdk-8u261-linux-x64.tar.gz
powershell 复制代码
tar -zxvf jdk-8u261-linux-x64.tar.gz


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

编辑etc下的profile 文件

powershell 复制代码
vim /etc/profile 

#找到profile文件的最后输入

powershell 复制代码
 
 export JAVA_HOME=/usr/local/java/jdk1.8.0_261  
 #引入到PATH环境变量
 export PATH=$JAVA_HOME/bin:$PATH  
powershell 复制代码
 #让新的环境变量生效
 source /etc/profile 

测试是否安装成功

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

3 tomcat 的安装

步骤

1、创建目录

powershell 复制代码
#在/opt下创建目录
mkdir /opt/tomcat

2、使用xftp上传文件到tomcat目录下

3、解压缩到/opt/tomcat

powershell 复制代码
tar -zxvf apache-tomcat-8.5.59.tar.gz

4、进入apache目录下

powershell 复制代码
cd apache-tomcat-8.5.59/bin

5、启动 tomcat ./startup.sh

powershell 复制代码
./startup.sh 

6、在物理机上ping一下linux的ip

7、 开放端口 8080

powershell 复制代码
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
powershell 复制代码
#查看防火墙状态
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

html 复制代码
<!-- tomcat目录下的webapps/ROOT -->
<h3>demo</h3>

4 idea2020 的安装

步骤

  1. 下载地址: https://www.jetbrains.com/idea/download/#section=windows

  2. 解压缩到/opt/idea

powershell 复制代码
mkdir /opt/idea
tar -zxvf ideaIU-2020.2.3.tar.gz
  1. 启动 idea bin 目录下 ./idea.sh,配置 jdk(需要到虚拟机操作)






设置字体大小

file----settings

  1. 编写 Hello world
java 复制代码
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相关安装包
powershell 复制代码
rpm -qa|grep mari
  1. 运行rpm -e --nodeps mariadb-libs,卸载
powershell 复制代码
rpm -e --nodeps mariadb-libs
rpm -e --nodeps marisa
  1. 新建文件夹/opt/mysql,并cd进去
powershell 复制代码
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

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


  1. 开始真正安装mysql,依次运行以下几条(需要按顺序执行)
powershell 复制代码
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




  1. 运行systemctl start mysqld.service,启动mysql
powershell 复制代码
systemctl start mysqld.service
  1. Mysql自动给root用户设置随机密码,运行grep "password" /var/log/mysqld.log可看到当前密码
powershell 复制代码
grep "password" /var/log/mysqld.log
  1. 开始设置root用户密码,运行mysql -u root -p,用root用户登录,提示输入密码可用上述的(不要自己敲,要复制粘贴),可以成功登陆进入mysql命令行
powershell 复制代码
mysql -u root  -p
  1. 设置root密码,对于个人开发环境,如果要设比较简单的密码(生产环境服务器要设复杂密码),可以运行
powershell 复制代码
#提示密码设置策略,(validate_password_policy默认值1,)
set global validate_password_policy=0; 
#设置登录密码()
set password for 'root'@'localhost' =password('12345678');
#使密码设置生效
flush privileges;
  1. 查看数据库
powershell 复制代码
show databases;
  1. 退出数据库
powershell 复制代码
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 位及以上

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

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

    sql 复制代码
    SET GLOBAL validate_password.policy = LOW;#或者
    SET GLOBAL validate_password.policy = 0;

    不同策略的要求:

    0/LOW:只验证长度;

    1/MEDIUM:验证长度、数字、大小写、特殊字符;默认值。

    2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;

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

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

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

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

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

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

sql 复制代码
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
相关推荐
无效的名字7 分钟前
向日葵远程控制debian无法进入控制画面的解决方法
运维·debian
藥瓿亭33 分钟前
K8S认证|CKS题库+答案| 7. Dockerfile 检测
运维·ubuntu·docker·云原生·容器·kubernetes·cks
搬码临时工1 小时前
如何把本地服务器变成公网服务器?内网ip网址转换到外网连接访问
运维·服务器·网络·tcp/ip·智能路由器·远程工作·访问公司内网
vortex51 小时前
探索 Shell:选择适合你的命令行利器 bash, zsh, fish, dash, sh...
linux·开发语言·bash·shell·dash
GalaxyPokemon1 小时前
LeetCode - 148. 排序链表
linux·算法·leetcode
Guheyunyi2 小时前
监测预警系统重塑隧道安全新范式
大数据·运维·人工智能·科技·安全
懒羊羊大王呀2 小时前
Ubuntu20.04中 Redis 的安装和配置
linux·redis
杰哥技术分享2 小时前
在 CentOS 上安装 Docker 和 Docker Compose 并配置使用国内镜像源
linux·docker·centos
知更鸟呆呆2 小时前
【Linux操作系统】基础开发工具(yum、vim、gcc/g++)
linux·运维·vim
xiangyong582 小时前
ubuntu系统文件误删(/lib/x86_64-linux-gnu/libc.so.6)修复方案 [成功解决]
linux·ubuntu·gnu