CentOS7 安装学之思开源考试系统Mysql版

2023-05-16

环境介绍

序号项目版本
1操作系统CentOS Linux release 7.9.2009 (Core)
2redis7.0.0
3Mysqlmysql Ver 8.0.29 for Linux on x86_64 (MySQL Community Server - GPL)
4nginx1.21.6
5在线考试系统xzs-3.7.0

学之思在线考试系统官方地址为:https://www.mindskip.net/xzs.html
本文末尾会附带本次部署用到的所有文件。

1. 环境配置

1.0 新建部署目录

mkdir deploy
cd deploy
pwd

输出:

/home/rio/deploy

1.1 Redis的安装

1.1.1 下载redis安装包

wget https://download.redis.io/releases/redis-7.0.0.tar.gz
tar -zxvf redis-7.0.0.tar.gz
# 保持目录整洁
mkdir download
mv redis-7.0.0.tar.gz download

1.1.2 进入目录并编译安装

cd redis-7.0.0
# 更新gcc等编译组件
	#先切换到root
sudo -i
cd /home/rio/deploy/redis-7.0.0
yum -y install gcc automake autoconf libtool make python3
# 编译并安装
make && make install

1.1.3 根据应用场景,可以选择是否make test

yum -y install tcl
make test

在这里插入图片描述

1.1.4 修改redis配置

nano redis.conf
# 开启后台启动,找到以下字符串
# daemonize no
# 改为 daemonize yes
daemonize yes

保存退出
1.1.5 启动redis

./src/redis-server redis.conf
ps aux |grep redis

在这里插入图片描述
1.1.6 注册为系统服务
提前kill掉刚才启动的进程

# 具体pid根据自己情况查询
kill 116251
cd utils/
cp install_server.sh install_server.sh.bak
nano install_server.sh

找到以下代码,对其注释(下述代码已做完注释)

#bail if this system is managed by systemd
#_pid_1_exe="$(readlink -f /proc/1/exe)"
#if [ "${_pid_1_exe##*/}" = systemd ]
#then
#       echo "This systems seems to use systemd."
#       echo "Please take a look at the provided example service unit files in this directory, and adapt and$
#       exit 1
#fi
./install_server.sh

在这里插入图片描述
安装完成后服务会自动运行,先kill掉。接下来继续注册为系统服务:

mv /etc/init.d/redis_6379 /etc/init.d/redis
chkconfig --add redis
# 重新加载服务配置并启动redis
systemctl daemon-reload
systemctl restart redis

1.2 安装mysql8

1.2.1 安装运行(仍在root身份)

cd /home/rio/deploy/download
# 获取官方源并安装
wget https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
yum -y install mysql-server --nogpgcheck
# 启动并测试服务
sudo systemctl start mysqld
sudo systemctl status mysqld

在这里插入图片描述
1.2.2 配置

# 设置开机启动
systemctl enable mysqld
systemctl daemon-reload
# 获取临时密码
cat /var/log/mysqld.log |grep 'temporary password'
# 登录mysql
mysql -u root -p
#修改root密码
	#注意密码强度,太弱会执行失败
alter user 'root'@'localhost'  identified by '你的密码';
flush privileges;
select user,host from mysql.user; 

小结:如果你处于离线安装情境,请参考此文章:Centos 7离线安装最新版mysql

1.3 安装JDK 1.8

1.3.1 下载软件包

cd /home/rio/deploy/download
# 下载
wget https://download.oracle.com/java/18/latest/jdk-18_linux-x64_bin.rpm
# 安装
rpm -ivh jdk-18_linux-x64_bin.rpm
# 验证
java --version

在这里插入图片描述

1.4 安装Nginx

# 安装Nginx支持
yum install -y pcre pcre-devel zlib zlib-devel openssl openssl-devel
# 下载软件包
wget http://nginx.org/download/nginx-1.21.6.tar.gz
tar -zxvf nginx-1.21.6.tar.gz -C ../
cd ../nginx-1.21.6/
# 编译
./configure
make && make install
# 配置
nano /usr/local/nginx/conf/nginx.conf

修改端口
在这里插入图片描述

nano /usr/lib/systemd/system/nginx.service

写入以下内容:

