Linux操作系统(Aliyun OS)下JDK、Tomcat、MYSQL和SVN开发环境搭建

转载请标明出处:https://blog.csdn.net/gwltd2/article/details/96573074

〇、摘要

本文主要介绍在Aliyun OS(类Cent OS)环境下配置Java Development Kit,Tomcat,MYSQL及SVN工具环境。方便开发者参考基础环境的搭建。

一、JDK配置

与Windows台式机环境配置相似,换汤不换药。
在配置JDK之前,首先确认权限,尽量用root管理员权限,避免有些内容无法操作,如果没有root权限,可通过密码使用sudo进行部分指令操作,否则不方便配置;随后,需要查看所在的操作系统主机/服务器环境是否具有默认配置,如果默认配置符合要求,直接进行环境变量配置即可,无需重复安装。Let’s go !

# find / -name java

参考查询效果如下:
当前Java环境配置

1. 安装包下载

如果没有相应环境,可以从oracle官网下载,如需账号可按步骤注册或使用已有的。JDK下载地址
JDK官网下载-版本选择
rpm和tar.gz版本均可选择,笔者使用的版本如上图。.rpm后缀类型文件安装下文在配置MYSQL会提到,请留意。建议将已下载的文件备份到 /home 路径下自己建立的文件夹内。(这里简单普及一点小常识,笔者学习过程中总是混淆,可能会对大家有用,具体见下方)

根目录
# cd /
User目录
# cd /usr/ 
说明:苹果Unix系统的桌面Desktop通常在/Users/username目录中,可给不同用户分配不同的权限,每个用户可建立自己个性化的Repository。

2. 解压安装

将下载的文件移动至/user/local目录中新建的myJava文件夹中进行解压安装。

移动至local路径下
# cd /usr/local
建立myJava文件夹(也叫路径Repository)
# mkdir myJava
解压缩jdk文件(相当于windows中解压缩文件)
# tar -zxvf jdk-8u211-linux-x64.tar.gz

解压过程如下:解压过程

3. 环境变量配置

在根目录中 etc 栏目下的 profile 文件中配置环境变量,!!!一定要在文件的最下方输入export相关指令;并通过source环境变量执行生效
提示:进入编辑模式中由于是vim文本编辑环境,输入 “i”【代表insert】进行修改,修改完毕输入“:wq”【代表write and quit】存储退出。

编辑配置环境,进入文档
# vim /etc/profile
环境变量配置(/etc/profile文件内,路径可以修改)
export JAVA_HOME= /usr/local/myJava/jdk1.8.0_211
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

环境变量配置

使配置环境生效
# source /etc/profile

配置环境生效

4. 环境配置检验

环境配置检验
# java -version
其他验证,输入之后,如果配置成功,系统自动提示相应指令用法。
# java
# javac

环境配置检验
出现版本号介绍,代表配置成功。

二、Tomcat配置

Tomcat主要用于Web端项目发布。
在第二部分首先补充一下本地已下载的文件(jdk压缩包、Tomcat压缩包等)在服务器端上传的方法;然后进行tomcat环境配置;最后介绍基于aliyun服务器端口管理的处理方法。
在此过程中,感谢技术分享的Geeker1 2 3;此外,如果您在阅读过程发现冗余的内容,或者配置操作过程找到更好的方式,欢迎指点。

1. 安装包下载

下载Tomcat8.5.43,根据需要选择下载linux通用版本,后缀为tar.gz。
tomcat linux版本下载

2. 解压安装

将下载的文件移动至/user/local目录中的myJava文件夹内进行解压安装。

移动至/usr/local/myJava路径下(安装jdk时候已经建好)
# cd /usr/local/myJava
解压缩tomcat文件(相当于windows中解压缩文件)
# tar -zxvf apache-tomcat-8.5.43.tar.gz

tomcat文件解压缩后效果
解压完毕,需要检查一下java的配置,如果没有配置好,请参照“一、JDK配置”。

3. 参数配置

此处需进入至已解压的 tomcat 文件夹中,进入 conf 文件夹中并编辑 server.xml 文件。

