CentOS 7.9 常用开发环境搭建

511 阅读4分钟

环境搭建

JDK环境安装

安装包下载

本次选用的版本是:JDK 1.8.0_421 官网地址:www.oracle.com/java/techno…

image.png

安装包上传服务器

如果是本地下载的安装包,可以通过SSH工具上传服务器,我一般都会建一个单独的目录在/home/soft下方便管理,SSH工具我使用的是MobaXterm

image.png

安装包解压

安装包上传后,使用命令解压。在执行解压操作前,创建Java的文件目录/usr/local/java/,然后使用下面的命令进行解压。

tar -zxvf jdk-8u421-linux-x64.tar.gz -C /usr/local/java/

环境配置

编辑环境文件

vim /etc/profile

在末尾添加

export JAVA_HOME=/usr/local/java/jdk1.8.0_421
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

输入以下命令让环境生效

source /etc/profile

创建软链接

ln -s /usr/local/java/jdk1.8.0_421/bin/java /usr/bin/java

环境检查

java -version

image.png

Nginx安装-源码方式

为什么要用源码方式安装Nginx呢,虽然有点繁琐,但是服务性能好。

下载源码

官网地址:nginx.org/en/download…

我选择的版本是:1.24.0

image.png

上传服务器

同样的跟上Java环境搭建的一样,没看过的往上看

依赖环境搭建

跟Java安装方式不同,nginx需要依赖很多环境,依次安装下面的依赖,已安装的忽略此步骤

# 编译时依赖 gcc 环境
yum -y install gcc gcc-c++ 

# 让nginx支持重写功能
yum -y install pcre pcre-devel 

# zlib 库提供了很多压缩和解压缩的方式,nginx 使用 zlib 对 http 包内容进行 gzip 压缩
yum -y install zlib zlib-devel 

# 安全套接字层密码库,用于通信加密 
yum -y install openssl openssl-devel

解压安装

解压操作跟上面一样,不再赘述... 讲解一下安装过程: 假设我创建,并将安装包解压到了/usr/local/nginx目录,通过如下命令进入安装目录

cd /usr/local/nginx/nginx-1.24.0

通过下面的命令完成环境检查:

./configure --prefix=/usr/local/nginx # 检查平台安装环境

进行源码编译并安装 nginx

make 
make install 

启动服务

/usr/local/nginx/sbin/nginx

查看进程状态

# 查看服务进程
ps -ef | grep nginx

MySQL数据库的安装

安装包下载

官网地址:downloads.mysql.com/archives/co…
本次版本:8.0.35 image.png

温馨提示:不建议安装8.4版本服务,有BUG,当然,一般看这个教程的服务器都会是生产级的服务器,那就无所谓...

下载地址:cdn.mysql.com/archives/my…

文件上传服务器并解压

解压地址:/usr/local/mysql8

tar -xvf mysql-8.0.35-1.el7.x86_64.rpm-bundle.tar

解压后会得到很多rpm包 image.png

卸载原生环境

查看系统中是否存在mariadb包

rpm -qa | grep mariadb

image.png

很明显有,但是我这只有一个,可能有些系统有多个,使用下面的命令删除所有的包

rpm -e --nodeps 文件名

image.png

准备环境

依次执行下面的命令

yum update -y
yum install -y libaio
yum install -y net-tools
yum install openssl-devel.x86_64 openssl.x86_64 -y
yum -y install autoconf
yum install perl.x86_64 perl-devel.x86_64 -y
yum install perl-JSON.noarch -y
yum install perl-Test-Simple -y

以上命令是解决安装mysql8时的依赖环境问题。(如果以上命令运行失败可能会影响接下来的安装)

安装

在/usr/local/mysql8目录下,依次运行以下几个命令,安装MySQL8,注意如下命令运行顺序不能颠倒,必须严格按照以下顺序运行:

rpm -ivh mysql-community-common-8.0.35-1.el7.x86_64.rpm   
rpm -ivh mysql-community-client-plugins-8.0.35-1.el7.x86_64.rpm 
rpm -ivh mysql-community-libs-8.0.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.35-1.el7.x86_64.rpm 
rpm -ivh mysql-community-icu-data-files-8.0.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-compat-8.0.35-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.35-1.el7.x86_64.rpm  

image.png

配置

设置配置文件:
编辑/etc/my.cnf文件,可以为MySQL设置如下参数(按实际需求选择即可)

[mysqld]
# 设置 MySQL 服务运行的端口号
port = 3306
# 指定 MySQL 数据库的默认字符集
character-set-server=utf8mb4
# 允许外部访问
bind-address=0.0.0.0

# 设置client连接mysql时的字符集,防止乱码
init_connect='SET NAMES utf8mb4'

# 设置 MySQL 允许访问的最大连接数
max_connections = 1000

# 指定MySQL服务器存储数据文件的目录
datadir=/var/lib/mysql

# 是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1

# 事务隔离级别,默认为可重复读,mysql默认可重复读级别(此级别下可能参数很多间隙锁,影响性能)
transaction_isolation = READ-COMMITTED

# TIMESTAMP如果没有显示声明NOT NULL,允许NULL值
explicit_defaults_for_timestamp = true

关闭防火墙

如果需要外部访问建议关闭防火墙,或者开放3306端口

systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld

目录授权

chown -R mysql:mysql /var/lib/mysql/

启动MySQL的服务

systemctl start mysqld.service

查询服务状态

systemctl status mysqld.service

设置开机自启

systemctl enable mysqld

查看临时密码

grep "A temporary password" /var/log/mysqld.log

image.png

为root用户设置新的密码

# 修改密码,注意密码强度校验,这里把密码设置为 Ab%123456
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
# 刷新权限
FLUSH PRIVILEGES;

设置允许远程登录

update mysql.user set host='%' where user='root';
flush privileges;