如何搭建java web服务器,第1张

1由于服务器配置比较低综合考虑,选择ubuntu系统进行搭建

2 登陆阿里云服务器:

方法一:使用xshell软件登陆服务器

主机填写ip地址

端口号选择22

连接登陆服务器

方法二:使用阿里云管理终端

ssh root@服务器ip地址

password:输入密码

3如何上传文件

方法一:windows和linux上传或下载某个文件可以使用rz,sz

sudo apt-get install lrzsz

安装完成后进入准备存放改文件的文件夹输入rz,就会跳出文件选择框

例如:#cd apache-tomcat-7069/bin  rz

cd后有空格

cd ~:返回最上层

cd :返回上一层

cd -:返回最近操作 

方法二:使用xshell中的插件Xftp

4安装及配置环境

安装lsb指令

ubunu快捷安装需要的命令,更新一下:

自带源在大陆不好,更新即可解决

1sudo apt-get update  

2apt-get install yum  yum install -y redhat-lsb

输入lsb指令查看当前版本 

查看版本号

lsb_release -a查看当前位数

getconf LONG_BIT

安装jdk:

方法一:ubuntu自动安装jdk

sudo apt-get install jdk

安装完成后配置环境:

使用vim指定编辑etc目录下profile文件,添加export

#vim /etc/profile

添加进profile文件

JAVA_HOME=/home/java/jdk160_12

export JRE_HOME=/home/liujicheng/java/jdk160_12/jre

export CLASSPATH=:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

//java存放位置请自行更改

//使用 which java 查看jdk所在文件夹

方法二:本地下载jdk上传

下载对应系统32位或64位的targz文件

建议:经过还几次对服务器进行环境搭建,已经有了一点小小的见解,建议不要使用过低版本的JDK,例如服务器JDK版本为15而项目JDK版本为18的情况,就会出现无法服务器无法运行war文件的情况,建议版本为17

上传targz文件有两种方法

11输入命令行 rz 选择安装包上传1使用rz时,注意安装 2通过xftp将上传

创建一个java文件夹

mkdir java

输入安装命令,将上传的targz文件解压到创建为java文件夹中

sudo tar -zxvf jdk-7u80-linux-x64targz -C /root/java

设置环境变量

使用vim指定编辑etc目录下profile文件,添加export

#vim /etc/profile添加进profile文件

JAVA_HOME=/root/java/jdk170_80

export JRE_HOME=/root/java/jdk170_80/jre

export CLASSPATH=:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

//java存放位置请自行更改//使用 which java 查看jdk所在文件夹

选择E,然后输入i 进行写操作

最后 :x退出并保存

设置默认JDK

12345sudo update-alternatives --install /usr/bin/java java /root/java/jdk170_80/bin/java 300 sudo update-alternatives --install /usr/bin/javac javac /root/java/jdk170_80/bin/javac 300 sudo update-alternatives --install /usr/bin/jar jar /root/java/jdk170_80/bin/jar 300  sudo update-alternatives --install /usr/bin/javah javah /root/java/jdk170_80/bin/javah 300  sudo update-alternatives --install /usr/bin/javap javap /root/java/jdk170_80/bin/javap 300

如果之后一个版本显示: 

There is only one alternative in link group java (providing /usr/bin/java):

/usr/lib/jvm/jdk170_60/bin/java

否者,选择合适的jdk

检查jdk是否安装成功,输出版本号及对应信息即安装成功

#java

#javac

#java -version

安装tomcat

方法一:ubuntu自动安装tomcat

sudo apt-get install tomcat

添加jdk和jre环境变量

JAVA_HOME=/home/java/jdk160_12

JRE_HOME=/home/homer/eclipse/jdk160_12/jre  

PATH=$JAVA_HOME/bin:$JRE_HOME:$PATH  

CLASSPATH=:$JAVA_HOME/lib/dtjar:$JAVA_HOME/lib/toolsjar  

TOMCAT_HOME=/opt/apache-tomcat-7029  

启动tomcat

cd apache-tomcat-7069/bin /startupsh

出现提示说明配置成功

方法二:上传tomcat并解压

通过上述上传文件方法上传后

使用tar指令解压

tar -zxvf apache-tomcat-8024targz

然后进入apache-tomcat-7069文件夹

# cd apache-tomcat-8024 /bin/

启动tomcat

cd apache-tomcat-8024 /bin/ /startupsh

显示如下说明成功

最后输入:http://xxxx:8080/   (x代表ip地址),显示tomcat首页说明配置成功

安装Mysql

