服务器配置及项目部署


服务器配置及项目部署笔记


一,服务器配置(Centos)

1. linux服务器安装jdk

采用yum安装jdk1.8
yum search java|grep jdk            查看yum库中jdk的版本
yum -y  install java-1.8.0-openjdk*    安装jdk8
检查jdk是否安装成功
命令行里输入 java -version

2. linux服务器安装mysql

安装前看是否安装过   mysql yum list installed mysql*
如果有就用yum remove卸载mysql

查看yum库下是否有mysql-server
yum list | grep mysql 或 yum -y list mysql*

如果没有(一般在centos7下没有)
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
然后安装mysql
yum install mysql-server
yum install mysql-devel

如果有mysql-server,则按下面步骤
安装mysql客户端:
yum install mysql 
安装mysql 服务器端:
yum install mysql-server
yum install mysql-devel

然后在mysql配置文件/etc/my.cnf的[mysqld]中加入character-set-server=utf8

然后启动mysql服务
service mysqld start
登录mysql
mysql -u root -p
刚安装密码为空,直接按回车
切换到mysql数据库:use mysql;
然后修改密码UPDATE user SET password=password("你的密码") WHERE user='root';
刷新权限
FLUSH PRIVILEGES;

二,上传jar包到服务器

打开FileZilla软件,使用公网ip,用户名,密码,22端口连接服务器
上传jar文件到home文件里

##################################################################
或者
执行 (sudo) yum install lrzsz 命令安装一个能下载、上传的软件
执行 rz 命令 上传命令
执行 sz 命令 下载命令

三,启动spring boot项目

1. 运行项目

java -jar xxx.jar

2. 指定端口运行

java -jar xxx.jar –server.port=80

3. 后台运行(指定文件nohup.out)

nohup java -jar xxx.jar &

4. 后台运行(自定义输出文件)

nohup java -jar xxx.jar >logs.txt &

5. 指定端口后台运行

nohup java -jar xxx.jar >logs.txt –server.port=80 &

四,服务器绑定域名

1. 找到自己的域名列表,点击解析
2. 添加解析规则
3. 绑定自己服务器的公网ip到解析规则
4. 两个解析规则 @和www

五,服务器配置(Ubuntu)

0. 前期准备

安装sudo
由于Debian 8系统默认没有安装sudo包,因此我们先通过 apt-get 安装。
首先,更新apt包目录:
$ apt-get update
然后使用下面的命令安装sudo:
$ apt-get install sudo
现在可以使用sudo和visudo命令了。

赋予sudo权限
为了给新用户添加管理权限,我们需要把新用户添加到sudo用户组。Ubuntu 操作系统中,属于sudo用户组的用户默认可以使用sudo命令。
在root用户下,运行如下命令,将demo用户添加到sudo用户组:
$ usermod -a -G sudo demo
上面的命令中,-a 选项指的是将用户添加到对应的用户组中,只能配合 -G 选项一起使用。

1. linux服务器安装jdk

输入:java
输入命令:sudo apt install openjdk-8-jre-headless,回车
等待安装好后,输入:javac
输入命令:sudo apt install openjdk-8-jdk-headless,回车
等待安装好后,输入:java,javac检验是否安装成功。

2. linux服务器安装mysql

1. 更新仓库
sudo apt update
2. 安装mysql
sudo apt install mysql-server -y
或apt-get install mysql-server
3. 使用命令查询是否安装成功
mysql -V(大写)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
或者
先安装wget
yum -y install wget
下载 mysql源安装包 
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
安装mysql源
yum -y localinstall mysql57-community-release-el7-11.noarch.rpm
在线安装Mysql
yum -y install mysql-community-server

启动Mysql服务
systemctl start mysqld
设置开机自启动
systemctl enable mysqld 
systemctl daemon-reload

修改root本地登录密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码。 
vi /var/log/mysqld.log 
这里的临时密码 p1CwSKiJ0u&,可能不同
mysql -u root -p      Enter password:
进入之后输入临时密码 进入mysql命令行; 
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Hello@123'; 
( mysql5.7默认密码策略要求密码必须是大小写字母数字特殊字母的组合,至少8位) 密码若不符合要求会报错

然后在mysql配置文件/etc/my.cnf的[mysqld]中加入
character-set-server=utf8
init_connect='SET NAMES utf8' 
编辑保存完 重启mysql服务
systemctl restart mysqld 

设置允许远程登录
Mysql默认不允许远程登录,我们需要设置下,并且防火墙开放3306端口;这样数据库可视化工具就可以远程连接数据库进行操作 
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Hello@123' WITH GRANT OPTION;

六,停止spring boot项目

1. 列出后台进程
ps -ef | grep java
2. 杀死进程
kill -9 xxxx
(xxxx为上条命令列出的后台进程的pid, -9 表示无条件终止)

七,项目启动停止脚本(未测试)

1. 启动脚本xxx-startup.sh:

nohup java -jar xxxx-1.0.0-SNAPSHOT.jar &
echo $! > xxxx.pid
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
或者
#!/bin/bash
echo "服务启动"
# 后台运行jar包任务
nohup java -Xms1024m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m -jar xxx.jar --server.port=8080 > xxx.out 2>&1 &
# 将启动的进程PID写入到指定的文件中,以便后续关闭服务时使用
echo $! > xxx.pid

上述脚本中 2>&1 意思是将标准错误(2)重定向到标准输出中(1)
echo $!可以获取pid,每次启动的时候就会将项目的pid存入xxxx.pid文件

2. 停止脚本xxx-shutdown.sh:

kill -9 $(cat xxxx.pid)
rm -f xxxx.pid
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
或者
#!/bin/bash
echo "关闭服务"
PID_FILE=./xxx.pid
if [ -e "$PID_FILE" ]; then
      kill -9 $(cat $PID_FILE)
      rm -f $PID_FILE
else 
      echo "找不到服务PID文件"
fi

从xxxx.pid 中获取到启动时存入的pid,杀死进程,将xxxx.pid 文件删除

3、将脚本变为可执行文件:

chmod 777 xxx-startup.sh
chmod 777 xxx-shutdown.sh

八,远程连接数据库配置

登入数据库
use mysql;
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456" WITH GRANT OPTION;
FLUSH PRIVILEGES;

文章作者: DaIQiFenG
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-SA 4.0 许可协议。转载请注明来源 DaIQiFenG !
评论
  目录