部署安装jdk8\redis\mysql8\nginx

发布时间:2026/10/31 6:32:04
部署安装jdk8\redis\mysql8\nginx

注意先查一下主机的架构,存在aarch64版本、bclinux.x86_64等版本,下载的包就需要不一样。

安装jdk8

通过网盘分享的文件:jdk-8u152-linux-x64.tar.gz
链接: https://pan.baidu.com/s/1lHFu_NquVoB8Wqa8ZMeRrA?pwd=y9qe 提取码: y9qe

linux安装jdk8详细步骤_linux jdk8安装-CSDN博客

注意:如果没得权限进系统的 /etc/profile 环境变量,可以建立自己租户的环境变量

解压jdk

-- 如果存在root权限可以这样配置cd/usr/local/lib //解压到文件夹命令mkdirjava//新建文件夹chown-Rrasapp:rasappjava//更改文件夹为该租户权限tar-zxvfjdk-8u231-linux-x64.tar.gz-C/usr/local/lib/java //解压到文件夹命令 -- 如果没有相关权限去lib目录下创建,JDK 解压到自己账号的家目录即可cd~mkdir-p~/opt/javatar-zxvfjdk-8u231-linux-x64.tar.gz-C~/opt/java

配置环境变量

cd~# 当前租户目录ls-al# 找到自己租户下的 .bash_profile 文件# 填入exportJAVA_HOME=/usr/local/lib/java/jdk1.8.0_231exportJRE_HOME=${JAVA_HOME}/jreexportCLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexportPATH=${JAVA_HOME}/bin:$PATH

6.重新执行profile文件 source ~/.bash_profile 使配置文件生效
7.请使用本租户环境下测试该命令,检查新安装的jdk java -version

问题

解决linux手动安装JDK出现cannot execute binary file: Exec format error的问题

xxxx/java:cannot execute binary file: Execformaterror

就是下错了版本,jdk在linux系统里面分了两种架构版本:x86_64(也叫 amd64)、aarch64(ARM64)

安装redis

安装redis
后台启动命令

报错 :-latomic 报错是因为系统缺少 libatomic 开发库(libatomic.so),链接器找不到它。你没有 root 权限,所以不能 yum install libatomic-devel

[rasapp@rasapp-10 redis-6.0.6]$makecdsrc&&makeall make[1]: Entering directory'/rasapp/dev_env/redis-6.0.6/src'LINK redis-server /usr/bin/ld: cannotfind-latomiccollect2: error: ld returned1exitstatus make[1]: ***[Makefile:283: redis-server]Error1make[1]: Leaving directory'/rasapp/dev_env/redis-6.0.6/src'make: ***[Makefile:6: all]Error2[rasapp@rasapp-10 redis-6.0.6]$cdsrc&&makeall LINK redis-server /usr/bin/ld: cannotfind-latomiccollect2: error: ld returned1exitstatus make: ***[Makefile:283: redis-server]Error1

解决方式

cd/ra/redis-6.0.0# 备份cpsrc/Makefile src/Makefile.bak# 把 -latomic 去掉sed-i's/-latomic//g'src/Makefilemakeclean&&make

修改密码

cd/ra/redis-6.0.0viredis.conf## 改前(默认注释):requirepass foobared## 改成:requirepass 你的新密码

启动命令

cd/ra/redis-6.0.0/src ./redis-server--daemonizeyes--protected-mode no

–daemonize yes → 后台运行

–protected-mode no → 关闭受保护模式(允许外网访问 Redis)

doris使用mysql8.0客户端(直接用)

进入mysql解压的bin目录

mysql-h10.10.101.1-P30006-uroot

安装mysql8.0(自定义目录安装)

1、创建自己的mysql-8.0,解压mysql安装包

tar-zxvfmysql-5.7.35-linux-glibc2.12-x86_64.tar.gz

2、配置文件重新修改,在自己的目录下去创建配置文件内容

[mysqld]basedir=/ra/base/mysql-8.0 -- 安装目录datadir=/ra/base/mysql-8.0/data -- 数据目录socket=/ra/base/mysql-8.0/var/lib/mysql/mysql.sock -- mysql.sock 自定义目录 log-error=/ra/base/mysql-8.0/var/log/mysqld.log pid-file=/ra/base/mysql-8.0/var/run/mysqld/mysqld.pid#慢查询配置slow_query_log=ONslow_query_log_file=/ra/base/mysql-8.0/log/slow_query_log.loglong_query_time=1#设置默认存储引擎default-storage-engine=INNODB#修改默认编码character-set-server=utf8mb4 collation-server=utf8mb4_general_ci#表名和字段名不区分大小写#lower case table names=1#设置MySQL运行端口port=3306#MySOL允许最大的进程连接数max_connections=3000#设置在网络传输中一次消息传输量的最大值max_allowed_packet=32M[client]#修改默认编码default-character-set=utf8mb4

3、针对你配置的basedir、datadir、socket等等路径需要重新创建一下,不然下述步骤运行的时候提示找不到路径