当前默认在myJava文件中,目录下有已解压的apache-tomcat-8.5.43文件夹
# cd /apache-tomcat-8.5.43/conf
编辑server.xml文件(这里用的vim编辑工具,vi、emacs同样可以)
# vim server.xml

进入文件后向下查找connector端口并确认是否修改,tomcat中默认端口为8080;如需修改,可以定义端口号,但要避免与其他端口冲突。
tomcat中端口修改

4. 服务器操作

当前默认在myJava/apache-tomcat-8.5.43文件中
# cd /bin
启动服务器
# ./startup.sh
当前默认在myJava/apache-tomcat-8.5.43文件中
# cd /logs
查看服务器日志
# cat catalina.out

服务器日志中看到具体启动时间,代表服务器成功启动并运行。
tomcat服务器启动
部署成功后,可本地或外网访问tomcat服务器。
访问地址为localhost:8080或者xxx.xxx.xxx.xxx:8080(IP地址:端口号)
服务器访问成功页面
到此为止,服务器顺利搭建。

服务器关闭
#  ./shutdown.sh

tomcat服务器关闭

5.服务器端口配置

上述步骤能够满足本地的tomcat服务器访问,但是公网访问需要对端口、防火墙等内容进行更加细致的配置,有需要外网部署的朋友可以参考以下内容。
阿里云服务器端口配置
阿里云服务器的端口的出、入端放行需要在阿里云服务器后台中安全组配置,并要通过管理员的手机认证。首先,在阿里云服务器中找到实例页面并选中本实例安全组
实例安全组查找
分别进行内网入方向/出方向的规则配置。
内网入方向实例配置概览
点击右上方(上图中优先级右侧)进入安全组列表
配置规则选择
选择上图中的“配置规则”,进入规则的创建、导入或修改。
端口配置
以入方向为例(出方向配置相同),点击添加安全组规则,并输入端口号8080/8080,授权对象填写0.0.0.0/0代表对所有host放行(如需要禁用,请自行查找禁用规则)。
对出方向采用相同的方式配置,端口范围、授权对象与入方向相同,这里不再赘述。点击“确定”配置完毕。
端口及进程的查看
为了明确系统部署端口是否被占用,被哪个应用占用,需查看端口占用情况及对应进程下的应用。

当前默认在myJava/apache-tomcat-8.5.43文件中
# cd /bin
查看端口占用情况
# lsof -i:8080

查询端口成功,显示查询端口的pid(进程id,可用于进一步查看以获取更多的信息)
端口占用情况查询
如端口被其他应用占用,可关闭进程或者改变服务部署端口。

端口对应进程信息查询
#  ps axu|grep 16880

查看端口对应进程信息
防火墙配置
端口配置完毕后,若依然无法访问,需要查看防火墙的配置。
对于新的机器/云服务器,需要进行防火墙服务的获取与安装。
防火墙的配置有多种方式,最暴力的是关闭防火墙,但是安全有隐患,不建议使用。

防火墙服务安装(所有源),通常操作系统默认有iptables服务
# yum install iptables* -y
防火墙服务关闭
# service iptables stop
开放8080端口
# /sbin/iptables -l INPUT -p tcp --dport 8080 -j ACCEPT
端口规则保存
# /etc/rc.d/init.d/iptables save
端口重启
# /etc/init.d/iptables restart
端口状态查询
# /etc/init.d/iptables status

到这里,tomcat配置过程中遇到的困难基本解决,如有其他情况,可以进一步沟通。Good Luck!

三、MYSQL配置

1. 下载与安装

压缩包普通下载及解压已经在JDK和TOMCAT下载过程中解释,如有需要请查看。
这里另外介绍从yum源获取安装方法4 5,更加简洁,如需删除已有的可参考“六、参考内容中的第5个”。

通过yum源获,.rpm格式文件
# wget -P /home/lisonglin http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
安装mysql的yum源,需要下载相应制定路径进行安装
# rpm -ivh mysql57-community-release-el7-11.noarch.rpm

下载成功会有此提示。
mysql下载成功

2. 服务配置

MYSQL服务安装
# yum install mysql-community-server

