7.Linux - 安装MySQL、Tomcat、Nginx、RabbitMQ、Redis

server/2024/12/18 10:21:42/

Linux - 安装MySQL

文章目录

  • Linux - 安装MySQL
  • 一、MySQL 5.7
    • 1.1 安装
    • 1.2 配置
  • 二、MySQL 8.x
    • 2.1 安装
    • 2.2 配置
  • 三、Tomcat安装
    • 3.1 安装 JDK
    • 3.2 Tomcat(整的不行)
  • 四、Nginx
    • 4.1 安装
  • 五、RabbitMQ
    • 5.1 安装
  • 六、Redis
    • 6.1 安装

一、MySQL 5.7

1.1 安装

我们使用yum install mysql 是无法将数据库安装的,因为yum所连接的远程仓库中并没有我们所要的mysql 5.7

所以我们必须配置一个额外的yum远程仓库

  1. 配置yum仓库

    需要联网才能操作

# 更新秘钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql yum库 (也就是从网络中获取这个软件包,并且把他安装)
# 我们通过网络去安装这个软件包,就会给我们的yum程序去安装Mysql的样本仓库
rpm -Uvh http://repo.mysql.com//mysql57-community-release-el7-7.noarch.rpm

image-20240614140630009

image-20240614140709946

rpm软件包,类似Windows系统中的exe

  1. 使用yum安装MySQL

当执行完第一步后,就可以使用yum安装MySQ了

安装MySQL社区版的服务,需要联网操作

yum -y install mysql-community-server

image-20240614145347291

  1. 启动MYSQL,并配置开机自启动

MySQL安装完成后,会自动配置名称叫做:mysqld的服务,可以被systemctl所管理

#启动
systemctl start mysqld
#开机自启
systemctl start mysqld
  1. 检查MySQL的运行状态
systemctl status mysqld

image-20240617112332433

1.2 配置

上面是安装完成,下面开始对MySQL进行初始化

也就是账号、密码、以及远程登录等等

主要配置管理员用户的root的密码以及配置允许远程登录的权限

  1. 获取MySQL的初始密码

/var/log/mysqld.log文件是安装运行过程中所产生的一个日志文件,初始密码会包含在这个文件里面

我们通过gerp命令在文件中过滤一下temporary password关键字

grep 'temporary password' /var/log/mysqld.log

目前MySQL的初始密码是 O!R5/eP#qz0b

image-20240617140413916

  1. 登录MySQL数据库系统
mysql -uroot -p

-u,登录的用户,MySQL数据库的管理员同Linux一样,是root

-p,表示使用密码登录

执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库

image-20240617140835038

  1. 修改root密码

密码需要符合大于8位,有大写字母,有特殊符号,不能是连续简单的语句,如123

ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';

image-20240617142117427

也可以配置简单的root密码,但是需要降低MySQL的密码安全级别

#密码安全级别低
set global validate_password_policy=LOW; 
#密码长度最低4位
set global validate_password_length=4;#修改密码为简单密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '简单密码';

image-20240617142930856

  1. 配置root用户运行时的远程登录

默认情况下,root用户是不运行远程登录的,只允许在MySQL所在的Linux服务器登录MySQL系统

允许root远程登录会带来安全风险

# 授权root远程登录
# IP地址即允许登录的IP地址,也可以写成%,表示允许任何地址
# 密码表示给远程登录独立设置密码,和本地登录的密码可以不同,看自己的喜好,都是可以的
grant all privileges on *.* to root@"IP地址" identified by '密码' with grant option;# 刷新权限,生效
flush privileges;

image-20240617175237339

  1. 退出MySQL控制台页面
# 命令退出
exit# 快捷键退出
ctrl+d
  1. 检查端口

MySQL默认绑定3306端口,沃恩可以通过端口的占用检查MySQL的端口

 netstat -anp | grep 3306

image-20240617175827579

二、MySQL 8.x

注意!安装操作需要root权限

在配置root密码和远程登录时候和5.7有点不一样