ubuntu下自动安装

sudo apt-get install mysql-server

apt-get install mysql-client

sudo apt-get install libmysqlclient-dev

设置数据库密码:

检查Mysql是否安装成功

sudo netstat -tap | grep mysql

登陆Mysql

mysql -uroot -p密码

成功:

查看数据库

show databases

将sql文件导入

//先选定数据库

use iswust        

source /root/testsql//source /文件夹/sql文件名

select from score

5java工程打包上传并运行

右键选中java项目,WAR Export 将文件以war格式导出

(注意:java工程的jdk一定要先降低到与服务器的jdk版本相同,例如java工程为18而服务器为16则会报错)

降低jdk方法:

并通过XFTP或上述的上传文件方法,上传至apache-tomcat-7069/webapps中

创建根证书密钥文件(自己做CA)rootkey:

创建根证书的申请文件rootcsr:

创建一个自当前日期起为期十年的根证书rootcrt:

创建服务器证书密钥serverkey:

创建服务器证书的申请文件servercsr

创建自当前日期起有效期为期两年的服务器证书servercrt

创建客户端证书密钥文件clientkey

创建客户端证书的申请文件clientcsr

创建一个自当前日期起有效期为两年的客户端证书clientcrt

将客户端证书文件clientcrt和客户端证书密钥文件clientkey合并成客户端证书安装包clientpfx

保存生成的文件备用,其中servercrt和serverkey是配置单向SSL时需要使用的证书文件,clientcrt是配置双向SSL时需要使用的证书文件,clientpfx是配置双向SSL时需要客户端安装的证书文件 crt文件和key可以合到一个文件里面,把2个文件合成了一个pem文件(直接拷贝过去就行了)

x509证书一般会用到三类文,key,csr,crt。

Key是私用密钥openssl格,通常是rsa算法。

Csr是证书请求文件,用于申请证书。在制作csr文件的时,必须使用自己的私钥来签署申,还可以设定一个密钥。

crt是CA认证后的证书文,(windows下面的,其实是crt),签署人用自己的key给你签署的凭证。 

1key的生成 

opensslgenrsa -des3 -out serverkey 2048 

这样是生成rsa私钥,des3算法,openssl格式,2048位强度。serverkey是密钥文件名。为了生成这样的密钥,需要一个至少四位的密码。可以通过以下方法生成没有密码的key:

opensslrsa -in serverkey -out serverkey 

serverkey就是没有密码的版本了。 

2生成CA的crt

opensslreq -new -x509 -key serverkey -out cacrt -days3650 

生成的cacrt文件是用来签署下面的servercsr文件。 

3csr的生成方法

opensslreq -new -key serverkey -outservercsr 

需要依次输入国家,地区,组织,email。最重要的是有一个common name,可以写你的名字或者域名。如果为了https申请,这个必须和域名吻合,否则会引发浏览器警报。生成的csr文件交给CA签名后形成服务端自己的证书。 

4crt生成方法

CSR文件必须有CA的签名才可形成证书,可将此文件发送到verisign等地方由它验证,要交一大笔钱,何不自己做CA呢。

opensslx509 -req -days 3650 -in servercsr -CA cacrt -CAkey serverkey-CAcreateserial -out servercrt

输入key的密钥后,完成证书生成。-CA选项指明用于被签名的csr证书,-CAkey选项指明用于签名的密钥,-CAserial指明序列号文件,而-CAcreateserial指明文件不存在时自动生成。

最后生成了私用密钥:serverkey和自己认证的SSL证书:servercrt

证书合并:

catserverkey servercrt > serverpem

1配置hostname

[root@oracledb ~]#hostnamectl set-hostname oracledb

[root@oracledb ~]#echo " 10100110 oracledb" >>/etc/hosts

2关闭selinux和防火墙

[root@oracledb ~]#sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config

[root@oracledb ~]#setenforce 0

[root@oracledb ~]#systemctl stop firewalld

[root@oracledb ~]#systemctl disable firewalld

[root@oracledb ~]#systemctl status firewalld

3下载Oracle软件包 且上传到服务器上,进行解压缩

建议使用winSCP工具进行上传到服务器的/opt目录下

[root@oracledb ~]# ls -lh /opt/

-rw-r--r-- 1 root root 12G Mar 30 16:12 linuxx64_11gR2_database_1of2zip

-rw-r--r-- 1 root root 11G Mar 30 16:11 linuxx64_11gR2_database_2of2zip

4安装oracle环境所需要的依赖包-配置YUM源

