部署服务器(nginx+mysql+javaJdk)

部署服务器(nginx+mysql+javaJdk)

使用密钥登陆服务器

  1. 先生成密匙并存储到本地。

  2. 找到您下载的私钥所在目录,如:/root/xxx.pem

    说明 xxx.pem即为您的私钥文件,下同。

  3. 使用以下命令修改私钥文件的属性:chmod 400 xxx.pem

  4. 使用SSH命令连接至实例(假设实例的公网IP地址为10.10.10.100):ssh root@10.10**.100 -i /root/xxx.pem

ssh root@47.94.**.** -i ~/first.pem

查看系统信息

lsb_release -a适用于所有版本Linux。

安装JavaJDK

  1. 在服务器上使用wget下载JDK

  2. 解压JDKtar -zxvf jdk-14.0.2_linux-x64_bin.tar.gz

  3. 修改vim /etc/profile

    // 在最底下加入这三行代码 jdk版本根据下载的自行更改。
    export JAVA_HOME=/root/jdk-14.0.2
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin
    
  4. 重载 profile。

    source /etc/profile

  5. 查看Java版本。

    java -version

安装nginx

  1. 在nginx官网选择下载的版本使用wget下载。

  2. 安装必要的插件。

    yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel

    说下这几个的作用

    gcc 它可以编译 C,C++,Ada,Object C和Java等语言

    pcre pcre-devel pcre是一个perl库,包括perl兼容的正则表达式库,nginx的http模块使用pcre来解析正则表达式,所以需要安装pcre库

    zlib zlib-devel zlib库提供了很多种压缩和解压缩方式nginx使用zlib对http包的内容进行gzip,所以需要安装

    openssl openssl-devel openssl是web安全通信的基石,没有openssl,可以说我们的信息都是在裸奔

  3. 解压下载好的文件。

    tar -zxvf nginx-1.17.6.tar.gz

  4. 进入解压好的文件目录下面,开始安装,指定安装路径./configure --prefix=/software/nginx这句话的意思是指定安装路径,--prefix=/software/nginx,编译make,安装make install,进入到/software/nginx/sbin目录,执行启动命令./nginx

  5. 在浏览器上访问你的服务器IP,出现欢迎界面就是成功了。

  6. 配置文件默认地址/etc/nginx/conf.d/

  7. 默认服务根路径/usr/share/nginx/html/

  8. 默认安装路径/usr/sbin/nginx

  9. 配置跨域

nginx 解决跨域

	# MapSources Server  cesium服务
	server {
        listen       9602;
        server_name  192.168.10.26;
 
        location / {
			root F://CesiumData;
			add_header Access-Control-Allow-Origin '*' always;
			add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS' always;
			add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization' always;
		}
    }

扩展nginx的使用

Linux下

# start
nginx -c /software/nginx/conf/nginx.conf
# restart
service nginx restart
# stop
nginx -s stop	#	快速停止
nginx -s quit	# 正常停止
nginx -s reload	# 配置文件修改重装载

Windows下

nginx -s stop 
nginx -s quit
nginx -s reload
start nginx

windows 通过服务名结束任务taskkill /f /t /im java.exe

**apt卸载nginx

sudo apt-get remove nginx nginx-common 
# 卸载删除除了配置文件以外的所有文件。 
sudo apt-get purge nginx nginx-common 
# 卸载所有文件,包括删除配置文件。 
sudo apt-get autoremove 
# 在上面命令结束后执行,卸载删除Nginx的不再使用的依赖包。

查询nginx主进程号

ps -ef | grep nginx

从容停止 kill -QUIT 主进程号。

快速停止 kill -TERM 主进程号。

强制停止 kill -9 nginx

重启服务

cd /software/nginx/sbin
./nginx -s reload

默认nginx的静态页面路径

/software/nginx/html

修改的话是在,config文件里的server{ root : xxxx}

报错

重启nginx

./nginx -s reload
nginx: [error] open() "/software/nginx/logs/nginx.pid" failed (2: No such file or directory)

# 错误原因:nginx服务未启动。

# 解决办法。
/software/nginx/sbin/nginx -c /software/nginx/conf/nginx.conf

firewalld 防火墙:

启动: systemctl start firewalld

关闭: systemctl stop firewalld

查看状态:systemctl status firewalld

开机禁用 : systemctl disable firewalld

开机启用 : systemctl enable firewalld

重启服务:firewall-cmd --reload

添加8080端口的访问权限,这里添加后永久生效:firewall-cmd --zone=public --add-port=3306/tcp --permanent

重新载入,添加端口后重新载入才能起作用:firewall-cmd --reload。

查看8080端口访问权限:firewall-cmd --zone=public --query-port=8080/tcp

关闭8080访问权限:firewall-cmd --zone=public --remove-port=8080/tcp --permanent