2.1 安装

  1. 配置yum仓库
# 更新秘钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022# 安装Mysql yum库 (也就是从网络中获取这个软件包,并且把他安装)
# 我们通过网络去安装这个软件包,就会给我们的yum程序去安装Mysql的样本仓库
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
  1. 使用yum安装MySQL
# yum安装MySQL
yum -y install mysql-community-server
  1. 安装完成后,启动MySQL并配置开机自启动
#启动
systemctl start mysqld
#开机自启
systemctl enable mysqld
  1. 检查MySQL的运行状态
systemctl status mysqld

2.2 配置

主要修改root密码和允许root远程登录

  1. 获取MySQL的初始密码

/var/log/mysqld.log文件是安装运行过程中所产生的一个日志文件,初始密码会包含在这个文件里面

我们通过gerp命令在文件中过滤一下temporary password关键字

grep 'temporary password' /var/log/mysqld.log
  1. 登录MySQL数据库系统
mysql -uroot -p

-u,登录的用户,MySQL数据库的管理员同Linux一样,是root

-p,表示使用密码登录

执行完毕后输入刚刚得到的初始密码,即可进入MySQL数据库

  1. 修改root密码

密码需要符合大于8位,有大写字母,有特殊符号,不能是连续简单的语句,如123

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '密码';
  1. 配置root的简单密码
#密码安全级别低
set global validate_password_policy=LOW; 
#密码长度最低4位
set global validate_password_length=4;
  1. 允许root远程登录,并设置远程登录密码
#第一次设置root远程登录,并配置远程密码使用如下SQL命令
create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';#后续修改密码使用如下SQL命令
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';
  1. 退出MySQL控制台页面
# 命令退出
exit# 快捷键退出
ctrl+d
  1. 检查端口

MySQL默认绑定3306端口,沃恩可以通过端口的占用检查MySQL的端口

 netstat -anp | grep 3306

image-20240617175827579

三、Tomcat安装

Tomcat是由Apache开发的一个Servlet容器,实现了对Servlet和JSP的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等

简单来说,Tomcat是一个WEB应用程序的托管平台,可以让用户编写的WEB应用程序,被Tomcat所托管,并提供网站服务

即让用户开发的WEB应用程序,变成可以被访问的网页

3.1 安装 JDK

需要JDK版本最低位JDK8或更高的版本

  1. 下载JDK软件

地址:https://www.oracle.com/java/technologies/downloads

我下载的是这个

image-20240618110309408

  1. 将下载完成的包放入到root用户里面

image-20240618110711829

我们发现虚拟机中已经有了这个文件了

image-20240618111057953

  1. 对JDK进行解压缩

首先构建一个文件夹,以后凡是能指定安装目录的软件,我们都放在这个文件夹里

 mkdir -p /export/server

进行解压

tar -zxvf jdk-8u411-linux-x64.tar.gz -C /export/server

切换到对应的目录,发现有这个文件

 cd /export/server

image-20240618111757042

切换到jdk里面去

 cd jdk1.8.0_411/ls -l

image-20240618112012143

里面有一个bin的文件夹,里面存放我们的可执行文件

里面有一个Java程序

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

执行一下“Java”程序,看一下目前的版本

image-20240618155829928

  1. 配置JDK的环境变量
vim /etc/profile

在最下面填写如下所示的内容

export JAVA_HOME=/export/server/jdk1.8.0_411
export PATH=$PATH:$JAVA_HOME/bin

之后进行刷新一下

source /etc/profile

也可以输出看一下

所在的位置

image-20240618160803792

但是现在有一个问题,/usr/bin是系统中Java所在的位置,/export/server/jdk1.8.0_411是我们配置

image-20240618161535383

我们需要将我们的Java替代系统的Java,将系统自带的删除

rm -f /usr/bin/java

帮我们自己安装的Java软连接到/usr/bin

ln -s /export/server/jdk1.8.0_411/bin/java /usr/bin/java

虽然此时which Java的路径没有变,本质是/export/server/jdk1.8.0_411/bin/java

