随便选一家大厂的云服务器,新人都可享受优惠(3年),一般是每年99左右。
这里选择的镜像centOS8.2版本的(选择什么镜像都无所谓,反正购买完还能重置镜像)。
等待半分钟左右,我们的服务器已经生成了,进入控制台,修改下登录密码
先配置下javaweb运行环境吧,首先配置下jdk,tomcat,mysql
分享下我用的安装包
链接:https://pan.baidu.com/s/1hk8Udhw0PxCj-5H4FH_8Vg
提取码:zzy1
工具:xshell
新建会话,连接,连接成功如下图:
工具:FileZille
左边是本地,右边是服务器,从左边往右边拖过去就行
mkdir /usr/local/src/java
注:mkdir命令用于创建目录
tar –zxvf jdk-8u202-linux-x64.tar.gz
注:
z:通过gzip支持的压缩或解压缩
x:解压缩
v:显示详细信息
f xxx.tar.gz : 指定被处理的文件是 xxx.tar.gz
vim /etc/profile
末尾加上:
(根据自己的路径)
export JAVA_HOME=/usr/local/src/java/jdk1.8.0_202
export PATH=$PATH:$JAVA_HOME/bin
注:
按 i 开始插入
按Esc 输入:wq 回车保存并退出
source /etc/profile
[root@VM-24-16-centos java]# java -version
java version "1.8.0_202"
Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)
(起了个名字叫superman)
一般情况下,发布应用程序都不是使用root用户的,需要创建一个普通用户来发布程序;
[root@VM-24-16-centos java]# useradd -d /superman superman
[root@VM-24-16-centos java]# passwd superman
[root@VM-24-16-centos java]# su - superman
[superman@VM-24-16-centos ~]$
tomcat只要解压就可以使用
mkdir /superman/tomcat
选择合适的版本下载:
https://tomcat.apache.org/
Tomcat 7:建议7.0.100及以上版本。
Tomcat 8:建议8.5.51及以上版本。
Tomcat 9:建议9.0.31及以上版本。
Tomcat 10:建议10.0.0-M7 或以上版本
使用FileZilla把安装包从本地传到服务器
tar -xvf apache-tomcat-8.5.76.tar.gz
cd /superman/tomcat/bin/
./startup.sh 或者 sh startup.sh
tail -f ../logs/catalina.out
浏览器地址栏输入 (公网IP地址或者域名):8080
这样显示即成功
如果不成功,可能是防火墙或者控制台防火墙没有开放8080端口
永久开放防火墙8080端口
修改完配置需要重启
[root@VM-24-16-centos ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent
success
[root@VM-24-16-centos ~]# firewall-cmd --reload
success
控制台防火墙开放8080端口
添加规则,端口8080:
这样就应该可以了
下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
使用FileZilla传到服务器
# tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz
# mv mysql-5.7.37-linux-glibc2.12-x86_64 /usr/local/
# mv mysql-5.7.37-linux-glibc2.12-x86_64 mysql
# groupadd mysql
# useradd -r -g mysql mysql
mkdir -p /data/mysql #创建目录
chown mysql:mysql -R /data/mysql #赋予权限
vim /etc/my.cnf
内容如下
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
进入mysql的bin目录
cd /usr/local/mysql/bin/
初始化
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize
查看密码
cat /data/mysql/mysql.err
忘记截图了,最后一句,最后这几位(DN34N/=?aIfZ)就是密码 (记一下,登录时别忘了)
A temporary password is generated for root@localhost: DN34N/=?aIfZ
先将mysql.server放置到/etc/init.d/mysql中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
启动
service mysql start
成功启动:
登录mysql
./mysql -u root -p #bin目录下
此处报错,报错信息如下:
(这里是centos8 安装mysql5.7 会遇到这种情况,有的版本没事)
./mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
解决方法:
yum install libncurses*
再次登录,登录成功:
修改密码:
SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
刷新规则允许外部访问
use mysql #访问mysql库
update user set host = '%' where user = 'root'; #使root能再任何host访问
FLUSH PRIVILEGES; #刷新
firewall-cmd --zone=public --add-port=3306/tcp --permanent
重新加载配置
firewall-cmd --reload
控制台添加规则:
在本地用Navicat测试连接:
启动、停止、重启…
Usage: mysql {start|stop|restart|reload|force-reload|status} [ MySQL server options ]
[root@VM-24-16-centos /]# service mysql stop
Shutting down MySQL.... SUCCESS!
[root@VM-24-16-centos /]# service mysql start
Starting MySQL. SUCCESS!
安装包在上面,也可去官网下载
tar -zxvf redis安装包
#修改文件夹名
mv redis-6.2.3/ redis
cd redis
make
cd src
make install
mkdir etc
mkdir bin
以后方便点
mv redis.conf etc/
cd src
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server redis-trib.rb ../bin
cd bin
./redis-server
# ctrl+c 停止
[root@VM-24-16-centos etc]# vim redis.conf
允许后台开启
把daemonize 设置为 yes 表示后台开启
修改端口号6379该成6380
允许任意端口访问(慎重,容易被攻击)
把bind 127.0.0.1 注解,表示任何ip可访问本机redis服务器
可能导致服务对外或内网横向移动渗透风险,极易被黑客利用入侵。
根据配置启动
[root@VM-24-16-centos etc]# ./../bin/redis-server redis.conf
firewall-cmd --zone=public --add-port=6380/tcp --permanent
firewall-cmd --reload
服务器控制台防火墙添加规则
1、采取查看进程方式
ps -aux | grep redis
2、采取端口监听查看方式
netstat -lanp | grep 6379
连接客户端
①在redis的安装目录下有reds的客户端,即redis-cli(Redis Command Line Interface),它是Redis自带的基于命令行的Redis客户端;
②命令:redis-cli -h ip地址 -p 端口
[root@VM-24-16-centos bin]# ./redis-server ../etc/redis.conf
使用kill -9 进程的pid,强行终止Redis进程可能会导致redis持久化丢失
创建一个没有登录权限的用户,用该用户按配置启动redis
(第二句待会再启动)
useradd -s /sbin/nolog -M redis
sudo -u redis /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
Redis中线上使用keys *命令,也是非常危险的。因此线上的Redis必须考虑禁用一些危险的命令,或者尽量避免谁都可以使用这些命令,Redis没有完整的管理系统,但是也提供了一些方案。
修改 redis.conf 文件,添加
rename-command FLUSHALL ""
rename-command FLUSHDB ""
rename-command CONFIG ""
rename-command KEYS ""
rename-command DEL ""
rename-command EVAL ""
然后重启redis。
重命名为"" 代表禁用命令,如想保留命令,可以重命名为不可猜测的字符串,如:
rename-command FLUSHALL joYAPNXRPmcarcR4ZDgC
chmod 600 /usr/local/redis/etc/redis.conf
如果停了redis,再想用redis用户启动,发现没有权限打开redis.conf,无法按配置启动,可执行下列命令:
无语,兜了个圈子
777(可读可写可执行)
chmod 777 /usr/local/redis/etc/redis.conf
redis.conf修改no改为yes,有的默认为yes
protected-mode yes
(未完待更)