安装依赖包之前,一定要设置好服务器上的安装源,原因是:可以在没有互联网的时候安装服务所需依赖包;常用的安装源有两种方式:

(1) 配置本地yum源

新建配置文件vi /etc/yumreposd/localsourcerepo输入如下内容:

[localsource]

name=localsource

baseurl=file:///media/cdrom

enabled=1

gpgcheck=0

(2) 生成本地yum 缓存

注意:从Oracle 11g 11202版本开始,在Linux x86_64上安装时,只需要安装64位的软件包,但是,对于11202之前的任何Oracle database 11g,下表中列出的32位和64位的安装包都必须安装

5安装oracle环境所需要的依赖包-安装依赖包

(1)安装依赖包

[root@oracledb ~]# yum -y install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel zlib zlib-devel pcre-devel unzip

(2)安装完成后,检查依赖是否全部安装成功

[root@oracledb ~]# rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel zlib zlib-devel pcre-devel unzip | grep "not installed"

(3)创建所需的用户组和用户

如果要安装Oracle数据库,通常需要以下本地操作系统用户组和用户:

Oracle inventory组(通常为 oinstall)

OSDBA组 (通常为 dba)

OSOPER组 (通常为 oper)

Oracle软件所有者(通常为 oracle)

创建用户组和用户:

[root@oracledb ~]# groupadd oinstall

[root@oracledb ~]# groupadd dba

[root@oracledb ~]# groupadd oper

[root@oracledb ~]# useradd -g oinstall -G dba oracle

(4)修改oracle用户密码:建议密码配置为字符+数字+特殊字符

[root@oracledb ~]# passwd oracle

6配置内核参数和资源限制

(1)编辑配置文件vi /etc/sysctlconf添加如下参数:

vmmax_map_count = 655360

fsaio-max-nr = 1048576

fsfile-max = 6815744

kernelshmall = 2097152

kernelshmmax = 2147483648 ###最小值: 536870912

kernelshmmni = 4096

kernelsem = 250 32000 100 128

netipv4ip_local_port_range = 9000 65500

netcorermem_default = 262144

netcorermem_max = 4194304

netcorewmem_default = 262144

netcorewmem_max = 1048576

注意:如果系统中某个参数高于上面的参数的值 ,保留较大的值,上面的数值只是官方要求的最小值,可以根据系统调整数值,以优化系统性能

(2)使内核参数生效

[root@oracledb ~]# sysctl -p

7创建oracle安装目录

如下目录,根据自己的实际情况可做修改:

[root@oracledb ~]# mkdir -p /data/app/oracle/product/1120

[root@oracledb ~]# cd /data/app/oracle/

[root@oracledb oracle]# mkdir oradata inventory fast_recovery_area

[root@oracledb ~]# chown -R oracle:oinstall /data/app/oracle

[root@oracledb ~]# chmod -R 775 /data/app/oracle

8配置oracle用户环境变量

编辑配置文件vi /home/oracle/bash_profile添加如下内容:

export ORACLE_BASE=/data/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/1120

export ORACLE_SID=orcl

export PATH=$PATH:$ORACLE_HOME/bin

9 解压下载好的两个Oracle数据库文件

[root@oracledb ~]# cd /opt

[root@oracledb ~]# unzip linuxx64_11gR2_database_1of2zip -d /data

[root@oracledb ~]# unzip linuxx64_11gR2_database_2of2zip -d /data

10 编辑静默安装响应文件

(1)切换到oracle用户执行

[root@oracledb ~]# su - oracle

(2)切换到响应文件的目录下

[oracle@oracledb ~]$ cp -R /data/database/response/

[oracle@oracledb ~]$ cd response/

[oracle@oracledb response]$ ls

dbcarsp db_installrsp netcarsp

11修改配置文件:vi /home/oracle/response/db_installrsp,修改以下变量的值

oracleinstalloption=INSTALL_DB_SWONLY

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/data/app/oracle/inventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME=/data/app/oracle/product/1120

ORACLE_BASE=/data/app/oracle

oracleinstalldbInstallEdition=EE

oracleinstalldbDBA_GROUP=dba

oracleinstalldbOPER_GROUP=dba

DECLINE_SECURITY_UPDATES=true

12 开始静默安装Oracle 11g

(1)开始安装oracle数据库

[oracle@oracledb ~]$ cd /data/database

[oracle@oracledb ~]$ /runInstaller -silent -responseFile /home/oracle/response/db_installrsp -ignorePrereq

注意:安装期间可以使用tail命令查看oracle的安装日志,且日志文件名称是根

