​ 从零开始-在阿里云服务搭建java应用部署环境

​ 从零开始-在阿里云服务搭建java应用部署环境

准备工作

下载安装FinalShell方便本地连接云服务和上传文件

FinalShell下载地址: https://www.hostbuf.com/c/131.html

一、jdk安装和部署

jdk官方下载:https://www.oracle.com/java/technologies/downloads/

1.1 卸载系统自带的jdk

查看系统自带的jdk: rpm -qa | grep jdk

卸载自带的jdk:rpm -e --nodeps 要卸载的JDK

1.2 上传jdk并解压jdk

创建安装目录(习惯放在/usr/local目录下):mkdir java

上传jdk压缩包创建的目录下

解压jdk压缩包:tar -zxvf jdk压缩包

1.3 配置jdk环境变量

编辑profile文件:vim /etc/profile

在最后一行加上以下配置

JAVA_HOME=/usr/local/java/jdk1.8.0_371
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH

让配置文件生效:source /etc/profile

二、mydql5.7数据库安装

mysql下载地址:https://downloads.mysql.com/archives/community/

2.1 卸载系统自带的mysql,Mariadb

查看系统自带的mysql: rpm -qa | grep mysql

卸载自带的mysql:rpm -e --nodeps 文件名称

查询所有的mysql文件夹:whereis mysql 和 find / -name mysql

删除相关目录:rm -rf 文件的绝对路径

2.2 创建mysql用户组和mysql用户

检查mysql组和用户是否存在:cat /etc/group | grep mysql 或者 cat /etc/passwd | grep mysql

创建mysql用户组:groupadd mysql

创建一个用户名为mysql的用户并加入mysql用户组: useradd -g mysql mysql

修改用户密码:passwd mysql

2.3 上传并解压mysql压缩包,给mysql用户授权

解压:tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz

授权:chown mysql.mysql /usr/local/mysql -R

2.4 在/etc目录下添加my.cnf 配置文件
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
skip-name-resolve
#设置3306端口
port = 3306 
# 设置mysql的安装目录
basedir=/usr/local/mysql/mysql-5.7.31
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/mysql-5.7.31/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB 
lower_case_table_names=1
max_allowed_packet=16M
2.5 安装和初始化

初始化mysql:./mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql-5.7.31/mysql/ --datadir=/usr/local/mysql/mysql-5.7.31/data/

如果出现./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

则需要安装libaio.so.1:yum install libaio

复制文件:cp ./support-files/mysql.server /etc/init.d/mysqld

授权:

chown 777 /etc/my.cnf

chmod +x /etc/init.d/mysqld

重启mysql 服务:/etc/init.d/mysqld restart

软连接(在任何目录下可以登录mysql):ln -s /usr/local/mysql/mysql-5.7.31/bin/mysql /usr/bin/mysql

2.6 设置开机启动

chkconfig --level 35 mysqld on

chkconfig --list mysqld

chmod +x /etc/rc.d/init.d/mysqld

chkconfig --add mysqld

service mysqld status

2.7 配置环境变量
JAVA_HOME=/usr/local/java/jdk1.8.0_11
MYSQL_HOME=/usr/local/mysql/mysql-5.7.31
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin:$MYSQL_HOME/bin
export PATH JAVA_HOME CLASSPATH
2.8 登录数据

获得初始化密码:**cat /root/.mysql_secret **

登录数据库:mysql -uroot -p

重新设置密码:set PASSWORD = PASSWORD(‘root777’);

刷新权限:flush privileges;

更换数据库:use mysql;

查看数据库用户地址:select host,user from user;

修改root用户访问权限:update user set host=‘%’ where user=‘root’;

2.9 创建新用户

删除用户:**DROP USER ‘goryleee’@‘%’; **

创建用户: CREATE USER ‘username’@‘host’ IDENTIFIED BY ‘password’;

授权:GRANT ALL ON . TO ‘pig’@‘%’; 或者 GRANT SELECT, INSERT ON test.user TO ‘pig’@‘%’;

撤销用户权限:REVOKE privilege ON databasename.tablename FROM ‘username’@‘host’;

修改用户密码:SET PASSWORD FOR ‘username’@‘host’ = PASSWORD(‘newpassword’);

查看用户权限:**SHOW GRANTS FOR ‘pig’@‘%’; **

三、 redis安装

下载地址:http://download.redis.io/releases

3.1 上传解压redis

tar -zvxf redis-6.2.5.tar.gz

3.2 编译安装(进入redis根目录)

执行:make

进入src,执行: make install

启动服务:./redis-server …/redis.conf

3.3 设置后台执行和修改密码

修改配置文件:vim redis.conf

// 注释监听ip,不然本地无法连接redis
#bind 127.0.0.1
// 修改保护模式,不修改保护模式也是只能内网访问的 protected-mode yes 改成 protected-mode no
protected-mode no
// 设置密码,这里建议设置密码,否则可能会发生一些预料不到的事情,因为6379端口有漏洞
requirepass "你的密码"
// daemonize no 改为yes 后台一直运行
daemonize yes
3.4 将redis添加systemctl服务,并设置开机自启