[Unit]
Description=nginx
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
# 设置开机启动
systemctl enable nginx.service
systemctl daemon-reload
# 启动服务
service nginx start
# 验证
service nginx status

在这里插入图片描述

2. 安装服务器

2.1 验证环境

ps -ef |grep -E 'mysql|redis|nginx'
java --version

确认无误后继续运行,否则请检查环境配置

2.2 数据库配置

cd /usr/local/
# 项目结构配置
mkdir xzs
cd xzs
mkdir sql release web
# 登录mysql
mysql -u root -p

创建数据库

create database xzs;
use xzs;
exit;
# 执行数据库脚本
mysql -u root -p -D xzs < /usr/local/xzs/sql/xzs-mysql.sql

2.3 配置jar包

打开java IDE(部署时采用IntelliJ IDEA)
2.3.1 修改配置文件:

src/main/java/resources/application-prod.yml

修改:

username: root
password: <你的密码>

如需修改端口,打开配置文件(本文未做变动):

src/main/java/resources/application.yml

2.3.2 修改完编译打包:
执行

Maven=>Lifecycle=>clean
Maven=>Lifecycle=>package

2.3.3 将编译好的java包: 上传到deploy目录,拷贝文件:

cp xzs-3.7.0.jar /usr/local/xzs/release

2.3.4 启动服务端

# 启动
nohup java -Duser.timezone=Asia/Shanghai -jar -Dspring.profiles.active=prod  xzs-3.7.0.jar  > start1.log  2>&1 &
# 验证
ps -ef |grep xzs

3. 更新Nginx配置

注意下文中我使用的端口号是9001,可根据实际情况修改

nano /usr/local/nginx/conf/nginx.conf

修改后如下:

server {
listen 9001;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://localhost:8000;
}

service nginx restart

4. 设置防火墙

firewall-cmd --permanent --add-port=9001/tcp
firewall-cmd --reload

5. 浏览器登录测试

5.1 学生登录界面

在这里插入图片描述

5.2管理员登录界面

在这里插入图片描述

5.3 管理员后台界面

在这里插入图片描述

5.4 学生主页面

在这里插入图片描述

6.有关文件

本文download文件夹和mysql-server安装过程中的rpm包缓存打包完成
CSDN下载:

6.1 download文件夹

