今早翻开手机看到某云一条广告Linux1 核 2 GB 1 Mbps服务器10元一个月,正巧最近在搞linux,于是下单了一台2个月20。

上班来到公司后,借空闲时间一顿研究,一波骚操作配置后,浏览器打开ip地址正常,看到了熟悉的tomcat9页面。

然后又是一波骚操作,把自己的之前写的spring boot + jpa + bootstrap + thymeleaf 简单的增删改查Demo项目部署了上去,打开ip也正常显示。

所以在此记录下,当拿到一台全新的linux服务器后该如何配置(操作步骤借鉴公司内部的环境部署文档)

一、配置网络设置

有的linux拿到后不能访问网络所以要配置下网络设置

vi /etc/resolv.conf

1.添加 一行   nameserver 114.114.114.114

2.重启网络:service network restart 

接下来我的配置流程是:mysql、java、tomcat、发布项目

二、配置mysql

mysql配置:

安装mysql

yum –y install mysql

在这里安装后可能会出现一个错误,解决如下:

yum install的时候提示:Loaded plugins: fastestmirror

fastestmirror是yum的一个加速插件,这里是插件提示信息是插件不能用了。不能用就先别用呗,禁用掉,先yum了再说。

1.修改插件的配置文件

vi  /etc/yum/pluginconf.d/fastestmirror.conf

enabled = 1//由1改为0,禁用该插件

2.修改yum的配置文件

vi /etc/yum.conf

plugins=1//改为0,不使用插件

安装mariadb(mysql的分支):yum -y install mariadb-server

装库成功后启动数据库: systemctl start mariadb

检查数据库状态: systemctl status mariadb

确保是开启状态后进入数据库:mysql

为root账号设置密码,同时刷新权限,如密码是‘root’:

use mysql;

update user set Password=PASSWORD("root") where User='root';

flush privileges;

增加一个用户。在项目中用它,创建用户名‘xxx’,密码‘123456a?’的用户

create user 'xxx'@'%' identified by '123456a?';

给他赋予所有的权限

GRANT ALL PRIVILEGES ON *.* TO 'xxx'@'%' IDENTIFIED BY '123456a?';

刷新权限

flush privileges;

退出数据库,重新使用wjup和root账号登录,验证是否能登陆成功

容易出现的问题:ERROR 1045 (28000): Access denied for user 'tester'@'localhost' (using password: YES)

解决方式a:用户密码是否正确,修改密码

1.修改MySQL的登录设置: 
vim /etc/my.cnf 

在[mysqld]的段中加上一句:skip-grant-tables

2.重新启动mysql 
// service mysql restart

systemctl restart mariadb

3.登录并修改MySQL的root密码

mysql> use mysql

 Database changed 

 mysql> update user set password = password ('new-password') where user = 'root'; 

 Query OK, 0 rows affected (0.00 sec) 

 Rows matched: 5 Changed: 0 Warnings: 0 

 mysql> flush privileges; 

 Query OK, 0 rows affected (0.01 sec) 

 mysql> quit

4.将MySQL的登录设置修改回来 
vim /etc/my.cnf 

将刚才在[mysqld]的段中加上的skip-grant-tables注释 

保存并且退出vim

5.重新启动mysql 
//service mysql restart

systemctl restart mariadb

解决方式b:数据库中存在匿名用户,删除匿名用户即可

Delete FROM user Where User='';

flush privileges;

到这里如果需要远程连接,可以开放3306端口

iptables -I INPUT -p tcp --dport 3306 -j ACCEPT;

然后可以远程用navicat或者啥连接试试了

三、配置JDK

我把jdk放在了/usr/java下

1.创建文件夹:mkdir /usr/java