4、重新刷新启动,指定对应的配置文件,根目录路径和数据路径,进入到bin目录

[base@ra bin]./mysqld --defaults-file=/ra/base/mysql-8.0/my.cnf--user=base--basedir=/ra/base/mysql-8.0--datadir=/ra/base/mysql-8.0/data/--initialize

进入对应的日志目录,一般来说是你的配置文件指定的路径:pid-file=/ra/base/mysql-8.0/var/run/mysqld/mysqld.pid
,针对以下文档 查看对应的root密码: 1w0B97GGEw+q。

2024-11-01T13:42:19.503904Z6[Note][MY-010454][Server]A temporary password is generatedforroot@localhost: 1w0B97GGEw+q

再次重启的时候会出现以下报错,意思就是删掉你的刚创建的datadir=/ra/base/mysql-8.0/data – 数据目录 里面的东西,重新启动一下

2024-11-02T04:03:43.826986Z0[System][MY-013169][Server]/ra/base/mysql-8.0/bin/mysqld(mysqld8.0.39)initializing of serverinprogress as process11157572024-11-02T04:03:43.828582Z0[ERROR][MY-010457][Server]--initializespecified but the data directory has filesinit. Aborting.2024-11-02T04:03:43.828611Z0[ERROR][MY-013236][Server]The designated data directory /ra/base/mysql-8.0/data/ is unusable. You can remove all files that the server added to it.

5、将命令行配置一下

[base@ra mysql-8.0]$ mysql-uroot-p-bash: mysql:commandnot found

– 配置了命令,mysql才算是命令启动

sudoln-s/ra/base/mysql-8.0/bin/mysql /usr/bin

6、运行时报错