image-20240618163246806

此时再执行以下Java命令,看看有没有反应

java -version

image-20240618163504896

3.2 Tomcat(整的不行)

建议使用非root用户安装并启动

可以创建一个用户:tomcat用以部署

为什么要使用非root用户?

Tomcat是提供网络服务的,可以托管出一个网站,如果tomcat以root用户启动的话,网站此时被别人黑了,别人也相当于拿到root权限了

  1. 放行tomcat需要使用的8080端口的外部访问权限

CentOS系统默认开启了防火墙,阻止外部网络流量访问系统内部

所以如果Tomcat可以正常使用,需要对Tomcat默认使用的8080度那口放行

放行有两种方式

  1. 关闭防火墙
  2. 配置防火墙规则,放行端口
# 方式1
#关闭防火墙
systemctl stop firewalld
#停止防火墙开机自启
systemctl disable firewalld#方式2
#放行8080端口的tcp访问
firewall -cmd -add-port=8080/tcp -permanent
#重新载入防火墙规则使其生效
firewall -cmd --reload
  1. 以root用户操作,创建tomcat用户
#使用root用户操作
useradd tomcat
#可选,为Tomcat用户配置密码,不设置也行
passwd tomcat

image-20240618165725952

  1. 下载Tomcat安装包
# 使用root用户操作
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz
# 如果出现https相关错误,可以使用--no-check-certificate选项
wget --no-check-certificate https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz

也可以在自己电脑上下载后复制到虚拟机中

  1. 解压Tomcat安装包
# 使用root用户操作,否则无权限解压到/export/server内,除非修改此文件夹权限
tar -zxvf apache-tomcat-10.0.27.tar.gz -C /export/server
  1. 创建Tomcat软链接
# 使用root用户操作
ln -s /export/server/apache-tomcat-10.0.27 /export/server/tomcat
  1. 修改tomcat安装目录权限
