1.项目:电商秒杀项目
项目上传至资源,需要自取
环境:
1.1.服务器操作系统:centos7
1. 2.MySQL。
1.3.中间件:redis、rabbitMQ
1.4.JDK
2.linux系统安装JDK
2.1查看JDK版本,建议安装JDK1.8
yum -y list java*^C
2.2安装JDK1.8
yum install -y java-1.8.0-openjdk.x86_64
出现complete英文安装完成
2.3查看JDK版本
java -version
建议命令行安装JDK不用的配置环境变量,自动配置的。
手动安装这里不做介绍。
3.linux安装MySQL
安装选择命令行安装
31.查看系统是否存在MySQL
rpm -qa | grep mysql
没有输出任何结果说明没有,否则删除重新安装
3.2命令行安装MySQL
3.3先创建文件夹
cd /
ls
cd usr
mkdir soft
ls
cd soft
mkdir mysql
cd mysql
当然你可以直接用xftp直接创建文件夹
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
3.4安装Mysql包
yum -y install mysql57-community-release-el7-10.noarch.rpm
3.5安装MySQL
yum -y install mysql-community-server
这一步需要一点时间
出现问题:出现这个问题的原因是您的系统尝试安装 mysql-community-libs-5.7.44-1.el7.x86_64.rpm
,但未能验证其完整性和来源。错误消息指出缺少对应的 GPG 公钥。GPG(GNU Privacy Guard)密钥用于验证软件包的签名,以确保其来自可信的源并未被篡改。
解决方法:
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
解决之后重新下载
yum -y install mysql-community-server
3.6启动mysql服务
systemctl start mysqld.service
3.7查看mysql运行状态
service mysqld status
此时处于后台运行状态
查看初始密码:
grep 'password' /var/log/mysqld.log
管道过滤符 grep
也可以直接用xftp打开编辑
3.7进入数据库
mysql -u root -p
输入上面查询到的密码
他不显示,粘贴进去就行
出现这个结果表示成功。
3.8他会报错,说你的密码不符合他的规则。也就是太简单了。
两种解决方法
3.8.1:
修改一个符合它规则复杂的密码
3.8.2
修改他的规则。
我采用修改他的规则:
如果它提示这样的错误那就修改一个复杂一点的密码
输入修改一个复杂密码后重新登录,势必要把他的规则修改。
查看当前的默认规则。
SHOW VARIABLES LIKE 'validate_password%';
设置密码等级为low
SET GLOBAL validate_password_policy = low;
这个命令的作用是设置 MySQL 服务器的全局变量 validate_password_policy
的值为 low。在 MySQL 中,validate_password_policy
控制着密码策略的严格程度。当该值为 low 时,表示密码策略被禁用,MySQL 将不会强制要求密码符合任何特定的复杂度或长度规则。
这意味着用户可以设置简单的密码,而不必遵循复杂的密码规则。这在某些情况下可能是有用的,但也会增加安全风险,因为简单密码容易被猜测或破解。
设置密码长度至少为:6
set global validata_password_length=6;
查看是否修改完成
修改密码
alter user 'root'@'localhost' identified by '123456';
3.8.4修改密码规则后要刷新配置(其他版本可能需要5.7不需要)
FLUSH PRIVILEGES;
3.8.5重启mysql服务(其他版本可能需要5.7不需要)
systemctl restart mysqld.service
注意:命令不能写错为:sudo systemctl restart mysql;
密码修改成功
注意远程连接数据库时要检查是否开放3306端口,没有开放是访问不到的。
可以查看你的服务器
MySQL的安装算是大功告成。
4安装redis
以前发行的版本
http://download.redis.io/releases/
下载稳定版本
我使用的是5.0.10
4.1使用xftp将压缩包复制到服务器
4.2解压注意自己的版本
tar zxvf redis-5.0.10.tar.gz
解压成功
下载相关依赖,因为redis是C语言写的,所以需要编译环境。编译后才能执行。
yum -y install gcc-c++ automake autoconf
进行编译。
make
安装在指定文件夹
make PREFIX=/usr/soft/redis install
启动redis
./redis-server
这是前台启动,我们要设置为后台自动启动。说个无关紧要的东西,刚刚输入英文发现中间有间隔,贼搞心态比如这种hello world!查阅资料才知道怎么改回来。把输入法从全角改为半角就行了。hello world!。
进入这个文件夹
复制到这个路径下 redis/bin
出现这个结果后台启动
如何查看是否启动呢,进程状态查看和管道同时运用
ps -ef|grep redis
启动客户端也可以查看是否启动成功
./redis-cli
5.安装rabbittmq。
5.1命令行下载,安装这个之前需要erlang语言支持。而且版本有要求的搭配的。
具体搭配
下载erlang
https://www.erlang.org/patches/otp-23.3.4.18
https://www.rabbitmq.com/docs/which-erlang
wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
5.2下载安装包
yum -y install epel-release
5.3安装erlang语言
5.4查看是否安装好。
5.5安装rabbitmq
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.17/rabbitmq-server-3.7.17-1.el7.noarch.rpm
5.6下载安装包
rpm -ivh rabbitmq-server-3.7.17-1.el7.noarch.rpm
5.7
rpm -ivh rabbitmq-server-3.7.17-1.el7.noarch.rpm
中途可能会报这个错
解决方法:
yum install socat
重新安装
rpm -ivh rabbitmq-server-3.7.17-1.el7.noarch.rpm
报错:
解决方法:
echo 你的服务器ip rabbitmq>>/etc/hosts
启动服务器
sudo /sbin/service rabbitmq-server start
查看启动状态:
systemctl status rabbit-server.service
但此时rabbitmq只能本机访问,要想远程连接还需要修改:
第二种安装方法:
先把rpm文件用xftp上传至服务器。
https://packagecloud.io/rabbitmq/rabbitmq-server?page=2
注意版本要搭配。
这两个文件我会上传资源。
rpm文件是编译好的文件,直接安装。
使用yum安装,不用配置环境变量。
systemctl status rabbitmq-server.service
再次启动成功,距离上次两天过去。
当中途修改配置文件和资源包导致了无数 Bug 的出现,我曾一度想要重装操作系统。但思及之前所做的努力,我不忍将其付诸虚空,于是坚持了下来。我是一个小菜,费了好大力气,整整两天的时间,不断查找各种错误的原因。人生仿佛也是如此,充满了各种各样的 Bug,无处不在,无时不有。但幸好,我们从未放弃。在这里做个记录,虽然我的博客并不广为人知,或许即便有人看到,也未必会浏览到这里。但如果你碰巧看到了,那就哈哈一笑吧。
bug1:
https://www.cnblogs.com/astonc/p/16660844.html
bug 2:
https://blog.csdn.net/qq_36393978/article/details/128199106
这个网站可以下载rabbitmq的一些资源包,网速还快。记录一下
https://packagecloud.io/rabbitmq/rabbitmq-server
服务器环境搞好了,接下来我们开始修改我们本地的一些配置。
打开IDEA.
修改配置的参数,mysql、redis、rabbitmq。
然后打包
双击package。
在你的项目目录target目录下,有一个jar包;
接着导入数据库脚本。项目文件里面有。
创建数据库
create database seckill;
导入数据库脚本文件。
mysql -u root -p seckill < seckill.sql
查看是否成功。
show tables;
运行jar包。
nohub java -jar jesper_seckill.jar &
部署完成了。后面会讲如何测试。