输入自动安装,这里由于已经安装过,所以显示nothing to do.
mysql-community-server安装
MYSQL服务配置

服务启动
# systemctl start mysqld
服务状态查询
# service mysqld status

服务状态查询

3. 用户配置

登录MYSQL进行用户创建及用户权限配置,mysql自动root账号的初始密码,用户需要获取后修改,方可进行其他业务的操作。

登录进入mysql
# mysql -uroot

登录进入mysql
访问失败,需要获取系统的初始密码

mysql账户密码获取,通过rpm包安装,密码默认在/var/log/mysqld.log文件中
# grep 'temporary password' /var/log/mysqld.log
通过解压缩的形式安装配置,笔者在/root/.mysql_secret获取密码,但是由于获取密码中有“)”,输入后该符号无法通过认证,所以后面直接跳过密码,进行重置了。这里如果有大神了解,请指导。
# cat /root/.mysql_secret

获取默认密码后,通过账户密码登录到mysql后,首先需要修改默认密码,否则无法进行后面操作。
注意:mysql5.7之后增强了安全机制,系统默认安装了密码安全检查插件(validate_password),默认密码须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。为避免过于复杂的密码,可以在mysql中调整policy的采纳。

通过root和获取到的密码进入mysql
# mysql -uroot -pxXXX

MYSQL登录

更改初始用户数据
mysql> alter user 'root'@'localhost' identified by '123456';

由于密码过于简单,不符合默认密码配置要求,提示“提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements”
如果希望使用较容易记的密码,需要修改规则

更改初始用户数据
mysql> set global validate_password_policy=0;

出现以下内容,表示修改政策成功。
修改政策成功

修改用户初始密码
mysql> update mysql.user set authentication_string=PASSWORD('123456') where User='root';
flush privileges;
或
mysql> mysqladmin -u root -p password "123456"

由于当前没有对互联网的用户权限配置,要想从外网访问mysql数据库,需要进行配置;这里简单地配置外网所有人可以访问,但是密码。

用户登录mysql成功后,开始配置访问权限。
mysql> use mysql;
设置root账户被访问权限
mysql> update user set host="%" where user = 'root';
或
mysql> grant all privileges on . to 'root'@'%';
使授权立即生效
mysql> flush privileges;
退出mysql环境
quit;

管理员账户无论用哪种规则配置成功后,即可在host端用Navicat等工具进行远程访问。
授权生效
如果此时仍然不通,需要考虑防火墙和管理端口。

4. 端口配置

服务启动及用户配置后,但在主机连接云服务器依然不通,需结合不同情境考虑防火墙、端口开放等问题。防火墙方面,依然不支持直接关闭,这样会引起安全风险,要耐心的面向定义的端口进行规则设定。mysql服务默认端口为3306

防火墙状态查询
# systemctl status firewalld
防火墙开启
# systemctl start firewalld

防火墙状态查询
防火墙端开发默认端口。

防火墙端口开放 - TCP
# firewall-cmd --permanent --zone=public --add-port=3306/tcp
防火墙端口开放 - UDP
# firewall-cmd --permanent --zone=public --add-port=3306/udp

端口开放
阿里云端口规则配置,参考”二、Tomcat配置“中的5.服务器端口配置”中的阿里云后台端口管理配置,按照介绍找到安全组,添加"3306/3306"至端口范围,添加"0.0.0.0/0至授权对象"即可。

5. 本机Navicat访问

在navicat中,点击”文件-新建连接-MySQL,并输入IP、端口号和密码。
navicat输入页面
点击“确认”后,Mysql成功连接。
服务连接
如果有sql文件导入导出了解的需要,可以查看该链接6

Bonus: MYSQL管理密码重置

由于笔者mysql配置过程中不是很顺利,默认要求的密码获取后,格式不符合要求,认定失败,所以只能另辟蹊径7,此处作为bonus送给大家。

编辑mysql配置文件
# vim /etc/my.cnf
在文档中添加"skip-grant-tables'

mysql访问策略

重启mysql生效
# systemctl restart mysqld
直接登录即可
# mysql
进入账户后,改回mysql并重启

