Centos8 安装 JDK / Python / MySQL / Redis / Nginx

news2024/12/25 12:30:33

安装 JDK

华为镜像 JDK 下载地址:https://repo.huaweicloud.com:8443/artifactory/java-local/jdk/

这里安装 JDK8 为例:

# 这里直接通过 wget 下载
wget https://repo.huaweicloud.com:8443/artifactory/java-local/jdk/8u202-b08/jdk-8u202-linux-x64.tar.gz
# 解压文件并移动
tar -zxvf jdk-8u202-linux-x64.tar.gz -C /usr/local/

配置环境:

vim /etc/profile

在尾部添加下面内容:

# JDK
export JAVA_HOME=/usr/local/jdk1.8.0_202
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

刷新环境文件

source /etc/profile

检查 JDK 环境

java -version
javac -version

安装 Python

Python 下载地址:https://repo.huaweicloud.com/python/

# 安装必须依赖
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc
# 通过 wget 下载
wget https://repo.huaweicloud.com/python/3.12.7/Python-3.12.7.tar.xz
# 解压文件,如果是 .tar.gz 文件,那么使用 tar -zxvf xxx.tar.gz 解压即可
tar -xvJf Python-3.12.7.tar.xz
# 进入文件夹
cd Python-3.12.7
# 配置和编译
./configure --prefix=/usr/local/python-3.12.7
# 编译并安装
make
make install
# 配置环境
vim /etc/profile
# Python
export PYTHON_HOME=/usr/local/python-3.12.7
export PATH=${PYTHON_HOME}/bin:$PATH
# 刷新环境文件
source /etc/profile
# Python 环境验证
python3 --version
pip3 --version

安装 MySQL

MySQL 下载地址:https://downloads.mysql.com/archives/community/

centos 操作系统选择:Linux - Generic

这里下载新的 MySQL 会是以 .tar.xz 结尾的文件,如果是旧版本会是以 .tar.gz 为结尾

# 安装必要的依赖
yum install -y libncurses* libaio*
# 这里直接通过 wget 下载
wget https://cdn.mysql.com/archives/mysql-8.4/mysql-8.4.2-linux-glibc2.28-x86_64.tar.xz
# 解压文件,如果是 .tar.gz 文件,那么使用 tar -zxvf xxx.tar.gz 解压即可
tar -xvJf mysql-8.4.2-linux-glibc2.28-x86_64.tar.xz
# 移动
mv mysql-8.4.2-linux-glibc2.28-x86_64 /usr/local/mysql
# 创建数据库的配置文件
vim /usr/local/mysql/my.cnf

输入以下内容

[mysqld]
# MySQL 的目录
basedir=/usr/local/mysql
# MySQL 数据库文件,该目录指定的位置需要提前创建
datadir=/usr/local/mysql/data
# 指定 sock 文件,登录 MySQL 时不指定 -h 时会使用到该文件
socket=/tmp/mysql.sock
user=root
port=3306
# 指定 MySQL 日志文件类型,mysql-bin 表示二进制类型
log-bin=mysql-bin
# 搭建主从的时候用到,不搭建主从可以任意配置一个数字
server-id=1
# 是否忽略大小写,1 忽略,0 不忽略;默认为 0
lower_case_table_names=1
# 手动创建数据库文件目录
mkdir /usr/local/mysql/data
# 初始化数据库
/usr/local/mysql/bin/mysqld --defaults-file=/usr/local/mysql/my.cnf --initialize --user=root

此时控制台会打印数据库的初始密码,需要记录下来,待会要用到

在这里插入图片描述

将 MySQL 加入环境

vim /etc/profile

在末尾添加以下内容

# MySQL
export MYSQL_HOME=/usr/local/mysql
export PATH=${MYSQL_HOME}/bin:$PATH
# 刷新环境文件
source /etc/profile
# 启动 MySQL
mysqld &
# 登录 MySQL,修改配置可外部登录
mysql -uroot -p
# ⭐ 然后输入刚刚控制台打印的密码
# 修改新密码
alter user 'root'@'localhost' identified by '改成你的密码';
# 修改可外部登录 MySQL
use mysql;
update user set host = '%' where user = 'root';
flush privileges;
exit;

这时候需要开放 3306 端口,如果是云服务那就在安全组中将 3306 端口开放出来

firewall-cmd --zone=public --add-port=3306/tcp --permanent
systemctl restart firewalld

设置 MySQL 开机自启

chmod +x /etc/rc.d/rc.local
vim /etc/rc.d/rc.local

在末尾添加 MySQL 启动语句

/usr/local/mysql/bin/mysqld &

安装 Redis

Redis 下载地址:https://download.redis.io/releases/

