项目做完了,要发布了,而Java的特长之一就是移植性好,面对着微软的XP的停止服务,Windows系统的“独裁”,越来越多的商家选择了开源的免费的linux系统作为服务器。因为linux系统也有图形界面(虽然和Windows比起来很不一样),所以在图形界面中操作相对来说还是容易的,这就好比我们在Windows系统上部署项目一样,大部分人都是小Case。但是真正工作中,服务器都会在固定的机房,而且往往只有一台主机,更规模大一些的就是使用单片机,像摆书一样摆到机房的机器架上,而我们操作它的最常用的方式就成为了远程访问。就像在控制台一样进行命令输入控制,从而使人们操作电脑又回到了几十年代前(不知道这种方式什么时候能改革了),所以还是需要些技术的。这篇博客,简单讲述一下在linux部署项目需要注意的事项,以及常用命令。

好,简单讲述Java项目+Tomcat+MySQL的部署过程。

一,首先就是如何远程连接linux系统:

1,在linux端创建可支持远程访问的用户;

2,利用相应的远程访问软件:SecureFXPortable(窗口)+SecureCRTPortable(控制台)或者PUTTY(控制台)+RealVNCsetup(窗口)等。

3,在一块,还有ssh等各种端口协议等,一大块知识需要我们研究,这里不再给出。我也是刚刚接触。大家网上都搜资料。

二,MySql相关

1,如果服务器没有MySql,需要进行安装,安装可以下载绿色版的进行解压缩即可,也可以在线安装。

a,解压缩:

zip:

zip-r myfile.zip ./*

将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件.

unzip -q  myfile.zip   解压myfile.zip压缩包,-q是将不显示解压过程。

tar:

tar命令可以用来压缩打包单文件、多个文件、单个目录、多个目录。

常用格式:

单个文件压缩打包 tar czvf my.tar file1

多个文件压缩打包 tar czvf my.tar file1 file2,...

单个目录压缩打包 tar czvf my.tar dir1

多个目录压缩打包 tar czvf my.tar dir1 dir2

解包至当前目录:tar xzvf my.tar

解释:

tar命令

[root@linux~]# tar [-cxtzjvfpPN] 文件与目录 ....

参数:

-c:建立一个压缩文件的参数指令(create 的意思);

-x:解开一个压缩文件的参数指令!

-t:查看 tarfile 里面的文件!

特别注意,在参数的下达中,c/x/t 仅能存在一个!不可同时存在!

因为不可能同时压缩与解压缩。

-z:是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?

-j:是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?

-v:压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f:使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

例如使用『tar -zcvfP tfile sfile』就是错误的写法,要写成

『tar -zcvPf tfile sfile』才对喔!

-p:使用原文件的原来属性(属性不会依据使用者而变)

-P:可以使用绝对路径来压缩!

-N:比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!

--exclude FILE:在压缩的过程中,不要将 FILE 打包!

b,在线安装:sudo apt-get installmysql-server,在安装过程中会提示输入Root密码及密码确认等。

2,当然后边还需要添加角色,编写配置文件,建库,建表,备份,还原等等操作,每个操作都有很多的对应的代码,这里不再一一给出,看下这个链接:在Linux下安装和使用MySQL

三,Tomcat使用,

1,安装Tomcat,也是解压利用unzip或者tar等命令。

a,前边我们可能会建文件夹利用Mkdir,建目录,建文件夹等:

b,复制粘贴,移动等常用命令

cp拷贝:

sudo cp~/toInstall/apache-tomcat-6.0.37.tar.gz   ./  管理员拷贝到当前目录

mv移动 [选项] 源文件或目录 目标文件或目录

-b :若需覆盖文件,则覆盖前先行备份。

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;

-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

-u :若目标文件已经存在,且 source 比较新,才会更新(update)

-t  : --target-directory=DIRECTORYmove all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。

2,其次我们进行Tomcat的开启和关闭:

开启:sh startup.sh

关闭:sh shutdown.sh

查看进程:ps -ef|grep tomcat(进程名称即可)

杀死进程:kill -9 进程号

3,对于一些辅助服务的开启,例如nginx:

server nginx(服务名) start

server nginx(服务名) stop

等,也是linux命令来实现,我们以前点击实现的功能。

四,项目部署,其实直接将项目拷贝到Tomcat webapps Root目录下,或者指定的目录下,解压即可,只是这里还需要修改其中的一些配置文件,使mysql+tomcat+各种辅助服务(nginx)+Java程序配套起来。

这里提一下文件的修改,Tomcat目录下的可以通过窗口远程,下载修改上传覆盖的形式进行简易操作,如果非得再linux远程界面上修改操作文件的话,可以利用VI编辑器命令进行实现,简单命令:

:set nu  显示行号

:dd 删除当前行

:wq 保存退出

:q 退出

:q! 强制退出

i  开始编辑文件

esc 退出编辑

综上为在linux系统项目部署的大概流程,这里仅仅是梳理了下思路,具体知识写的不够详细,还需要大家上网多查多搜索。内容不够丰富,还望大家多多包含……

 
 

java _tomcat_mysql 部署的更多相关文章

  1. 高密度Java应用部署的一些实践

    传统的Java应用部署模式,一般遵循“硬件->操作系统->JVM->Java应用”这种自底向上的部署结构,其中JEE应用可以细化为“硬件->操作系统->JVM->J ...

  2. Java Project部署到Tomcat服务器上

    所有的JAVA程序员,在编写WEB程序时,一般都通过工具如 MyEclipse,编写一个WEB Project,通过工具让这个WEB程序和Tomcat关联.其实在我们可以通过JAVA程序部署到Tomc ...

  3. android 之 java环境部署

    上甲骨文公司官网下载最新的jdk http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-z ...

  4. idea java项目部署至Tomcat服务器

    1. 服务器部署TomCat     1. 安装JDK,配置环境变量     > 变量名:JAVA_HOME;变量值:C:\Program Files\Java\jdk1.7.0_45      ...

  5. 揭秘Java热部署原理及JRebel(Hotcode)的实现原理

    基础知识:class卸载.热替换和Tomcat的热部署的分析HotSwap:HotSwap和JRebel原理成熟的热部署技术实现原理:深入探索 Java 热部署 java的热部署和热加载

  6. 探秘 Java 热部署三(Java agent agentmain)

    前言 让我们继续探秘 Java 热部署.在前文 探秘 Java 热部署二(Java agent premain)中,我们介绍了 Java agent premain.通过在main方法之前通过类似 A ...

  7. 探秘 Java 热部署二(Java agent premain)

    # 前言 在前文 探秘 Java 热部署 中,我们通过在死循环中重复加载 ClassLoader 和 Class 文件实现了热部署的功能,但我们也指出了缺点-----不够灵活.需要手动修改文件等操作. ...

  8. 【JavaService】使用Java编写部署windows服务

    如果你玩windows系统,你对服务这个东西并不会陌生,服务可以帮我们做很多事情,在不影响用户正常工作的情况下,可以完成很多我们需要的需求. 众所周知,微软的visio studio内置的Servic ...

  9. java项目部署后的文件路径获取

    //eclipse部署工程 String path = request.getServletContext().getRealPath( File.separator+ "WEB-INF&q ...

随机推荐

  1. Shell重启Tomcat脚本

    #!/bin/bash echo -e "\n\n\n" #force kill flag,if equal [f] to force kill all flag="He ...

  2. AJAXA进行分页(2)

    查询功能是开发中最重要的一个功能,大量数据的显示,我们用的最多的就是分页. 在ASP.NET 中有很多数据展现的控件,比如用的最多的GridView,它同时也自带了分页的功能.但是我们知道用GridV ...

  3. 洛谷P1111修复公路并查集改

    看了他们的题解感觉很震惊,为什么要用kruskal,这题要用到最小生成树吗??? 38行短短的程序就可以了,我觉得学习不是一种套用,套自己学的,而且题解很大一部分都是kruskal. 个人认为自己的程 ...

  4. 第二篇:ssh.invoke_shell() 切换root出现的新问题

    接上一篇:按照上一篇的方式,在没有对ssh.invoke_shell()执行后的登录提示符进行判断的话,那边有部分机器就回因为返回为空导致程序卡死. 正常机器  ssh.recv(9999)  命令返 ...

  5. 六、Linux 文件基本属性

    Linux 文件基本属性 Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限.为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规 ...

  6. 十九、MySQL GROUP BY 语句

    MySQL GROUP BY 语句 GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT ...

  7. 3.Cisco Packet Tracer中关于交换机端口安全的设置

    本次实验将在这幅拓扑图的基础上完成 我们会对pc0在交换机上进行mac地址绑定,pc1访问时则交换机断开端口 1.为pc机配置ip地址 pc0:192.168.1.1 pc1:192.168.1.2 ...

  8. linux正则表达式扩展部分

    扩展的正则表达式(Extended  Regular  Expressions): 使用的命令为:grep  -E以及egrep [了解即可] 1)+ 表示重复“一个或一个以上”前面的字符(*是0或多 ...

  9. windows下CMD命令大全(仅供参考)

    CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本.文件系统版本)chcp 修改默认字符集chcp 936默认中文chcp 650011. appwiz.c ...

  10. 用描述符实现classmethod方法和staticmethod方法

    1. @classmethod class ClassMethod: def __init__(self, func): self.func = func def __get__(self, inst ...