[从0到1,从零在liunx服务器上搭建一个java项目]

最近搞了个服务器准备记录一下搭建项目的过程


前言

最近续费了阿里云的服务器,之前买服务器的原因,主要是因为想要学习liunx知识而且当时正好打折,而这次续费的原因是想要在这个服务器上搞点东西出来,因为之前的服务器被我搞得面目全非,现在把系统还原重新搭建一些开源的项目,给想要自己从零开始搭项目的小白一些借鉴,另一方面也是为了记录这个过程。注本文使用的linux系统为 【Ubuntu 18.04.6】可以使用命令 lsb_release -a查看自己系统版本


一、搭建基础环境

    首先在服务器上要部署我们java项目是需要一些基础环境的,例如jdk,redis,mysql,tomcat,nginx之类的,类似于jdk之类的还要配置一些环境变量。
1.1安装jdk

JDK 官网地址:https://www.oracle.com/java/

下载1.8
下载jdk1.8版本到本地,然后利用ftp上传压缩包到服务器上,用rz命令也行
解压

tar -zxvf jdk-8u202-linux-x64.tar.gz  

在这里插入图片描述
然后我们来配置环境变量

vim /etc/profile
#set java enviroment
JAVA_HOME=/usr/local/jdk/jdk1.8 
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

编辑完毕,按下键盘的 Esc 退出编辑模式,再输入保存指令:

:wq

需要注意的是JAVA_HOME配置的是你jdk的安装目录
输入重置环境指令:

source /etc/profile

输入查看版本指令

java -version

在这里插入图片描述
1.2mysql
安装前最好检查一下服务器里是否安装了mysql,看情况是否要卸载替换,具体步骤网上都有,因为这个文章默认是初始环境从零搭建,这里就不做赘述了

安装mysql

apt install mysql-server

在这里插入图片描述
根据提示输入y

netstat -tap | grep mysql

通过上述命令检查之后,如果看到有 mysql 的socket处于 LISTEN 状态则表示安装成功。
在这里插入图片描述
登陆mysql

mysql -u root -p 

-u 表示选择登陆的用户名, -p 表示登陆的用户密码,现在是mysql数据库是没有密码的,Enter password:处直接回车,就能够进入mysql数据库。

然后通过 show databases; 就可以查看当前的所有数据库。
在这里插入图片描述

然后我们要对mysql进行一些基础的配置,什么root的密码等等
一般是以下5个步骤
(1)安装验证密码插件。

(2)设置root管理员在数据库中的专有密码。

(3)随后删除匿名账户,并使用root管理员从远程登录数据库,以确保数据库上运行的业务的安全性。

(4)删除默认的测试数据库,取消测试数据库的一系列访问权限。

(5)刷新授权列表,让初始化的设定立即生效。
执行

mysql_secure_installation
Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD PLUGIN can be used to test passwords

and improve security. It checks the strength of password

and allows the users to set only those passwords which are

secure enough. Would you like to setup VALIDATE PASSWORD plugin? #要安装验证密码插件吗?

Press y|Y for Yes, any other key for No: N # 这里我选择N

 

Please set the password for root here.

New password: #输入要为root管理员设置的数据库密码

Re-enter new password: #再次输入密码

 

By default, a MySQL installation has an anonymous user,

allowing anyone to log into MySQL without having to have

a user account created for them. This is intended only for

testing, and to make the installation go a bit smoother.

You should remove them before moving into a production

environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y #删除匿名账户

Success.

 

Normally, root should only be allowed to connect from

'localhost'. This ensures that someone cannot guess at

the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : N #禁止root管理员从远程登录,这里我没有禁止

 

... skipping.

By default, MySQL comes with a database named 'test' that

anyone can access. This is also intended only for testing,

and should be removed before moving into a production

environment.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y #删除test数据库并取消对它的访问权限

 

- Dropping test database...

Success.

- Removing privileges on test database...

Success.

Reloading the privilege tables will ensure that all changes

made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y #刷新授权表,让初始化后的设定立即生效

Success.

All done!

再次用mysql -u root -p命令,Enter password:处输入刚设置的密码,回车,就能够进入mysql数据库。

然后我们要配置mysql可以远程访问,比如用dbeaver,navi,java项目配置ip,port就能访问mysql
首先如果使用阿里云,或者腾讯云的服务器有一个安全组的,类似于防火墙的一种东西会对我们服务器的一些端口做一些限制,所以我们先开启3306(mysql默认端口)端口的限制,安全组解除完后我们查看. ps:安全组怎么解除端口限制百度有教程

netstat -an | grep 3306                                                      
tcp    0   0 127.0.0.1:3306      0.0.0.0:*         LISTEN        

如果是listen的状态代表端口是开放的
但是看到127.0.0.1代表 我们这个mysql只对本地开放
开始修改配置

 vim /etc/mysql/mysql.conf.d/mysqld.cnf

注释掉bind-address = 127.0.0.1
在这里插入图片描述

mysql -u root -p

mysql> grant all on *.* to root@'%' identified by 'root用户的密码' with grant option;

mysql> flush privileges; # 刷新权限

mysql> exit

然后exit退出mysql
#重新启动mysql服务

sudo service mysql restart    

如果还不能访问一般就是防火墙的问题
解除防火墙的限制

sudo ufw allow 3306    

可以试一试远程连接了
1.3搭建tomcat
虽然现在springboot项目内置了tomcat,但是一些老的项目还是需要单独部署tomcat,而且了解tomcat的目录结构也有助于我们排查问题
下载 apache-tomcat-9.0.65.tar
下载地址:https://tomcat.apache.org/download-90.cgi
在这里插入图片描述
在 xftp 界面找到 Windows 桌面下载好的 tomcat 压缩包

把 tomcat 压缩包拖动到云服务器界面,直接鼠标选中文件拖动即可

或者rz上传,没有rz命令 apt -install rz 应该是这个命令,输入rz enter如果没有这个命令系统回提示
然后又是老一套

tar -zxvf apache-tomcat-9.0.65.tar.gz

在这里插入图片描述
安全组(阿里云,腾讯云)开放 8080 端口
在这里插入图片描述
进入 tomcat 的 bin 目录,输入启动指令:

./startup.sh 

在这里插入图片描述
访问你的公网ip加8080端口
在这里插入图片描述
出现这个图片就成功了

未完待续

2023年6月份打卡 在年初系统学习完docker后,回头看自己的文章发现以前的部署繁琐复杂尤其是mysql从下载到启动到改配置,稍微做错一步就有可能失败,再次感受到了docker的便利,纵观java部署的历史曲线k8s和云原生的出现也确实是不可阻挡的趋势,本文也不再更新,会出一个docker版本.

23年12月打卡 在对docker有着更深层次的理解后发现有状态的服务(mysql)之类用docker部署是不负责的行为,这也就是db运维的重要性。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值