# 安装必要依赖
yum -y install gcc-c++
# 通过 wget 下载
wget https://download.redis.io/releases/redis-7.4.1.tar.gz
# 解压文件
tar -zxvf redis-7.4.1.tar.gz
# 进入 redis 文件夹
cd redis-7.4.1
# 编译和安装
make
make PREFIX=/usr/local/redis install

此时 Redis 安装在了 /usr/local/redis 目录下,目录结构如下:

在这里插入图片描述

修改成后台启动 redis

# 添加配置文件 
cp ./redis-7.4.1/redis.conf /usr/local/redis/bin/
# 修改配置文件(修改三处的配置)
vim /usr/local/redis/bin/redis.conf

daemonize 的值改为 yes

daemonize yes

requirepass foobared 下指定登录密码

# requirepass foobared
requirepass 123456

bind 127.0.0.1 -::1 换成 bind 0.0.0.0 可以外部登录

# bind 127.0.0.1 -::1
bind 0.0.0.0

后台启动 redis

/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf

设置 Redis 开机自启

chmod +x /etc/rc.d/rc.local
vim /etc/rc.d/rc.local

在末尾添加 Redis 启动语句

/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf

安装 Nginx

Nginx 下载地址:https://nginx.org/download/

# 安装必须依赖
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel pcre pcre-devel
# 通过 wget 下载
wget https://nginx.org/download/nginx-1.20.1.tar.gz
# 解压文件
tar -zxvf nginx-1.20.1.tar.gz
# 进入文件
cd nginx-1.20.1
# 检查
./configure
# 编译并安装
make
make install

# 查看 Nginx 的版本号
/usr/local/nginx/sbin/nginx -v
# 启动 Nginx
/usr/local/nginx/sbin/nginx
# 关闭 Nginx
/usr/local/nginx/sbin/nginx -s stop
# 重新加载配置
/usr/local/nginx/sbin/nginx -s reload

设置 Nginx 开机自启

chmod +x /etc/rc.d/rc.local
vim /etc/rc.d/rc.local

在末尾添加 Nginx 启动语句

/usr/local/nginx/sbin/nginx

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2238944.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用轻易云平台高效集成聚水潭与南网订单数据

高效实现聚水潭与南网供应商对接的数据集成方案 普通发货对接南网供应商配送通知接口 在现代数据集成项目中,如何高效、可靠地实现不同系统之间的数据对接是一个关键挑战。本文将聚焦于一个实际案例:将聚水潭平台的数据集成到南方电网商城平台&#xff…

【经验分享】一招解决VMware虚拟机存储空间越来越大的问题

【经验分享】一招解决VMware虚拟机硬盘空间越来越大的问题 前言一、解决办法二、补充说明 前言 在使用虚拟机过程中,会出现用着用着虚拟机硬盘占用空间越来越大的问题。即使删除了文件,依然会占用宿主机的硬盘空间。如果虚拟机一开始分配的硬盘空间过大…

使用Element UI实现一个拖拽图片上传,并可以Ctrl + V获取图片实现文件上传

要在 Element UI 的拖拽上传组件中实现 Ctrl V 图片上传功能,可以通过监听键盘事件来捕获粘贴操作,并将粘贴的图片数据上传到服务器。 版本V1,实现获取粘贴板中的文件 注意,本案例需要再你已经安装了Element UI并在项目中正确配…

Ascend Extension for PyTorch是个what?

1 Ascend Extension for PyTorch Ascend Extension for PyTorch 插件是基于昇腾的深度学习适配框架,使昇腾NPU可以支持PyTorch框架,为PyTorch框架的使用者提供昇腾AI处理器的超强算力。 项目源码地址请参见Ascend/Pytorch。 昇腾为基于昇腾处理器和软…

strtok_s详解,实现使用strtok_s分割字符串,并返回包含分割符的子串

1.strtok_s函数原型 strtok_s 是一个线程安全的字符串分割函数,它是 strtok 的一个变体,用于将字符串分割成一系列的标记(tokens)。与 strtok 不同,strtok_s 需要一个额外的参数来保存上下文信息,这样它就…

Docker--Docker是什么和对Docker的了解

Docker 的本质 Docker的本质是LXC(Linux容器)之类的增强版,它本身不是容器,而是容器的易用工具。 Docker通过虚拟化技术,将代码、依赖项和运行环境打包成一个容器,并利用隔离机制来使得容器之间互相独立、…

大数据新视界 -- 大数据大厂之 Impala 性能优化:优化数据加载的实战技巧(下)(16/30)

💖💖💖亲爱的朋友们,热烈欢迎你们来到 青云交的博客!能与你们在此邂逅,我满心欢喜,深感无比荣幸。在这个瞬息万变的时代,我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…

【测试框架篇】单元测试框架pytest(3):用例执行参数详解

