眼下提供IDC服务的厂商真的是五花八门,可是更正服务到位的却为数不多,搞得比較好的应该是阿里云、天成、51idc,出于时间考虑还是建议选用windows,至少安装开发环境会方便得多,不会耗费太长时间。

一般而言java开发环境主要就是中间件、jdk、数据库三大部分,以下開始分享我的部署心得。

一  安装linux版本号的jdk

linux的安装并不复杂,令人烦恼的是下载jdk那种乌龟般的连接速度,还有登录等乱七八糟的麻烦事。至于jdk强烈建议下载rpm或者bin文件,这两种文件安装起来特别简单,假设系统不支持rpm文件就选择bin文件,一个简单的sh命令就搞定了。

为了排除干扰建议先卸载掉本身自带的openjdk,假设不存在就能够省略这个步骤。

先查看 rpm -qa | grep java

显演示样例如以下信息:

java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

卸载:

rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

另一些其它的命令

rpm -qa | grep gcj

rpm -qa | grep jdk

假设出现找不到openjdk source的话,那么还能够这样卸载

yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

yum -y remove java java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

1 安装jdk

安装jdk真的超级简单,先进入下载好的jdk所在文件夹。使用命令给文件授权

chmod +x    你的jdk文件名称

输入  ./jdk文件名称.bin    ,不用一分钟jdk就安装好了

2 将该文件夹复制到/usr/local(改步骤可选)

安装之后为了管理方便。能够把安装文件夹拷贝到/usr/local以下,命令例如以下

cp   原安装文件夹  /usr/local/jdk6

3  配置环境变量(非常关键)

首先使用vi命令编辑profile,命令为vim  /etc/profile;

在文件的最后面追加例如以下内容。文件夹依据实际情况改动

export JAVA_HOME=/usr/local/jdk6

export JAVA_BIN=/usr/local/6/bin

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME JAVA_BIN PATH CLASSPATH

4 重新启动linux

reboot

二   安装tomcat

这个步骤就是把linux版本号的tomcat上传到server上。还是建议删掉原先自带的,由于原生的太难用了。把war包放到webapps以下,建议使用apache-tomcat-6.0.29这个版本号。这个版本号太好用了

三  安装mongodb或者mysql

1 解决奇葩mysql的相关问题

(1) 出现异常说方言没配置

这样的情况在jpa开发的项目中较为常见,解决方案非常easy。仅仅需把方言配置上去就ok了

<bean id="entityManagerFactory"
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="jpaVendorAdapter">
<bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="showSql" value="false" />
</bean>
</property>
<property name="jpaProperties">
<props>
<prop key="hibernate.hbm2ddl.auto">update</prop>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</prop>
</props>
</property>
</bean>

(2)数据库连接不上

这个问题好排除,基本都是url有问题、username或者password不正确。还有就是缺少数据库驱动jar包

(3) 数据库表名不正常

这个就真的是奇葩了,大致上出现这样的情况的几率比較小,因此网上非常难找到解决方法。我也是找了好久才找到的,解决方法就是在mysqld节点以下加一个配置

lower_case_table_names=1

这样的情况常常出如今window上的项目移植到linux上,正常情况下使用hibernat或者jpa之后自己主动生成的表默认名称和实体类的类名同样,假设之前数据库的表名全是小写的,仅仅要项目启动,数据库又会按jpa或hibernate规范生成一堆新表,导致程序出错。

经常使用的mysql配置文件:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

user=mysql

default-character-set=utf8

lower_case_table_names=1

[client]

password=gtyiaJB8R

port=3306

socket=/var/lib/mysql/mysql.sock

default-character-set = utf8

# Disabling symbolic-links is recommended to prevent assorted security risks

#symbolic-links=0

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

default-character-set = utf8

(4)mongodb的启动/停止方式

mongodb和mysql又有所不同,主要是在数据库的启动上,mongodb弄成前台启动当然不合适,仅仅能用后台进程的方式启动

./mongod  --dbpath=你的mongdb数据所在文件夹  --fork --logpath=/data/log/mongodb.log

假设要停止mongodb建议使用:

use  admin  

db.shutdownServer();

这些问题是不是够奇葩,攻克了这些问题真是让我学到不少。