在 /etc/systemd/system 下新建redis.service

其中/usr/local/redis/redis-6.2.5是你安装redis的路径

[Unit]
Description=Redis
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/redis/redis-6.2.5/src/redis-server /usr/local/redis/redis-6.2.5/redis.conf
ExecReload=/usr/local/redis/redis-6.2.5/src/redis-server -s reload
ExecStop=/usr/local/redis/redis-6.2.5/src/redis-server -s stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target

重新加载服务配置文件 :systemctl daemon-reload

启动redis: systemctl start redis

查看redis服务状态: service redis status

设置开机启动: systemctl enable redis.service

systemctl disable redis.service         # 取消开机自启
systemctl start redis.service          # 启动redis服务
systemctl stop redis.service           # 停止服务
systemctl restart redis.service        # 重新启动服务
systemctl status redis.service          # 查看服务当前状态
systemctl list-units --type=service     # 查看所有已启动的服务
systemctl daemon-reload                 # 加载服务配置文件
四、nginx安装

下载地址:https://nginx.org/en/download.html

4.1 准备make环境

执行:yum -y install gcc gcc-c++ automake autoconf libtool make

4.2 准备nginx环境

安装pcre: yum -y install pcre pcre-devel

安装zlib:yum -y install zlib zlib-devel

安装openssl :yum -y install openssl openssl-devel

4.3上传并解压nginx

解压:tar -zvxf nginx-1.20.2.tar.gz

进入nginx根目录: cd /usr/local/nginx/nginx-1.20.2

执行:**./configure **

编译:make

安装:**make install **

4.4 启动nginx

执行:cd /usr/local/nginx/sbin

启动nginx服务:**./nginx **

关闭nginx服务:./nginx -s stop

重启nginx服务:./nginx -s reload

检测配置文件:nginx -t -c ~/youSite.conf

4.5 设置nginx开机自启–准备工作

复制nginx.conf,mime.types文件到/etc/nginx/: cd /usr/local/nginx/conf/

执行:cp nginx.conf /etc/nginx/ ** cp mime.types /etc/nginx/ **

创建init.d控制命令,vi /etc/init.d/nginx ,内容如下

#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig:   - 85 15
# description:  NGINX is an HTTP(S) server, HTTP(S) reverse \
#               proxy and IMAP/POP3 proxy server
# processname: nginx
# config:      /etc/nginx/nginx.conf
# config:      /etc/sysconfig/nginx
# pidfile:     /var/run/nginx.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0

nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx)

NGINX_CONF_FILE="/etc/nginx/nginx.conf"

[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx

lockfile=/var/lock/subsys/nginx

make_dirs() {
   # make required directories
   user=`$nginx -V 2>&1 | grep "configure arguments:.*--user=" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
   if [ -n "$user" ]; then
      if [ -z "`grep $user /etc/passwd`" ]; then
         useradd -M -s /bin/nologin $user
      fi
      options=`$nginx -V 2>&1 | grep 'configure arguments:'`
      for opt in $options; do
          if [ `echo $opt | grep '.*-temp-path'` ]; then
              value=`echo $opt | cut -d "=" -f 2`
              if [ ! -d "$value" ]; then
                  # echo "creating" $value
                  mkdir -p $value && chown -R $user $value
              fi
          fi
       done
    fi
}

start() {
    [ -x $nginx ] || exit 5
    [ -f $NGINX_CONF_FILE ] || exit 6
    make_dirs
    echo -n $"Starting $prog: "
    daemon $nginx -c $NGINX_CONF_FILE
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
}

stop() {
    echo -n $"Stopping $prog: "
    killproc $prog -QUIT
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}

restart() {
    configtest || return $?
    stop
    sleep 1
    start
}

reload() {
    configtest || return $?
    echo -n $"Reloading $prog: "
    killproc $prog -HUP
    retval=$?
    echo
}

force_reload() {
    restart
}

configtest() {
  $nginx -t -c $NGINX_CONF_FILE
}

rh_status() {
    status $prog
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}

case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart|configtest)
        $1
        ;;
    reload)
        rh_status_q || exit 7
        $1
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
            ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
        exit 2
esac

注意:下面两处需要修改

nginx="/usr/local/nginx/sbin/nginx" #修改成nginx执行程序的路径。
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf" #修改成nginx.conf文件的路径。

设置权限:chmod a+x /etc/init.d/nginx

设置之后就可以执行如下命令

/etc/init.d/nginx start
/etc/init.d/nginx stop
/etc/init.d/nginx restart

4.6 设置nginx开机自启

添加到service,使用service对nginx控制:chkconfig --add /etc/init.d/nginx

设置开机自启,执行:chkconfig nginx on

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值