据自己的实际执行时间确定的,安装日志文件会在安装时提示,需要等待3分钟左右,注意不要停止运行;安装完成后有如下提示,如果有类似如下提示,说明安装完成。

The following configuration scripts need to be executed as the "root" user

#!/bin/sh

#Root scripts to run

/data/app/oraInventory/orainstRootsh

/data/app/oracle/product/1120/db_1/rootsh

To execute the configuration scripts:

1 Open a terminal window

2 Log in as "root"

3 Run the scripts

4 Return to this window and hit "Enter" key to continue

Successfully Setup Software

13使用 root用户执行脚本

(1)切换到root用户执行

[root@oracledb ~]# su - root

(2)执行两个用户脚本

[root@oracledb ~]# sh /data/app/oracle/inventory/orainstRootsh

[root@oracledb ~]# sh /data/app/oracle/product/1120/rootsh

14配置监听程序

(1)切换到oracle用户执行(建议退出重进oracle用户)

[root@oracledb ~]# su - oracle

(2)配置监听,查看输出结果

[oracle@oracledb ~]$ netca /silent /responsefile /home/oracle/response/netcarsp

(3)查看监听服务状态,若没启动需要启动

[oracle@oracledb ~]$ lsnrctl status

[oracle@oracledb ~]$ lsnrctl start

查看结果:

Parsing command line arguments:

Parameter "silent" = true

Parameter "responsefile" = /data/etc/netcarsp

Done parsing command line arguments

Oracle Net Services Configuration:

Profile configuration complete

Oracle Net Listener Startup:

Running Listener Control:

/data/app/oracle/product/1120/bin/lsnrctl start LISTENER

Listener Control complete

Listener started successfully

Listener configuration complete

Oracle Net Services configuration successful The exit code is 0

(4)查看监听端口

[oracle@oracledb ~]$ netstat -tnpl | grep 1521

15静默创建数据库

GDBNAME = "orcl"

SID = "orcl"

SYSPASSWORD = "oracle"

SYSTEMPASSWORD = "oracle"

SYSMANPASSWORD = "oracle"

DBSNMPPASSWORD = "oracle"

DATAFILEDESTINATION =/data/app/oracle/oradata

RECOVERYAREADESTINATION=/data/app/oracle/fast_recovery_area

CHARACTERSET = "ZHS16GBK"

TOTALMEMORY = " 6552 "

##其中TOTALMEMORY = " 6552 " 为6552 MB,物理内存8G80%

(2)切换到oracle用户执行

[root@oracledb ~]# su - oracle

(3)执行静默建库

[oracle@oracledb ~]$ dbca -silent -responseFile /home/oracle/response/dbcarsp

执行过程如下:

Copying database files

1% complete

3% complete

11% complete

18% complete

26% complete

37% complete

Creating and starting Oracle instance

40% complete

45% complete

50% complete

55% complete

56% complete

60% complete

62% complete

Completing Database Creation

66% complete

70% complete

73% complete

85% complete

96% complete

100% complete

Look at the log file "/data/app/oracle/cfgtoollogs/dbca/orcl/orcllog" for further details

(4)查看进程

[oracle@oracledb ~]$ ps -ef | grep ora_ | grep -v grep

(5)再次查看监听状态进行确认

[oracle@oracledb ~]$ lsnrctl status

结果显示:

The command completed successfully

16至此数据库就安装成功了,下面我们登录下数据库

(1)切换到oracle用户执行

[root@oracledb ~]# su - oracle

(2)登录数据库

[oracle@oracledb ~]$ sqlplus / as sysdba

(3)查询实例状态

SQL>select status from v$instance;

(4)查看数据库版本

SQL> select from v$version;

(5)激活scott用户

SQL>alter user scott account unlock;

SQL>alter user scott identified by tiger;

SQL>select username,account_status from dba_users;

17设置Oracle开机启动

(1)修改配置文件vi /data/app/oracle/product/1120/bin/dbstart 修改如下内容:

将脚本中的ORACLE_HOME_LISTNER=$1,修改为ORACLE_HOME_LISTNER=$ORACLE_HOME

(2)修改配置文件vi /data/app/oracle/product/1120/bin/dbshut 修改如下内容:

将脚本中的ORACLE_HOME_LISTNER=$1,修改为ORACLE_HOME_LISTNER=$ORACLE_HOME

(3)修改配置文件 vi /etc/oratab修改如下内容,

orcl:/data/app/oracle/product/1120:Y