centos6高速部署java应用的更多相关文章

  1. 新手小白Linux(Centos6.5)部署java web项目(总)

    一.准备 1.linux  centos版本的相关命令操作,千万别找ubuntu的,好多命令都不一样,新手小白我傻傻不知道硬是浪费了一天的时间……(百度百科linux版本了解一下) 2.远程登录: P ...

  2. CentOS6.5中部署java web环境

    原来在linux中部署java web环境,没有做好总结,这次在部署的过程中,将部署的过程做了记录,希望对大家有帮助.主要内容包括CentOS安装以后的网络设置,系统自带jdk的卸载,新版本jdk的安 ...

  3. RedHat Linux 5.5安装JDK+Tomcat并部署Java项目

    与大家分享下RedHat Linux 5.5安装JDK+Tomcat并部署Java项目的步骤,希望对大家有用. 1.下载并安装jdk 虚拟机中安装RedHat Linux 5.5 64位企业版, 这里 ...

  4. 阿里云esc服务器上部署java项目

    文章中使用centos(6和7版本).Xshell.Xftp 因为部署过程直接从操作服务器开始,如果你还没有连接好服务器请参考http://blog.csdn.net/ctrlxv/article/d ...

  5. Zabbix Server和MPM(monitor for mysql)的高速部署

    1. 前言         zabbix作为开源免费的监控软件.其易于管理配置和可视化的视图.历史数据的定期维护.模板化的监控项目越来越受到广大IT运维人员的喜爱. 这里主要是总结了下Zabbix S ...

  6. 【Linux学习笔记1】-centos6.9部署django

    一,centos6.9部署django ​ 部署套件:centos6.9+nginx+mysql+uwsgi+python3+django ​ 首先还是要明白这几个部分之间的关系(自己也是初学者,希望 ...

  7. 阿里云部署Java web项目初体验(转)

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在 ...

  8. 如何在tomcat中如何部署java EE项目

    如何在tomcat中如何部署java EE项目 1.直接把项目复制到Tomcat安装目录的webapps目录中,这是最简单的一种Tomcat项目部署的方法,也是初学者最常用的方法.2.在tomcat安 ...

  9. 阿里云部署Java web项目初体验(转)/linux 上配置jdk和安装tomcat

    摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在阿里云上部署Java web项目. 一.准备工作 购买了阿里云的云解析,和云服务器ecs. 2.下载put ...

随机推荐

  1. Codeforces Round #260 (Div. 1) 455 A. Boredom (DP)

    题目链接:http://codeforces.com/problemset/problem/455/A A. Boredom time limit per test 1 second memory l ...

  2. [学习笔记—Objective-C]《Objective-C-基础教程 第2版》第十一章 属性

    11.1 使用属性值 @property float rainHandling; //表明此类具有float类型的属性,其名称为rainHandling 注意:属性的名称不必与实例变量名称同样. @s ...

  3. code::blocks配置编译cuda并进行第一个demo的測试

    我们先新建个NVCC的编译器. 使用复制GCC编译器的方式进行新建,然后我们进行下面的路径配置 先来看看链接库,将我们常常使用的cuda库链接进来. 然后链接cuda的头文件: 接着配置调试工具以及编 ...

  4. redis.conf 配置项说明

    redis.conf 配置项说明如下: Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程   daemonize no 当Redis以守护进程方式运行时,Redis ...

  5. [Swift]二进制、八进制、十进制、十六进制之间的转换

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  6. Oracle学习系类篇(四)

    .分析函数 分析函数oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组,然后计算基于组的邹忠统计值,并且每一组的每一行都可以返回一个统计值. 分析函数和聚合函数的不同之处 ...

  7. 操作EXCEL COM组件

    操作Excel COM组件 --------------COM组件操作excel---------- 了解对象 Application:Excel运行环境,也就是excel程序 WorkBook:表示 ...

  8. 浅谈javascript的面向对象思想

    面向对象的三大基本特性 封装(把相关的信息(无论数据或方法)存储在对象中的能力) 继承(由另一个类(或多个类)得来类的属性和方法的能力) 多态(一个对象在不同情况下的多种形态) 定义类或对象 第一种: ...

  9. 解决有关null闪退及json解析数据中null的问题

    程序在获取某些数据之后莫名崩溃.其实很早就发现了原因: 由于服务器的数据库中有些字段为空, 然后以Json形式返回给客户端时就会出现这样的数据: "somevalue":null ...

  10. 织梦Fatal error: Call to a member function GetInnerText()

    问题:织梦修改或者添加了自定义表单后在后台修改文章的时候出现如下错误:Fatal error: Call to a member function GetInnerText() on a non-ob ...