Linux安装JDK、Tomcat、Nginx等常用软件
现如今各种场合都有使用各种 Linux 发行版,从嵌入式设备到超级计算机,并且在服务器领域确定了地位,对于一个开发人员来说,Linux的学习是必不可少的,对于简单操作Linux系统更是必备的技能,对于Linux系统的重要性在这里不多赘述。于是我在学习过程中,整理了一系列Linux常用命令,文章内容收集整理于网络,相关代码都是经过自己实现验证的,众所周知,Linux系统的相关命令是数不胜数的,学完以至于完全记住是很难的,在这里只是整理一部分常用、实用、后端开发人员必备的命令,当然,个人感觉这些命令不需要刻意去记忆,而是在反复的使用过程中达到孰能生巧的,所以本系列文章目的主要用于方便自己后期的查阅与复习,希望可以帮助到你!
前面主要学习了Linux系统的常用命令。详情查阅:Linux (imyjs.cn)
这里主要记录了在Linux系统上安装一些常见的软件比如JDK、Tomcat、MySQL等。
一、安装JDK
1.下载JDK
官方下载:https://www.oracle.com/technetwork/java/javase/downloads/index.html
国内下载:JDK下载 - 编程宝库 (codebaoku.com)
2.上传JDK
可以通过一些软件进行上传文件:CRT
、WinSCP
、NxShell
。
3.安装JDK
tar包安装
- 1.将JDK解压缩到指定目录
[zhangsan@localhost jdk]$ pwd /usr/jdk [zhangsan@localhost jdk]$ ls jdk-18.0.1.1_linux-x64_bin.tar.gz [zhangsan@localhost jdk]$ sudo tar -zxvf jdk-18.0.1.1_linux-x64_bin.tar.gz [zhangsan@localhost jdk]$ ls jdk-18.0.1.1 jdk-18.0.1.1_linux-x64_bin.tar.gz [zhangsan@localhost jdk]$
- 2.进入JDK解压缩目录查看
[zhangsan@localhost jdk]$ pwd /usr/jdk [zhangsan@localhost jdk]$ cd jdk-18.0.1.1 [zhangsan@localhost jdk-18.0.1.1]$ ls bin conf include jmods legal lib LICENSE man README release [zhangsan@localhost jdk-18.0.1.1]$
- 3.查看详细信息
[zhangsan@localhost jdk-18.0.1.1]$ ll 总用量 24 drwxr-xr-x. 2 root root 4096 5月 13 15:18 bin drwxr-xr-x. 5 root root 123 5月 13 15:18 conf drwxr-xr-x. 3 root root 132 5月 13 15:18 include drwxr-xr-x. 2 root root 4096 5月 13 15:18 jmods drwxr-xr-x. 72 root root 4096 5月 13 15:18 legal drwxr-xr-x. 5 root root 4096 5月 13 15:18 lib lrwxrwxrwx. 1 10668 10668 23 4月 26 04:52 LICENSE -> legal/java.base/LICENSE drwxr-xr-x. 3 root root 18 5月 13 15:18 man -rw-r--r--. 1 10668 10668 290 4月 26 04:52 README -rw-r--r--. 1 10668 10668 1233 4月 26 04:52 release [zhangsan@localhost jdk-18.0.1.1]$
rpm包安装
- 1.安装jdk
rpm -ivh jdk-8u171-linux-x64.rpm
- 2.搜索默认安装位置
find / -name "java"
4.环境配置
- 打开系统环境变量配置文件
vi /etc/profile
- 在文件末尾加入如下配置
export JAVA_HOME=/usr/jdk/jdk-18.0.1.1/ export PATH=$PATH:$JAVA_HOME/bin
- 加载配置生效
source /etc/profile 加载配置生效 reboot 重启系统
注意: 以上两个选项选择任意一个即可source可以不用重启立即生效,某些情况下source无法生效时,可以使用重启试试
二、安装Tomcat
1.下载Tomcat
Apache Tomcat® - Apache Tomcat 8 Software Downloads
2.上传Tomcat
可以通过一些软件进行上传文件:CRT
、WinSCP
、NxShell
。
3.解压缩
[zhangsan@localhost tomcat]$ tar -zxvf apache-tomcat-8.5.78.tar.gz -C /usr/
# -C 用来指定解压缩的位置
4.启动Tomcat
[zhangsan@localhost bin]$ ./startup.sh
Using CATALINA_BASE: /usr/tomcat/apache-tomcat-8.5.78
Using CATALINA_HOME: /usr/tomcat/apache-tomcat-8.5.78
Using CATALINA_TMPDIR: /usr/tomcat/apache-tomcat-8.5.78/temp
Using JRE_HOME: /usr/jdk/jdk-18.0.1.1/
Using CLASSPATH: /usr/tomcat/apache-tomcat-8.5.78/bin/bootstrap.jar:/usr/tomcat/apache-tomcat-8.5.78/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
[zhangsan@localhost bin]$
5.关闭网络防火墙
systemctl stop firewalld # 关闭网络防火墙
systemctl disable firewalld # 关闭开机自启动(永久关闭)
6.访问Tomcat
7.显示实时控制台信息
进入tomcat的logs目录中使用tail -f catalina.out
命令实时查看控制台信息
[zhangsan@localhost logs]$ tail -f catalina.out
8.关闭Tomcat
[zhangsan@localhost bin]$ ./shutdown.sh
9.部署SpringBoot Jar包项目
三、安装MySQL
1.环境准备
- 执行命令
rpm -qa | grep mariadb
列出所有被安装的mariadb rpm 包。[root@localhost ~]# rpm -qa | grep mariadb mariadb-libs-5.5.68-1.el7.x86_64 [root@localhost ~]#
- 执行命令
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
卸载mariadb,避免安装mysql出现冲突。
2.在线安装
- 添加官方的yum源创建并编辑
mysql-community.repo
文件[mysql57-community] name=MySQL 5.7 Community Server baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/7/$basearch/ enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
- 安装mysql
sudo yum install -y mysql-community-server
3.设置root用户密码
- 启动mysql数据库:
systemctl start mysqld
- 修改mysql数据库密码
- 方式一:
ALTER USER USER() IDENTIFIED BY 'newpwd';
ALTER USER USER() IDENTIFIED BY 'Yjs0612**';
- 方式二:
mysqladmin -u用户名 -p旧密码 password 新密码
msyqladmin -uroot -pje25kDgLlD/Y password 'Yjs0612**';
- 方式三:使用UPDATE直接编辑user表
mysql> use mysql; mysql> update user set password=password('Yjs0612**') where user='root' and host='localhost'; mysql> flush privileges;
注意:在第一次使用默认密码登录时,不能使用该方法修改。
mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
- 方式四:
set password for 用户名@localhost = password(‘newpwd’);
mysql> set password for root@localhost = password('Yjs0612**');
注意:
- 5.7之前版本安装完成之后没有密码,mysql5.7之后的版本的初始密码是随机生成的,放在了 /var/log/mysqld.log
使用命令grep ‘temporary password’ /var/log/mysqld.log
读出来即可 - 密码校验规则:长度至少8位,至少包含一个大写和一个小写以及一个特殊字符!
- 方式一:
- 登录Mysql:
mysql -u root -p
4.开启远程访问
- 登录mysql,并选择使用mysql数据库
use mysql; show tables;
select * from user \G select host, user from user \G # 注:\G会格式化显示
- 修改
update user set host="%" where Host='localhost' and user = "root";
- 更新权限
flush privileges;
- 重启服务:
service mysqld restart
注意:需要关闭防火墙
systemctl stop firewalld
补充:MySQL修改密码规则
登录进入mysql,输入命令mysql>select @@validate_password_policy;
该命令为了查看密码的安全等级;
mysql>select @@validate_password_policy;
查看密码相关参数:show variables like 'validate_password%';
mysql> show variables like 'validate_password%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+--------------------------------------+--------+
7 rows in set (0.00 sec)
validate_password_dictionary_file:用于验证密码强度的字典文件路径;
validate_password_length:密码最小长度,参数默认为8,它有最小值的限定;
validate_password_mixed_case_count:密码至少要包含的大写字母和小写字母的个数;
validate_password_number_count 密码至少要包含的数字个数;
validate_password_policy:密码强度等级检查;(默认是1,即MEDIUM)
validate_password_special_char_count:密码至少要包含的特殊字符个数;
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_mixed_case_count=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_number_count=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_special_char_count=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_length=3;
Query OK, 0 rows affected (0.00 sec)
1.修改密码强度等级为0,即是LOW;
2.修改密码至少要包含的大写字母和小写字母的个数为0;
3.修改密码至少要包含的数字个数为0;
4.修改密码至少要包含的特殊字符的个数为0;
5.修改密码的长度最小个数为3;
root密码丢失解决方案
关闭验证密码 mysqld_safe --skip-grant-tables&
登陆 mysql -u root mysql
重置 UPDATE user SET password=PASSWORD("new password") WHERE user='root';
5.7版本 UPDATE user SET authentication_string=PASSWORD("new password") WHERE user='root';
刷新 FLUSH PRIVILEGES;
四、安装Nginx
1.Nginx的引言
Nginx
是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:京东、新浪、网易、腾讯、淘宝等。
有关Nginx内容看这里:Nginx 一篇文章让你从入门到实践! - 编程那点事儿 (imyjs.cn)
2.Nginx手动安装
- 安装必要依赖
yum install -y gcc pcre-devel zlib-devel
- 下载Nginx
- 将Nginx上传到linux中,并解压缩
[root@localhost nginx]# pwd /usr/nginx [root@localhost nginx]# ls nginx-1.18.0.tar.gz [root@localhost nginx]# tar -zxvf nginx-1.18.0.tar.gz
- 查看Nginx安装目录
[root@localhost nginx]# ls nginx-1.18.0 nginx-1.18.0.tar.gz [root@localhost nginx]# cd nginx-1.18.0 [root@localhost nginx-1.18.0]# ll 总用量 764 drwxr-xr-x. 6 1001 1001 4096 5月 15 00:03 auto -rw-r--r--. 1 1001 1001 302863 4月 21 2020 CHANGES -rw-r--r--. 1 1001 1001 462213 4月 21 2020 CHANGES.ru drwxr-xr-x. 2 1001 1001 168 5月 15 00:03 conf -rwxr-xr-x. 1 1001 1001 2502 4月 21 2020 configure drwxr-xr-x. 4 1001 1001 72 5月 15 00:03 contrib drwxr-xr-x. 2 1001 1001 40 5月 15 00:03 html -rw-r--r--. 1 1001 1001 1397 4月 21 2020 LICENSE drwxr-xr-x. 2 1001 1001 21 5月 15 00:03 man -rw-r--r--. 1 1001 1001 49 4月 21 2020 README drwxr-xr-x. 9 1001 1001 91 5月 15 00:03 src [root@localhost nginx-1.18.0]#
- 在Nginx安装目录中执行如下命令(指定安装位置)
./configure --prefix=/usr/nginx
- 执行上述命令后,执行如下命令
make && make install
- 编译完成后进入编译安装目录/usr/nginx目录中查看
[root@localhost nginx]# pwd /usr/nginx [root@localhost nginx]# ll 总用量 1020 drwxr-xr-x. 2 root root 4096 5月 15 00:06 conf drwxr-xr-x. 2 root root 40 5月 15 00:06 html drwxr-xr-x. 2 root root 6 5月 15 00:06 logs drwxr-xr-x. 9 1001 1001 186 5月 15 00:04 nginx-1.18.0 -rw-r--r--. 1 root root 1039530 5月 15 00:01 nginx-1.18.0.tar.gz drwxr-xr-x. 2 root root 19 5月 15 00:06 sbin [root@localhost nginx]#
- 启动nginx,进入nginx安装目录的
sbin
目录中执行./nginx
- 在windows中浏览器访问,可以看到nginx欢迎页面
注意关闭防火墙:
systemctl stop firewall
- 关闭nginx,进入nginx安装目录的sbin目录中执行
./nginx -s stop
- nginx配置文件在nginx安装目录的conf目录中
注意:nginx.conf为nginx的配置文件,可以在nginx.conf修改nginx默认配置
3.Nginx网络安装
- 配置 EPEL源
sudo yum install -y epel-release sudo yum -y update
- 安装Nginx
sudo yum install -y nginx
安装成功后,默认的网站目录为: /usr/share/nginx/html
默认的配置文件为:/etc/nginx/nginx.conf
自定义配置文件目录为: /etc/nginx/conf.d/
4.Nginx基本操作
- 启动 Nginx:
systemctl start nginx
- 停止Nginx:
systemctl stop nginx
- 重启Nginx:
systemctl restart nginx
- 查看Nginx状态:
systemctl status nginx
- 启用开机启动Nginx:
systemctl enable nginx
- 禁用开机启动Nginx:
systemctl disable nginx