一、前言 上一篇内容介绍了用例编写的规则以及执行用例,执行用例时我们发现有些print输出内容,结果没有给我们展示,这是因为什么原因呢?接下来我们会针对这些问题进行阐述。 二、参数大全 我们可以在cmd中通过输入 pytest -h 或…

设计模式-七个基本原则之一-开闭原则 + SpringBoot案例

开闭原则:(SRP) 面向对象七个基本原则之一 对扩展开放:软件实体(类、模块、函数等)应该能够通过增加新功能来进行扩展。对修改关闭:一旦软件实体被开发完成,就不应该修改它的源代码。 要看实际场景,比如组内…

Android Room框架使用指南

Room框架使用指南 项目效果创建应用,配置Gradle1、在app Module的build.gradle配置kapt插件2、配置依赖:3、配置依赖包版本号创建实体类创建DAO1、DAO简介2、WordDao设计以及相关注解说明3、监听数据变化添加Room数据库1、Room数据库简介2、实现Room数据库实现存储库实现View…

前端开发中常用的包管理器(npm、yarn、pnpm、bower、parcel)

文章目录 1. npm (Node Package Manager)2. Yarn (Yarn Package Manager)3. pnpm4. Bower5. Parcel总结 前端开发中常用的包管理器主要有以下几个: 1. npm (Node Package Manager) 简介: npm 是 Node.js 的默认包管理器,也是最广泛使用的包…

C++builder中的人工智能(23):在现代C++ Windows上轻松录制声音

在这篇文章中,我们将探讨如何在现代C Windows上轻松录制声音。声音以波形和数字形式存在,其音量随时间变化。在C Builder中,使用Windows设备进行录音非常简单。要录制声音,在多设备应用程序中,必须使用FMX.Media.hpp头…

科目一汇总笔记2024

知识点,一天看一遍;提前一周即可;真实考试比“驾校宝典”模拟题简单。 1 知识点汇总 2 错题总结 增驾1轻 2中 3重 能见度 200 100 50 速度60 40 20 两条车道是:100 60 三条车道是:110 90 60 四条车道是:110 90 90 60 高速小车最高120其…

【详细】如何优雅地删除 Docker 容器与镜像

内容预览 ≧∀≦ゞ 镜像与容器的区别删除容器和镜像的具体步骤1. 删除容器步骤 1:查看当前运行的容器步骤 2:停止容器步骤 3:删除容器 2. 删除镜像步骤 1:查看镜像列表步骤 2:删除镜像 3. 删除所有容器和镜像 使用 1Pa…

华为eNSP:AAA认证(pap和chap)telnet/ssh

pap模式 一、拓扑图 二、配置过程 1、这个型号路由器是不带串口的,所以需要添加串口板卡 2、加入串行接口卡槽 右击路由,选择设置,将串口板卡拖动到路由器扩展槽,并开机即可 3、认证方路由器配置 [r8]aaa #进入aaa认证 [r8-a…

HCIP—快速生成树协议(RSTP)实验配置

一、回顾STP和STP的缺点和不足 1.STP的概述: STP(生成树协议)是一种用于在网络中防止产生环路的链路管理协议。 2.STP的作用: 解决二层环路,防止广播报文产生。但是网络拓扑收敛较慢,影响通信质量。 3…

qt QSyntaxHighlighter详解

1、概述 QSyntaxHighlighter是Qt文本处理框架中的一个强大工具,它专门用于实现文本编辑器中的语法高亮功能。通过自定义高亮规则,QSyntaxHighlighter可以实现对代码编辑器、富文本编辑器中的关键字、注释等内容的高亮显示。这一功能对于提升代码的可读性…

PyQt5 加载UI界面与资源文件

步骤一: 使用 Qt Designer 创建 XXX.ui文件 步骤二: 使用 Qt Designer 创建 资源文件 步骤三: Python文件中创建相关类, 使用 uic.loadUi(mainwidget.ui, self ) 加载UI文件 import sys from PyQt5 import QtCore, QtWidgets, uic from PyQt5.QtCore import Qt f…

国家级财经类211/985学科院校招收申请制硕士

国家级财经类211/985学科院校招收申请制硕士 ◎免试入学,边学边考,申硕便捷; ●1.5-2年制,无需辞职,远程学习; ◎考试方式灵活,可多次申考; ●申请考核制,学信网报名注…

Spring Boot - 扩展点 EnvironmentPostProcessor源码分析及真实案例

文章目录 概述EnvironmentPostProcessor 作用EnvironmentPostProcessor 实现和注册创建类并实现接口注册到 Spring Boot常见应用场景 源码分析1. EnvironmentPostProcessor 接口定义2. 扩展点加载流程3. 加载 EnvironmentPostProcessor 实现类4. EnvironmentPostProcessor 执行…