项目做完了,要发布了,而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. 【BZOJ4650】[NOI2016] 优秀的拆分(后缀数组)

    点此看题面 大致题意: 定义将一个字符串拆成\(AABB\)的形式为优秀拆分,求一个字符串所有子串的优秀拆分个数. 后缀数组 这题可是一道后缀数组黑题啊. 其实看完题解这题还是挺简单的. 大致思路 显 ...

  2. 【BZOJ1965】[AHOI2005] SHUFFLE 洗牌(数学题)

    点此看题面 大致题意: 有一叠扑克牌编号为\(1\sim n\)(\(n\)为偶数),每次洗牌将扑克牌平均分成上下两叠,取下面一叠的第一张作为新的一叠的第一张,然后取上面一叠的第一张作为新的一叠的第二 ...

  3. 解决mysql8小时无连接自动断掉机制

    windows下打开my.ini,增加: interactive_timeout=28800000 wait_timeout=28800000 MySQL是一个小型关系型数据库管理系统,由于MySQL ...

  4. day1总结

    print("hello world") name='王维是傻屌' print(name) age_of_王维是傻屌 = 18 # type:用于判断变量的类型 str1 ='he ...

  5. 网络编程——UDP协议和通信

    第1章 UDP与TCP协议 在介绍TCP/IP结构时,提到传输层的两个重要的高级协议,分别是UDP和TCP,其中UDP是User Datagram Protocol的简称,称为用户数据报协议,TCP是 ...

  6. java算法面试题:设计一个快速排序。双路快速排序,简单易于理解。

    package com.swift; import java.util.ArrayList; import java.util.Collections; import java.util.Compar ...

  7. 第9课 文章模块分析及建表 Thinkphp5商城第四季

    目录 文章模块的分析 表结构 文章模块的分析 表结构 CREATE TABLE `tp_cate` ( `id` smallint(6) NOT NULL AUTO_INCREMENT COMMENT ...

  8. Python知识点入门笔记——基本控制流程

    复合赋值语句 在Python中,可以使用一次赋值符号,给多个变量同时赋值:                  划重点:age_1,age_2 = age_2,age_1这种操作是Python独有的 i ...

  9. Flask初学者:URL(传参,请求,重定向)

    URL传参: 良好的URL:视图函数对应的url以/结尾是一种良好url,因为用户在访问的时候无论他有没有加上最后这个斜杠,都是能访问到的,相反,视图函数的url没有以/结尾,用户访问的时候却加上了这 ...

  10. Neon Lights in Hong Kong【香港霓虹灯】

    Neon Lights in Hong Kong Neon is to Hong Kong as red phone booths are to London and fog is to San Fr ...