2.用ftp工具上传下载好的jdk-8u211-linux-x64.rpm(ORACLE官方下载地址

执行安装命令:rpm -ivh jdk-8u211-linux-x64.rpm

如果提示缺少执行权限执行权限命令:chmod +x jdk-8u211-linux-x64.rpm

查看java的版本信息:java -version

配置环境变量:vim ~/.bash_profile 

末尾追加

export JAVA_HOME=/usr/java/jdk1.8.0_211-amd64

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$JAVA_HOME/bin:$PATH

加载刚设置的变量:source /etc/profile

四、配置tomcat

tomcat同样我也放在了/usr/tomcat

同样先创建文件夹:mkdir/tomcat

用ftp工具上传进去,然后解压:tar -xzvf apache-tomcat-9.0.20.tar.gztomcat官方下载地址

解压后编辑tomcat的配置文件,修改默认的8080端口改为80

vi usr/tomcat/apache-tomcat-9.0.20/conf/server.xml

然后退出,保存(esc、:wq),接着去tomcat的bin目录启动tomcat就可以了

sh apache-tomcat-9.0.20/bin/startup.sh

可以到tomcat的logs下查看catalina.out

tail -f apache-tomcat-9.0.20/logs/catalina.out

成功后放开80端口

iptables -I INPUT -p tcp --dport 80 -j ACCEPT

没问题的话然后在浏览器就可以看到tomcat9的默认页面了

五、发布项目

将项目配置好数据库连接信息和端口后打成war包,然后上传到tomcat的webapp目录下

先停止tomcat(sh shutdown.sh),再次启动即可(sh startup.sh )

等待启动成功后就可以在浏览器查看项目了(http://ip/war包名)

想访问地址不加war包名就可以可看到项目,可以把webapp下自动解压的war包文件夹里的内容替换到ROOT文件夹下即可

拿到新linux服务器,从配置环境到跑起项目的部署流程的更多相关文章

  1. [亲测]ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问

    前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...

  2. 本地Linux服务器上配置Git

    当我们需要拉取远程服务器代码到本地服务器时,我们首先要确定已经配置了正确的Git账号,可以从~/.gitconfig文件(为隐藏文件,需要使用ls -a查看),以及~/.ssh下的id_rsa.pub ...

  3. [亲测]七步学会ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问

    前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...

  4. linux服务器上配置多个svn仓库

    linux服务器上配置多个svn仓库 1.在指定目录建立仓库保存总目录,本文示例目录设定为:/usr/local/svn/svnrepos # mkdir -p /usr/local/svn/svnr ...

  5. 在Linux服务器上配置phpMyAdmin

    使用php和mysql开发网站的话,phpmyadmin是一个非常友好的mysql管理工具,并且免费开源,国内很多虚拟主机都自带这样的管理工具,配置很简单,接下来在linux服务器上配置phpmyad ...

  6. Linux服务器时间同步配置

    Linux服务器时间同步配置   以CentOS7 做时间服务器,其他服务器(Centos 6.RHEL7)同步该服务器时间 RHEL 7.CentOS 7 默认的网络时间协议 为Chrony 本教程 ...

  7. Linux服务器下配置Java环境、JDK

    前言 可以解决问题有/etc/profile与~/.bashrc环境文件区别 文件权限问题,只读readonly Java环境搭建 一.下载JDK包 地址:jdk1.8提取码:gx0b 把文件放到Li ...

  8. Linux系统下配置环境变量

    一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登 ...

  9. 结合jenkins在Linux服务器搭建测试环境

    何时使用: 测试过程中我们需要持续构建一个软件项目,为避免重复的手动下载.解压操作,我们需要搭建一个能够自动构建的测试环境,当代码有更新时,测试人员只需点一下[构建]即可拉取最新的代码进行测试(也可设 ...

随机推荐

  1. maven学习(三)-使用maven来创建项目

    转自https://www.cnblogs.com/xdp-gacl/p/4240930.html maven作为一个高度自动化构建工具,本身提供了构建项目的功能,下面就来体验一下使用maven构建项 ...

  2. 好文推荐:终于有人把Elasticsearch原理讲透了

    专注于Java领域优质技术,欢迎关注 作者:channingbreeze 转自公号:互联网侦察 小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. ...

  3. django数据库读写分离

    django数据库读写分离 1. 配置数据库 settings.py文件中 用SQLite: DATABASES = { 'default': { 'ENGINE': 'django.db.backe ...

  4. 每天一点点之数据结构与算法 - 应用 - 分别用链表和数组实现LRU缓冲淘汰策略

    一.基本概念: 1.什么是缓存? 缓存是一种提高数据读取性能的技术,在硬件设计.软件开发中都有着非广泛的应用,比如常见的CPU缓存.数据库缓存.浏览器缓存等等.   2.为什么使用缓存?即缓存的特点缓 ...

  5. Tensorflow学习教程------参数保存和提取重利用

    #coding:utf-8 import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data mni ...

  6. python类(2)

    #从python开始学习编程 学习笔记 以后看书时注意一下书上表述:好像是类属性attribute,对象特性property,对象方法 1.对于一个类下的全部个体来说,某些属性可能存在个体差异.不是所 ...

  7. 从 relu 的多种实现来看 torch.nn 与 torch.nn.functional 的区别与联系

    从 relu 的多种实现来看 torch.nn 与 torch.nn.functional 的区别与联系 relu多种实现之间的关系 relu 函数在 pytorch 中总共有 3 次出现: torc ...

  8. handler method 参数绑定常用注解

    handler method 参数绑定常用的注解,我们根据他们处理的Request的不同内容部分分为四类: A.处理requet uri 部分(这里指uri template中variable,不含q ...

  9. 吴裕雄--天生自然MySQL学习笔记:MySQL 复制表

    如果需要完全的复制MySQL的数据表,包括表的结构,索引,默认值等. 如果仅仅使用CREATE TABLE ... SELECT 命令,是无法实现的. 如何完整的复制MySQL数据表,步骤如下: 使用 ...

  10. puts函数出现warning: passing argument 1 of ‘puts’ from incompatible pointer type(警告:从不兼容的指针类型传递“puts”的参数1)

    代码: /************************************************************************* > File Name: ptr_v ...