# 使用root用户操作,同时对软链接和tomcat安装文件夹进行修改,使用通配符*进行匹配
chown -R tomcat:tomcat /export/server/*tomcat*

但是我看视频里是这么操作的

image-20240618171413382

  1. 切换到tomcat用户
su - tomcat
  1. 启动tomcat
/export/server/tomcat/bin/startup.sh
  1. tomcat启动在8080端口,可以检查是否正常启动成功
netstat -anp | grep 8080

image-20221017223814737

10.打开浏览器,输入

http://192.168.101.66:8080

使用主机名(需配置好本地的主机名映射)或IP地址访问Tomcat的WEB页面

image-20221017223915498

四、Nginx

Nginx是一个高性能的HTTP和反向代理的web服务器,同时也提供了MAP/POP3/SMTP服务

同Tomcat一样,Nginx可以托管用户编写的web应用程序成为可访问的网页服务,同时也可以作为流量代理服务器,控制流量的中转

4.1 安装

Nginx同样配置额外的yum仓库,才可以使用yum安装

安装Nginx的操作需要root身份

  1. 安装yum依赖程序
# root执行
yum install -y yum-utils

image-20240620094231943

  1. 手动添加,nginx的yum仓库

之前我们添加仓库是命令添加的,现在需要手动添加一下

yum程序使用的仓库配置文件,存放在:/etc/yum.repos.d内。

下图中repo结尾的文件都是yum仓库的配置

image-20240620094603523

# root执行
# 创建文件使用vim编辑
vim /etc/yum.repos.d/nginx.repo# 填入如下内容并保存退出
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

通过如上操作,我们手动添加了nginx的yum仓库

baseurl记录了一个网站,这个网站就是yum程序使用的,可以从里面找到相应的安装包以及相关的依赖程序

  1. 通过yum安装最新稳定版的nginx
# root执行
yum install -y nginx

image-20240620094958121

  1. 启动
# nginx自动注册了systemctl系统服务
systemctl start nginx		# 启动systemctl stop nginx		# 停止systemctl status nginx		# 运行状态systemctl enable nginx		# 开机自启systemctl disable nginx		# 关闭开机自启

image-20240620095033697

image-20240620095257462

  1. 配置防火墙放行

nginx默认绑定80端口,需要关闭防火墙或放行80端口

# 方式1(推荐),关闭防火墙
systemctl stop firewalld		# 关闭
systemctl disable firewalld		# 关闭开机自启# 方式2,放行80端口
firewall-cmd --add-port=80/tcp --permanent		# 放行tcp规则下的80端口,永久生效
firewall-cmd --reload							# 重新加载防火墙规则
  1. 启动后浏览器输入Linux服务器的IP地址或主机名即可访问

http://192.168.101.66

ps:80端口是访问网站的默认端口,所以后面无需跟随端口号

显示的指定端口也是可以的比如:

  • http://192.168.101.66:80

image-20240620095127601

五、RabbitMQ

5.1 安装

rabbitmq在yum仓库中的版本比较老,所以我们需要手动构建yum仓库

  1. 准备yum仓库
# root执行
# 1. 准备gpgkey密钥
rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.ascrpm --import https://packagecloud.io/rabbitmq/erlang/gpgkeyrpm --import https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey# 2. 准备仓库文件
vim /etc/yum.repos.d/rabbitmq.repo
# 填入如下内容
##
## Zero dependency Erlang
##[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
repo_gpgcheck=1
gpgcheck=1
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300##
## RabbitMQ server
##[rabbitmq_server]
name=rabbitmq_server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkeyhttps://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300[rabbitmq_server-source]
name=rabbitmq_server-source
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
  1. 安装RabbitMQ
# root执行
yum install erlang rabbitmq-server -y

erlang是RabbitMQ的源码语言,上面的命令将erlang、RabbitMQ两个程序一次性安装了

image-20240620100813788

Installed:erlang.x86_64 0:23.3.4.11-1.el7           rabbitmq-server.noarch 0:3.10.0-1.el7
  1. 启动
# root执行
# 使用systemctl管控,服务名:rabbitmq-server
systemctl enable rabbitmq-server		# 开机自启systemctl disable rabbitmq-server		# 关闭开机自启systemctl start rabbitmq-server			# 启动systemctl stop rabbitmq-server			# 关闭systemctl status rabbitmq-server		# 查看状态

image-20240620101152143

  1. 放行防火墙,RabbitMQ使用5672、15672、25672 3个端口
# 方式1(推荐),关闭防火墙
systemctl stop firewalld		# 关闭
systemctl disable firewalld		# 关闭开机自启# 方式2,放行5672 25672端口
firewall-cmd --add-port=5672/tcp --permanent		# 放行tcp规则下的5672端口,永久生效
firewall-cmd --add-port=15672/tcp --permanent		# 放行tcp规则下的15672端口,永久生效
firewall-cmd --add-port=25672/tcp --permanent		# 放行tcp规则下的25672端口,永久生效
firewall-cmd --reload								# 重新加载防火墙规则
  1. 启动RabbitMQ的WEB管理控制台
rabbitmq-plugins enable rabbitmq_management

rabbitmq-plugins是我们安装MQ后自带的一个程序,通过他来启动后台

image-20240620101333749

  1. 添加admin用户,并赋予权限
#添加用户 zhangjingqi是密码
rabbitmqctl add_user admin 'zhangjingqi'
#给admin配置最大的权限
rabbitmqctl set_permissions -p "/" "admin" ".*" ".*" ".*"
#给admin设置标签
rabbitmqctl set_user_tags admin administrator

image-20240620101713112

  1. 浏览器打开管理控制台

http://192.168.101.66:15672

image-20240620101731054

六、Redis

6.1 安装

  1. 配置EPEL仓库

EPEL 的全称叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL之后,就相当于添加了一个第三方源。EPEL则为服务器版本提供大量的rpm包(yum程序所使用的程序安装包,类似Windows的exe),而且大多数rpm包在官方 repository 中是找不到的。

# root执行
yum install -y epel-release

image-20240620102405993

  1. 安装redis
# root执行
yum install -y redis

image-20240620102505384

  1. 启动redis
# root执行
# 使用systemctl管控,服务名:redis
systemctl enable redis		# 开机自启
systemctl disable redis		# 关闭开机自启
systemctl start redis		# 启动
systemctl stop redis		# 关闭
systemctl status redis		# 查看状态

image-20240620102533675

image-20240620102925055

  1. 放行防火墙,redis使用端口6379
# 方式1(推荐),关闭防火墙
systemctl stop firewalld		# 关闭
systemctl disable firewalld		# 关闭开机自启# 方式2,放行6379端口
firewall-cmd --add-port=6379/tcp --permanent		# 放行tcp规则下的6379端口,永久生效
firewall-cmd --reload	
  1. 进入redis服务
# 执行redis-cli
[root@centos ~]# redis-cli
127.0.0.1:6379> set mykey hello
OK
127.0.0.1:6379> get mykey
"hello"
127.0.0.1:6379> 

image-20240620102551946


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

相关文章

Linux练习

1、找到 useradd 命令,将该命令文件移动到 /tmp 目录中,并重命名为 useradd_backup which useradd cp /usr/sbin/useradd /tmp/useradd_backup 2、使用 vim 等相关命令创建用户 usertest, 该用户使用 /usertest 目录作为家目录 [rootlocalhost ~]# mkd…

【电路笔记】-逻辑与非函数和逻辑或非函数

逻辑与非函数和逻辑或非函数 文章目录 逻辑与非函数和逻辑或非函数1、逻辑与非函数2、逻辑或非函数逻辑与非函数:仅当所有输入均为 true 时,逻辑 NAND 函数输出才为 false,否则输出始终为 true。 逻辑或非函数:仅当所有输入均为假时,逻辑或非函数输出才为真,否则输出始终…

【python从入门到精通】-- 第七战:字典

🌈 个人主页:白子寰 🔥 分类专栏:重生之我在学Linux,C打怪之路,python从入门到精通,数据结构,C语言,C语言题集👈 希望得到您的订阅和支持~ 💡 坚持…

在clion中使用MySQL的教程

首先就是配置好东西,也是非常简单的: 1.把mysql安装目录(其中的lib好像)中的2个文件复制到下面就行 2.然后配置,这个文件 cmake_minimum_required(VERSION 3.24) project(2024_12project)include_directories(D:\\mys…

基于Clinical BERT的医疗知识图谱自动化构建方法,双层对比框架

基于Clinical BERT的医疗知识图谱自动化构建方法,双层对比框架 论文大纲理解1. 确认目标2. 目标-手段分析3. 实现步骤4. 金手指分析 全流程核心模式核心模式提取压缩后的系统描述核心创新点 数据分析第一步:数据收集第二步:规律挖掘第三步&am…

debian12学习笔记

前置条件 基于debian12官网的qcow2格式文件进行操作 安装ssh 登录虚拟机后安装ssh服务端 apt install openssh-server配置国内源 新增/etc/apt/sources.list.d/tsinghua.list 使用清华大学的源 https://www.cnblogs.com/shanhubei/p/18104430 deb https://mirrors.tuna.t…

GPUImage for Android 如何使用这个 glsl文件

使用 GPUImage for Android 加载和应用自定义 GLSL 文件(例如你的 transition 文件)的方法如下: 1. 准备 GLSL 文件 确保你的 GLSL 文件已经调整为 GPUImage 的格式。对于你的自定义 GLSL 文件,GPUImage 期望包含以下结构&#x…

电气CAD制图软件概述及主要电气CAD软件介绍

一、电气CAD制图软件概述 电气CAD制图软件,即电气计算机辅助设计软件,是一种用于电气系统设计的专业软件。这类软件能够通过计算机帮助电气工程师完成从简单的电路设计到复杂的电气系统设计等各种任务。常用的电气CAD制图软件主要有AutoCAD, EPLAN,SEE E…