(4)新建文件:vi /etc/rcd/initd/oracle 注意:建议全部复制脚本内容

#! /bin/bash

# oracle: Start/Stop Oracle Database 11g R2

# chkconfig: 345 90 10

# description: The Oracle Database is an Object-Relational Database Management System

# processname: oracle

/etc/rcd/initd/functions

LOCKFILE=/var/lock/subsys/oracle

ORACLE_HOME=/data/app/oracle/product/1120

ORACLE_USER=oracle

case "$1" in

start)

if [ -f $LOCKFILE ]; then

echo $0 already running

exit 1

fi

echo -n #34;Starting Oracle Database:"

su - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl start"

su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"

su - $ORACLE_USER -c "$ORACLE_HOME/bin/emctl start dbconsole"

touch $LOCKFILE

;;

stop)

if [ ! -f $LOCKFILE ]; then

echo $0 already stopping

exit 1

fi

echo -n #34;Stopping Oracle Database:"

su - $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl stop"

su - $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut"

su - $ORACLE_USER -c "$ORACLE_HOME/bin/emctl stop dbconsole"

rm -f $LOCKFILE

;;

restart)

$0 stop

$0 start

;;

status)

if [ -f $LOCKFILE ]; then

echo $0 started

else

echo $0 stopped

fi

;;

)

echo "Usage: $0 [start|stop|status]"

exit 1

esac

exit 0

(5)给 /etc/initd/oracle添加执行权限

[root@oracledb ~]# chmod +x /etc/initd/oracle

(6)开机启动oracle

[root@oracledb ~]# chkconfig oracle on

(7)给启动文件加权限

[root@oracledb ~]# cd /data/app/oracle/product/1120/bin/

[root@oracledb bin]# chmod 6751 oracle

[root@oracledb bin]# cd /var/tmp

[root@oracledb tmp]# chown -R oracle:oinstall oracle

(8)重启测试

[root@oracledb ~]# reboot

(9)切换到oracle用户登录状态下

[root@oracledb ~]# su - oracle

[oracle@oracledb ~]$ sqlplus / as sysdba

(10)解除锁定

SQL> alter user SYSTEM account unlock;

(11)这时候就可以用Navicat连接了

SQL> conn;

用户名:SYSTEM

密码:oracle

如果不能正确连接,改下密码试试

alter user system identified by 新密码

[root@oracledb ~]# mkdir -p /data/szzt

[root@oracledb ~]# cd /data/

[root@oracledb data]# chown oracle:oinstall -R szzt

[root@oracledb data]# ll

total 0

drwxr-xr-x 3 root root 20 Apr 8 21:14 app

drwxr-xr-x 8 root root 128 Aug 21 2009 database

drwxr-xr-x 2 oracle oinstall 6 Apr 14 16:17 szzt

[root@oracledb ~]# su - oracle

[oracle@oracledb ~]$ sqlplus / as sysdba

SQL> conn cshi

Enter password: 登录失败

Connected

SQL> create temporary tablespace DB_DATA_TMP tempfile'/data/szzt/DB_DATA_TMPdbf' size 500m autoextend on next 100m maxsize 10240m extent management local;

显示结果:

Tablespace created

SQL> create tablespace DB_DATA logging datafile'/data/szzt/DB_DATAdbf' size 2048m autoextend on next 100m maxsize 10240m extent management local;

显示结果:

Tablespace created

SQL> create user ceshi identified by ceshi default tablespace DB_DATA temporary tablespace DB_DATA_TMP;

显示结果:

User created

SQL> grant dba to ceshi;

显示结果:

Grant succeeded

SQL> conn ceshi ###用户名和密码一样,此时登录成功

[oracle@oracledb ~]$ cd /data/app/oracle/product/1120/bin/

注意:数据库导出操作是在 源服务器 上进行

[oracle@oracledb bin]$ exp 用户名/密码@ IP地址 /orcl file =/data/szzt/ceshidmp owner='用户名'

Export terminated successfully without warnings

注意:数据库导入操作是在 目标服务器 上进行

[oracle@oracledb bin]$ imp ceshi/ceshi@ 10100110 /orcl file=/data/szzt/ceshidmp fromuser=ceshi touser=ceshi

显示结果:可以看到导入的表过程(10100110是自己的目标数据库服务器)

Import terminated successfully without warnings

(1)、数据导入完毕后,我们可以使用DBeaver对数据库进行远程管理

(2)、测试连接,没问题后完成新建

(3)、连接上来后,我们就可以使用工具来进行管理数据库

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何搭建java web服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情