查看防火墙状态:systemctl status firewalld.service

查看端口:firewall-cmd --zone=public --list-ports

添加端口:firewall-cmd --permanent --zone=public --add-port=8080/tcp

删除端口:firewall-cmd --permanent --zone=public --remove-port=8080/tcp

查看端口占用:netstat -tln |grep 80

查看端口占用PID:sudo lsof -i:8000

杀掉占用的应用:sudo kill -9 pid

报错

在nginx配置文件增加了端口,防火墙对应端口也开启了,但无法访问。

解决办法:是去服务器的控制台,添加新的端口。

scp传输文件命令

scp file-name root@ip_add:/root/

Yum命令

yum 		 list installed
yum 		 remove ***
yum 		 install ***
yum 		 list ***
yum 		 deplist ***
yum 		 -y install tomcat
yum 		 info tomcat
yum 		 update
yum 		 update tomcat
yum 		 check-update
yum      install       softwarename        安装
yum      repolist                          列出设定yum源的信息
yum      remove        softwarename        卸载
yum      list          softwarename      查看软件源中是否有此软件
yum      list all                         列出所有软件名称
yum      list installed                    列出已经安装的软件名称
yum      list available               列出可以用yum安装的软件名称
yum      clean all                        清空yum缓存
yum      search         softwarename    根据软件信息搜索软件名字
yum      whatprovides   filename       在yum源中查找包含filename文件的软件包
yum      update                           更新软件
yum      history                          查看系统软件改变历史
yum      reinstall       softwarename     重新安装
yum      info            softwarename     查看软件信息
yum      groups list                      查看软件组信息
yum      groups info     softwaregroup    查看软件组内包含的软件
yum      groups install  softwaregroup    安装组件
eg:安装dhcp及卸载dhcp

彻底卸载mysql

链接

安装mysql

  1. 添加mysql源。

    wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
    rpm -ivh mysql80-community-release-el8-1.noarch.rpm
    # 注意 要加/get/
    
  2. 安装mysql。

    yum install mysql-server

  3. 启动mysql。

    sudo systemctl start mysqld

  4. 查看mysql状态。

    systemctl status mysqld

  5. 安全配置。

    mysql_secure_installation

    总共有五步:设置 root 密码;是否禁止 root 账号远程登录;是否禁止匿名账号(anonymous)登录;是否删除测试库;是否确认修改。

  6. 设置数据库远程连接。

    mysql -h localhost -u root -p ##登录数据库,输入密码后完成登录
    mysql> use mysql; ##选择 mysql 库
    mysql> select user,host from user; ##查询连接配置
    +------------------+-----------+
    | user             | host      |
    +------------------+-----------+
    | mysql.infoschema | localhost |
    | mysql.session    | localhost |
    | mysql.sys        | localhost |
    | root             | localhost |
    +------------------+-----------+
    4 rows in set (0.00 sec)
    
    mysql> update user set host='%' where user='root';##允许使用 root 账户进行远程登录
    mysql> flush privileges; ##刷新设置
    
  7. 设置开机自启systemctl enable mysqld

    原文链接

Centos8 常用命令

原文链接

建立连接

软链接

ln -s 源文件(绝对位置) 目标文件(绝对位置)。

ln -s /software/nginx/sbin/nginx /usr/bin/nginx

shell快捷指令存储在/usr/bin

环境变量

Linux开机后首先会执行/etc/profile.d/目录下的所有*.sh文件

所以可以在这个里面做一些开机后的初始化的命令。

bashrc文件(在用户的家目录下)则只对当前用户有用。
/.bashrc、/.bash_file 是当前用户目录下的配置信息。修改后用 source 命令更新。

同名的环境变量,后写入的起作用

项目部署到服务器上的方法

  1. 使用maven工具Lifecycle下的package将应用打包成jar包

  2. jar包放到服务器上,服务器需要有Java。

    nohup java -jar py-web.jar >log.txt &

    ps aux |grep java;kill -9 xxxx;

    ps aux |grep $2| grep -v grep | awk '{print $2}' | xargs kill -9

  3. war包放到tomcatweb根目录即可访问。

教程

三剑客

重启服务器后开启服务的流程

  1. 开启nginx
    nginx -c /software/nginx/conf/nginx.conf
  2. 开启springboot后端服务
    sh ./service.sh start xxx.jar

service.sh 代码

可以拿走直接用

#! /bin/bash
if [ $1 == "start" ];then
    {
        echo "" > output.log
        nohup java -jar $2 >> output.log &
    }
elif [ $1 == "stop" ];then
    {
        ps aux |grep $2| grep -v grep | awk '{print $2}' | xargs kill -9 
    }
fi
posted @ 2021-06-05 21:50  lambertlt  阅读(211)  评论(0编辑  收藏  举报