步骤:
1.服务器(腾讯云)
https://cloud.tencent.com/product/cvm
2.Liunx连接(WinSCP、Xshell)
https://winscp.net/eng/docs/lang:chs
https://www.netsarang.com/zh/xshell/
3.安装JDK(1.8)
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
4.安装Tomcat(8.5.59)
http://tomcat.apache.org/
4.安装MySql(8.0)
https://dev.mysql.com/downloads/
5.安装Redis(5.0.9)
https://redis.io/download
1.安装JDK
进入/usr/local/下,创建java文件夹
[root@dsl local]# mkdir java
将下载好的jdk的tar包通过WinSCP传输到/usr/local/java下,解压 ,删除压缩包
[root@dsl java]# tar zxvf jdk-8u271-linux-x64.tar.gz
[root@dsl java]# rm -rf jdk-8u271-linux-x64.tar.gz
/etc/profile文件的改变会涉及到系统的环境,所以将jdk配置到/etc/profile
[root@dsl java]# vim /etc/profile
如果出现:vim: 未找到命令,执行下面命令,安装vim
1.首先查看vim 安装包
[root@dsl java]# rpm -qa | grep vim
2.下载vim(需要连接网络)
[root@dsl java]# yum install -y vim*
3.安装成功后查看
[root@dsl java]# rpm -qa | grep vim
按i进入编辑,在profile文件尾部添加如下内容
添加后,按esc退出编辑,按 :wq回车保存退出
export JAVA_HOME=/usr/local/jdk1.8.0_271 #jdk安装目录
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
通过命令source /etc/profile让profile文件立即生效
[root@dsl java]# source /etc/profile
查看是否安装成功,查看jdk版本,安装成功!
[root@dsl java]# java -version
java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
2.安装Tomcat
为了减少服务器负担,采用“Tomcat多实例”部署多应用
进入/usr/local/下,创建tomcat文件夹
[root@dsl local]# mkdir tomcat
将下载好的tomcat的tar包通过WinSCP传输到/usr/local/tomcat下,解压 ,删除压缩包
[root@dsl tomcat]# tar zxvf apache-tomcat-8.5.59.tar.gz
[root@dsl tomcat]# rm -rf apache-tomcat-8.5.59.tar.gz
创建多实例,在tomcat目录下创建tomcat_instance,存放tomcat_1、tomcat_2与tomcat_bin脚本
[root@dsl tomcat]# mkdir tomcat_instance tomcat_instance/tomcat_1 tomcat_instance/tomcat_2 tomcat_instance/tomcat_bin
将 conf/ webapps/ temp/ logs/ work/ copy到tomcat_1 和 tomcat_2 目录下
[root@dsl tomcat]# cp -r ./apache-tomcat-8.5.59/conf/ ./tomcat_instance/tomcat_1/conf/
拓展:
//将conf1/下的文件copy到conf2/下
[root@dsl tomcat]# cp -r ./apache-tomcat-8.5.59/conf1/. ./tomcat_instance/tomcat_1/conf2/
//将conf1/文件夹copy到tomcat_1/下
[root@dsl tomcat]# cp -r ./apache-tomcat-8.5.59/conf1/ ./tomcat_instance/tomcat_1/
进入tomcat_1/conf与tomcat_2/conf/下更改server.xml端口的SHUTDOWN命令监听端口与Connector链接器监听端口
tomcat_1/conf/server.xml:
<Server port="8006" shutdown="SHUTDOWN">
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!--如果需要服务器访问隐藏项目名称-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
<!--插入下面一行-->
<Context path="" docBase="tomcat_1" debug="0" reloadable="true" />
tomcat_2/conf/server.xml
<Server port="8007" shutdown="SHUTDOWN">
<Connector port="8082" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<!--如果需要服务器访问隐藏项目名称-->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
<!--插入下面一行-->
<Context path="" docBase="tomcat_2" debug="0" reloadable="true" />
创建启动、关闭脚本(也可以重启脚本),进入tomcat_bin/ 分别创建startup.sh与shutdown.sh
[root@dsl tomcat_bin]# touch startup.sh shutdown.sh
startup.sh中加入下面代码
# 指定CATALINA_HOMEexport CATALINA_HOME=/home/tomcat/apache-tomcat-8.5.59
# 通过参数的形式输入tomcat实例路径
export CATALINA_BASE=${1%/}
echo $CATALINA_BASE
# 找到tomcat实例的进程ID
TOMCAT_ID=`ps aux |grep "java"|grep "Dcatalina.base=$CATALINA_BASE "|grep -v "grep"|awk '{ print $2}'`
if [ -n "$TOMCAT_ID" ] ; then
echo "tomcat(${TOMCAT_ITOMCAT_ID}) is running now , please shutdown it!";
exit 2;
fi
TOMCAT_START_LOG=`$CATALINA_HOME/bin/startup.sh`
if [ "$?" = "0" ]; then
echo "$0 ${1%/} start succeed"
else
echo "$0 ${1%/} start failed"
echo $TOMCAT_START_LOG
fi
shutdown.sh中加入下面代码
export CATALINA_HOME=/home/tomcat/apache-tomcat-8.5.59
export CATALINA_BASE=${1%/}
echo $CATALINA_BASE
TOMCAT_ID=`ps aux |grep "java"|grep "[D]catalina.base=$CATALINA_BASE "|awk '{ print $2}'`
if [ -n "$TOMCAT_ID" ] ; then
TOMCAT_STOP_LOG=`$CATALINA_HOME/bin/shutdown.sh`
else
echo "Tomcat instance not found : ${1%/}"
exit
fi
if [ "$?" = "0" ]; then
echo "$0 ${1%/} stop succeed"
else
echo "$0 ${1%/} stop failed"
echo $TOMCAT_STOP_LOG
fi
部署打包后启动,执行命令
[root@dsl tomcat_bin]# sh ./startup.sh ../tomcat_1
3.安装MySql
进入/usr/local/下,将下载好的mysql的tar包传输到/usr/local/下,解压 ,删除压缩包
创建文件夹,mkdir mysql,进入mysql:cd mysql
下载安装包,解压安装包,如果提示wget: 未找到命令,自行搜索安装一下wget
[root@dsl mysql]# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
[root@dsl mysql]# tar xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
重命名解压后的目录名
[root@dsl mysql]# mv mysql-8.0.20-linux-glibc2.12-x86_64 mysql-8.0
进入mysql-8.0文件夹下创建data文件夹 存储文件
[root@dsl mysql]# cd mysql-8.0
[root@dsl mysql-8.0]# mkdir data
分别创建用户组以及用户和密码(如果提示已存在说明之前有创建过了)
[root@dsl mysql-8.0]# groupadd mysql
[root@dsl mysql-8.0]# useradd -g mysql mysql
授权刚刚新建的用户
[root@dsl mysql-8.0]# chown -R mysql.mysql /usr/local/mysql/mysql-8.0
[root@dsl mysql-8.0]# chmod 750 /usr/local/mysql/mysql-8.0/data -R
配置环境,编辑/etc/profile文件,如果提示vim:未找到命令,上面JDK安装中看下vim的下载命令
[root@dsl mysql-8.0]# vim /etc/profile
#--------------------------
#点击键盘上的i键,进入输入模式,移动 ↓ 到在配置文件最后一行添加:
#--------------------------
export PATH=$PATH:/usr/local/mysql/mysql-8.0/bin:/usr/local/mysql/mysql-8.0/lib
#添加完成后,按Esc键退出输入模式,进入命令模式,输入:wq,保存并退出
配置完环境变量后,需要执行source /etc/profile命令,使配置文件生效
[root@dsl mysql-8.0]# source /etc/profile
编辑my.cnf文件
[root@dsl mysql-8.0]# vim /etc/my.cnf
点击键盘上的i键,进入输入模式,移动 ↓ 到在配置文件最后一行添加:
[mysql]
default-character-set=utf8mb4
[client]
#port=3306
socket=/var/lib/mysql/mysql.sock
[mysqld]
#port=3306
#server-id=3306
user=root
general_log = 1
general_log_file= /var/log/mysql/mysql.log
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql/mysql-8.0
datadir=/usr/local/mysql/mysql-8.0/data
log-bin=/usr/local/mysql/mysql-8.0/data/mysql-bin
innodb_data_home_dir=/usr/local/mysql/mysql-8.0/data
innodb_log_group_home_dir=/usr/local/mysql/mysql-8.0/data/
character-set-server=utf8mb4
lower_case_table_names=1
autocommit=1
default_authentication_plugin=mysql_native_password
symbolic-links=0
# Disabling symbolic-links is recommended to prevent assorted security risks
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/usr/local/mysql/mysql-8.0/data/mysql.log
pid-file=/usr/local/mysql/mysql-8.0/data/mysql.pid
#
# include all files from the config directory
执行source /etc/profile命令,使配置文件生效
[root@dsl mysql-8.0]# source /etc/profile
复制 mysql.server 文件
[root@dsl mysql-8.0]# cp -a ./support-files/mysql.server /etc/init.d/mysql
[root@dsl mysql-8.0]# cp -a ./support-files/mysql.server /etc/init.d/mysqld
赋予权限
[root@dsl mysql-8.0]# chown 777 /etc/my.cnf
[root@dsl mysql-8.0]# chmod +x /etc/init.d/mysql
[root@dsl mysql-8.0]# chmod +x /etc/init.d/mysqld
启动数据库,出现SUCCESS说明启动成功
[root@dsl mysql-8.0]# service mysql start
在 vim /etc/my.cnf文件中,添加一行跳过密码验证:skip-grant-tables
方法同上:vim /etc/my.cnf,Esc保存,:wq退出,再执行source /etc/profile
[root@dsl mysql-8.0]# vim /etc/my.cnf
#点击键盘上的i键,进入输入模式,移动 ↓ 到在配置文件最后一行添加:skip-grant-tables
重启数据库
[root@dsl mysql-8.0]# service mysql restart
登录mysql,两次回车直接进入,执行命令use mysql
[root@dsl mysql-8.0]# mysql -u root -p
mysql> use mysql
修改数据库root账号的密码为root(密码自定义)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
执行flush privileges; 使密码生效
mysql> flush privileges;#刷新权限
执行命令use mysql,再修改远程连接并生效
mysql> use mysql
mysql> create user 'root'@'%' identified by 'password';
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
mysql> flush privileges;
注意:
linux下的mysql默认是要区分表名大小写的, 让mysql不区分表名大小写的方法:
1.用root登录,修改/etc/my.cnf
2.在[mysqld]下加入一行:lower_case_table_names=1 //0代表区分大小写,1代表不区分大小写
3.重新启动数据库即可 service mysql restart
4.安装Redis
打开WinSCP,把我们下载好的redis的tar包,传输到Linux的 /mnt/ 文件目录下
进入mnt/目录,解压后删除tar包
[root@dsl mnt]# tar zxvf redis-5.0.9.tar.gz
[root@dsl mnt]# rm -rf redis-5.0.9.tar.gz
把redis-5.0.9移动到/usr/local/ 目录下
[root@dsl mnt]# mv redis-5.0.9 /usr/local/
由于redis是由C语言编写的,它的运行需要C环境,因此我们需要先安装gcc
[root@dsl mnt]# yum install gcc-c++
进入 /usr/local/redis-5.0.9/ 目录
重命名redis目录名
[root@dsl local]# mv redis-5.0.9.tar.gz/ redis
进入redis/目录,进行编译与安装
[root@dsl redis]# make
进入src/目录下,进行redis安装
[root@dsl src]# make install
为了方便管理,将redis文件中的conf/配置文件和常用命令移动到统一文件中
创建bin和etc文件夹
[root@dsl redis]# mkdir bin etc
将redis/目录下的 redis.conf 移动到 redis/目录下的etc文件夹下
[root@dsl redis]# mv redis.conf ./etc/
将mkreleasehdr.sh、redis-benchmark、redis-check-aof、redis-cli、redis-server 移动到 /usr/local/redis/bin/ 目录下
[root@dsl src]# mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-cli redis-server /usr/local/redis/bin/
进入到/usr/local/redis/etc/ 目录下
编辑 redis.conf配置文件,设置后台启动redis服务
[root@dsl etc]# vi redis.conf
按i进行编辑
把redis.conf中的daemonize属性改为yes(表明需要在后台运行)
把 redis.conf中的 bind 127.0.0.1 这一行给注释掉(这里的bind指的是只有指定的网段才能远程访问这个redis,注释掉后,就没有这个限制了。)
把 redis.conf中的 protected-mode 设置成no(默认是设置成yes的, 防止了远程访问)
修改redis默认密码
在redis.conf中找到这一行 # requirepass foobared
删除前面的注释符号#,并把foobared修改成自己的密码
设置redis开机启动
[root@dsl etc]# vi /etc/rc.d/rc.local
添加如下代码到 /etc/rc.d/rc.local 中:
/usr/local/redis/bin/redis-server
/usr/local/redis/etc/redis.conf
进入 /usr/local/redis/bin/ 目录,执行 redis-server 命令,使用 /usr/local/redis/etc/redis.conf配置文件来启动redis服务
[root@dsl bin]# ./redis-server
[root@dsl bin]# ./redis-server /usr/local/redis/etc/redis.conf
查看redis是否启动成功
[root@dsl bin]# ps -ef|grep redis