6.2 学之思源码(3.7.0)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CentOS7 安装学之思开源考试系统Mysql版 的相关文章

  • oracle之index

    索引与表一样 xff0c 也属于段 xff08 segment xff09 的一种 里面存放了用户的数据 xff0c 跟表一样需要占用磁盘空间 索引是一种允许直接访问数据表中某一数据行的树型结构 xff0c 为了提高查询效率而引入 xff0
  • 通过jad/mc/redefine命令,在docker容器中实现动态更新代码的功能:

    通过jad mc redefine命令 xff0c 在docker容器中实现动态更新代码的功能 xff1a demos dockerfile from openjdk 8u232 jdk maintainer czm lt chengzhi
  • 对抗攻击与防御(2022年顶会顶刊AAAI、ACM、 ECCV、NIPS、ICLR、CVPR)adversarial attack and defense汇总

    文章目录 AAAI 39 2022 论文汇总CVPR 2022论文汇总ACM 39 2022论文汇总ECCV 39 2022论文汇总ICLR 39 2022论文汇总NIPS 39 2022论文汇总后续 AAAI 2022 论文汇总 AAAI
  • 时间序列(time serie)分析系列之时间序列特征(feature)7

    文章目录 1 问题描述 2 特征构建 2 1时间特征 2 2平移特征 2 3窗口特征 3 总结 1 问题描述 时间序列数据作为一种典型的数据 常存在于各行各业 比如客流 车流 销量 KPI指标等等 如何对时序数据加以利用 比如做未来预测 交
  • 数论

    质数的定义 对于大于1的自然数 如果它的因子中只有1和它本身 则是一个质数也称素数 从定义可以看出质数的取值范围是从2开始的 小于2的数肯定不是质数 质数的判定 试除法 假设 d是n的一个因子 那么n d 也是n的一个因子 因此我们只需要枚
  • Linux yolov4配置运行

    1 下载yolov4 git clone https github com AlexeyAB darknet git 如果没有git sudo apt get install git 2 编译 进入darknet的目录下 执行下面的语句进行
  • 吐血分类整理 Windows 11的170个快捷键

    1 Windows 11 中新增的键盘快捷键 xff1a 作用快捷键打开小部件窗格 xff0c 提供天气预报 当地交通 新闻 xff0c 日历Win 43 W切换快速设置 控制音量 Wi Fi 蓝牙 亮度滑块 对焦辅助和其他设置Win 43
  • SLAM算法解析

    ref xff1a https www jianshu com p eb25bd481475 嵌牛导读 xff1a SLAM Simultaneous Localization and Mapping 是业界公认视觉领域空间定位技术的前沿方
  • mininet基本使用与操作方法

    启动Wireshark 要使用OpenFlow Wireshark解剖器查看控制流量 xff0c 请先在后台打开wireshark xff1a sudo wireshark amp do wireshark amp rk amp 每个主机进
  • ArUco Marker检测原理

    标记检测过程包括两个主要步骤 xff1a 检测候选marker 在该步骤中 xff0c 分析图像以找到作为标记的候选的正方形形状 它首先进行自适应阈值处理以对标记进行分割 xff0c 然后从阈值图像中提取轮廓 xff0c 并丢弃那些非凸起或
  • 深度学习中epoch、batch、batch size和iterations详解

    1 epoch 在训练一个模型时所用到的全部数据 xff1b 备注 xff1a 一般在训练时都要使用多于一个的epoch xff0c 因为在神经网络中传递完整的数据集仅仅一次是不够的 xff0c 只有将完整的数据集在同样的神经网络中传递多次
  • matlab如何将帮助变成简体中文

    仅作为尝试记录 xff0c 大佬请跳过
  • ubuntu安装px4

    无人机自动驾驶软件系列 网址 https gaas gitbook io guide software realization build your own autonomous drone wu ren ji zi dong jia sh
  • Optitrack与ROS详细教程以及Motive的使用

    一 软件安装 运行安装包安装 USB 驱动 第 一 次 安 装 Motive 时 xff0c 会 提 示 安 装 OptiTrack USB 驱 动 xff08 例 如 xff1a OptiTrack USB Driver x64 xff0
  • 解决Centos7无法通过Putty进行ssh连接的问题

    这问题搞了我一个晚上 xff0c 晕 1 首先查看自己的Centos7能不能连上网 xff0c 如果不能连上网 xff0c 这里我尝试了CSDN里的多种方法都无用 xff0c 最后这篇博客解决了我的问题 xff0c 原因是在于默认安装 2
  • 用Python实现归并排序算法

    本文是本人在学习左神的java代码后改写为的python代码 归并排序算法的步骤是 如 xff0c 对 1 2 4 9 3 55 25 64 对分 xff0c 对左半边和右半边进行递归 递归的终止条件是输入list的长度为1 如 xff0c
  • 风雨秋招路-CV太难了-记得复盘

    文章目录 字节跳动夏令营工商银行VIVO中移动信息技术面试海信文远知行六一教育格灵研究院字节 技术中台 已挂多益网络科大讯飞大疆笔试海康威视小米 打好基础 xff01 xff01 xff01 速腾聚创奇安信莉莉丝笔试阿里巴巴面试 很难美团面
  • 什么是“密评”?

    密评 全称 密码应用安全性评估 xff0c 是指在采用密码技术 产品和服务集成建设的网络和信息系统中 xff0c 对其密码应用的合规性 正确性和有效性进行评估 弄清楚了什么是密评 xff0c 那为什么要做密评呢 xff1f 国家法律法规 开
  • 论文A Graph-Regularized Non-local Hyperspectral Image Denoising Method公式求助

    求助公式推导 xff1a 跪求怎么利用 xff08 9 xff09 xff08 13 xff09 把 xff08 8 xff09 简化成 xff08 14 xff09 xff1f 重酬 xff01
  • 2022计划(尽量实现一半吧哈哈哈)

    哄企鹅回来 找到更好的工作 顺利毕业 论文审稿通过 xff0c 中 xff01 打一场kaggle比赛 精通PyTorch 学会C 43 43 和OpenCV 学习做菜 xff0c 做点企鹅喜欢吃的

随机推荐