四、SVN配置

1. 安装包下载

由于前面三大部分进行了各种下载安装介绍,这里不赘述了,阿里云服务器系统自带svn直接安装即可8

svn安装
# yum install subversion

svn安装

2. 目录配置

创建版本库根目录
# mkdir /var/svn
创建版本库
# svnadmin create /var/svn/svnrepos
进入版本库路径
# cd /var/svn/svnrepos

svnrepos目录先内容

目录 说明
db 存放所有的版本控制数据文件
hooks 放置hook脚本文件
locks 用来追踪存取文件库的客户端
format 一个文本文件,文件中只包含一个整数,表示当前文件库配置的版本号
conf SVN仓库的配置文件(仓库的访问账号、权限等)

3. 权限配置

SVN仓库设置账号和密码

当前在svnrepos目录下,进入仓库篇日志文件
# cd conf
编辑配置文件
# vim passwd

注意:添加账号密码格式为:账号=密码。如gw(账号)=123456(密码),等号两端要有一个空格,配置语句前面不带#,否则将会被是为注释。
账号密码配置
为账号设置读写权限

当前在conf目录下,编辑authz配置读写权限,按i进入编辑模式
# vim authz
保存
:wq

在文件末尾添加如下代码,gw代表账号,r代表读权限(read),w代表写权限(write)。
为账户配置读写权限
svn服务配置

当前在conf目录下,编辑svnserve.conf
# vim svnserve.conf

svn服务配置
anon-access = none
#匿名用户不可读
auth-access = write
#授权用户可写
password-db = passwd
#使用哪个文件作为账号文件
authz-db = authz
#使用哪个文件作为权限文件
realm = /var/svn/svnrepos
#认证空间名,版本库所在目录
!!!注意!!!,注释不要卸载语句后面,否则会影响运行。

启动svn版本库
# svnserve -d -r /var/svn/

下图为已启动后的提示。
版本库启动

查看svn进程(process)是否开启
# ps -ef |grep svn

svn进程状态

4. 端口配置

svn服务默认端口为3690。
SVN端口规则配置,参考”二、Tomcat配置“中的5.服务器端口配置”中的阿里云后台端口管理配置,按照介绍找到安全组,添加"3690/3690"至端口范围,添加"0.0.0.0/0至授权对象"即可。

防火墙端口配置
# firewall-cmd --permanent --zone=public --add-port=3690/tcp

5. host服务使用

svn配置完毕主机使用的过程中需要注意服务端的url9
在网址选择过程中,不必输入端口号,直接svn://xxx.xxx.xxx.xxx/svnrepos,点击ok后,系统会提示输入用户名和密码,使用之前配置的即可。
url选择
SVN服务器端内容下载
下载

五、One More Thing …

FinalShell
由于笔者不太喜欢用盗版软件,力所能及的通常直接买正版了,以上配置中的远程连接都是用的这个。SSH连接、远程桌面和文件传输都用得到,供参考使用
使用界面

六、结语

在环境搭建配置过程中参考了很多博主们的分享内容,在配置的过程中,避免了不少坑,在此表示感谢;希望梳理的这些内容能够有用;期望今后互相交流、互相学习!

七、参考内容

转载请标明出处:https://blog.csdn.net/gwltd2/article/details/96573074


  1. Linux下安装Tomcat服务器和部署Web应用 ↩︎

  2. Linux下,Tomcat启动成功,发现ip:8080访问失败 ↩︎

  3. 云栖社区:阿里云服务器下的8080端口不能通过域名访问,怎么配置安全组? ↩︎

  4. 云栖社区:阿里云服务器ECS配置之安装mysql ↩︎

  5. 阿里云服务器搭建(二)–mysql配置+部署web项目 ↩︎

  6. 怎样使用Navicat Premium导出导入mysql数据库 ↩︎

  7. linux下mysql5.7初始密码查看及忘记密码重置 ↩︎

  8. 搭建和使用SVN ↩︎

  9. linux(centos7)svn Unable to connect to a repository at URL 和 No repository found in 错误处理 ↩︎

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章