[base@ra4 mysql-8.0]$ mysql-uroot-pEnter password: ERROR2002(HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock'(2)

解决方式一:建立软连接

sudoln-s/rasdapp/base/mysql-8.0/var/lib/mysql/mysql.sock /tmp/mysql.sock

解决方式二:后面发现还是有错误,所以我就直接指定对应的socket执行了:

mysql-uroot-p--scoket=/ra/base/mysql-8.0/var/lib/mysql/mysql.sock

7、更改root密码

ALTERUSER'root'@'localhost'IDENTIFIED WITH'mysql_native_password'BY'3edc$RFV';

8、中止

mysql-h10.123.124.125-P3306-uroot-p# 进入命令行之后 (注意我碰到shutdown直接执行有问题的,需要先执行一下其他命令 如:show databases;再去执行shutdown;)shutdown;# 退出exit# 查看进程是否还存在ps-ef|grepmysql

安装nginx

1、需要先部署编译环境:

yum-yinstallmakezlib zlib-devel gcc-c++ libtool openssl openssl-devel

2、下载nginx最新的包

3、解压 tar -zxvf nginx-1.18.0.tar.gz

4、编译部署,要制定路径 --prefix改为我们要部署nginx的路径(都是有些路径是没得权限的,而且不太好找,所以就部署到自己的路径下)

cdnginx-1.18.0mkdirnginx_installcdnginx_installpwd# 获取当前目录地址cd..# 返回上一层级./configure--prefix=/pwd的目录地址 --with-http_ssl_module --with-stream -with-stream_ssl_module# 运行安装指定目录makemakeinstallcdpwd的目录地址/sbin# 进入执行目录# nginx相关命令sbin/nginx-V# 查看版本sbin/nginx# 启动sbin/nginx-t# 检查配置文件格式是否正确sbin/nginx-sreload# 重启# nginx配置文件地址cdpwd的目录地址/conf

问题

make install出现报错:cp: ‘conf/koi-win’ and ‘/usr/local/nginx/conf/koi-win’ are the same file

问题解决方式:./configure --prefix=/自己的安装路径和你的解压路径不能一起–with-http_ssl_module 中的 --prefix指定的目录不要在自己的解压目录同级下,需要新建一个目录作为安装目录

使用nginx

场景

A系统部署的主机能在虚拟桌面主机上进行可视化操作,但是B、C系统部署的主机缺没有打通虚拟桌面主机端口,但是打通了A系统部署的主机的网络端口,申请又很麻烦,所以通过nginx,统一在A系统部署主机上进行访问

解决步骤,假设虚拟桌面访问路径10.10.10.11:8280与虚拟桌面是通的

1、A系统将端口切换为8281

nginx配置如下:

location /ra{proxy_pass http://10.10.10.11:8281;# 下面必须的,不然容易出现远程的js资源访问不到proxy_set_header Host$host:$server_port;proxy_set_header X-Real-IP$remote_addr;#保留代理之前的真实客户端ipproxy_set_header X-Real-Port$remote_port;#保留代理之前的真实客户端端口proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;proxy_set_header Upgrade$http_upgrade;proxy_set_header Connection"Upgrade";client_max_body_size 300m;# 指定系统上传的文件允许多大}

2、B系统通过配置的形式进入

location /rb/server{proxy_pass http://10.10.10.12:8282/ra/server;proxy_set_header Host$host:$server_port;proxy_set_header X-Real-IP$remote_addr;#保留代理之前的真实客户端ipproxy_set_header X-Real-Port$remote_port;#保留代理之前的真实客户端端口proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;proxy_set_header Upgrade$http_upgrade;proxy_set_header Connection"Upgrade";client_max_body_size 300m;# 指定系统上传的文件允许多大}location /web/server{proxy_pass http://10.10.10.12:8282/web/server;proxy_set_header Host$host:$server_port;proxy_set_header X-Real-IP$remote_addr;#保留代理之前的真实客户端ipproxy_set_header X-Real-Port$remote_port;#保留代理之前的真实客户端端口proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;proxy_set_header Upgrade$http_upgrade;proxy_set_header Connection"Upgrade";client_max_body_size 300m;# 指定系统上传的文件允许多大}

同时如果B系统的前端是前后端分离的,那么前端访问链接就需要将对应的地址由之前12主机部署的端口,换成11主机nginx的端口,通过转发的方式去访问请求

可能出现的问题:cookie或者session不共享,需要添加seesion映射

12主机

location /ra-dev{proxy_pass http://10.10.10.13:8282/ra-dev;proxy_set_header Host$host:$server_port;proxy_set_header X-Real-IP$remote_addr;#保留代理之前的真实客户端ipproxy_set_header X-Real-Port$remote_port;#保留代理之前的真实客户端端口proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;proxy_set_header Upgrade$http_upgrade;proxy_set_header Connection"Upgrade";client_max_body_size 300m;# 指定系统上传的文件允许多大}

13主机

location /ra-dev{proxy_pass http://10.10.10.13:8282/ra-hn;proxy_set_header Host$host:$server_port;proxy_set_header X-Real-IP$remote_addr;#保留代理之前的真实客户端ipproxy_set_header X-Real-Port$remote_port;#保留代理之前的真实客户端端口proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;# ==重点在于这儿映射==proxy_cookie_path /ra-hn /ra-dev;proxy_set_header Upgrade$http_upgrade;proxy_set_header Connection"Upgrade";client_max_body_size 300m;# 指定系统上传的文件允许多大}

使用自签证书切换https

1、确认 Nginx 是否编译了 SSL 模块 nginx-V2>&1|grep-o'http_ssl_module'2、openssl version# 进入您的 Nginx 安装目录cd/rasapp/nginx-1.22.1/nginx_install# 创建证书目录(必须与您的 Nginx 安装路径一致)mkdir-p/rasapp/nginx-1.22.1/nginx_install/conf/ssl# 创建临时缓冲目录(防 500 错误!)mkdir-p/rasapp/nginx-1.22.1/nginx_install/tmp/client_body /rasapp/nginx-1.22.1/nginx_install/tmp/proxy /rasapp/nginx-1.22.1/nginx_install/tmp/fastcgi /rasapp/nginx-1.22.1/nginx_install/tmp/uwsgi /rasapp/nginx-1.22.1/nginx_install/tmp/scgi# 进入证书目录cd/rasapp/nginx-1.22.1/nginx_install/conf/ssl# 创建 OpenSSL 配置文件(关键:必须包含您的服务器 IP)cat>openssl-san.cnf<<'EOF' [req] default_bits = 2048 prompt = no default_md = sha256 distinguished_name = dn req_extensions = v3_req x509_extensions = v3_ca [dn] C = CN ST = HuNan O = YiDong CN = rasapp-3 [v3_req] subjectAltName = @alt_names basicConstraints = CA:FALSE keyUsage = digitalSignature, keyEncipherment extendedKeyUsage = serverAuth [v3_ca] subjectAltName = @alt_names [alt_names] DNS.1 = rasapp-3 DNS.2 = localhost IP.1 = 127.0.0.1 IP.2 = 10.159.113.91 # ⚠️【必须】替换成您服务器的实际内网 IP! EOF# 生成证书(注意路径必须匹配您的安装目录)openssl req-x509-nodes-days3650\-newkeyrsa:2048\-keyout/rasapp/nginx-1.22.1/nginx_install/conf/ssl/nginx.key\-out/rasapp/nginx-1.22.1/nginx_install/conf/ssl/nginx.crt\-config/rasapp/nginx-1.22.1/nginx_install/conf/ssl/openssl-san.cnf\-extensionsv3_req# 验证证书是否包含 IP(关键检查!)openssl x509-innginx.crt-text-noout|grep-A1"Subject Alternative Name"## 修改nginx.confhttp{listen8080ssl;# ★ 新增:指定证书和私钥 ★ssl_certificate /home/rasapp/nginx-1.22.1/nginx_install/conf/ssl/nginx.crt;ssl_certificate_key /home/rasapp/nginx-1.22.1/nginx_install/conf/ssl/nginx.key;# ★ 新增:SSL 相关优化配置(可选) ★ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;location /{proxy_pass http://10.159.113.209:18080;proxy_redirect http:// https://;# 加这个之后转换即可…………}}