零基础在Linux服务器上部署javaweb项目
本教程使用的工具下载链接:http://pan.baidu.com/s/1sl1qz2P 密码:43pj
一.安装JDK
1、首先要查看服务器的系统版本,是32位还是64位
- #getconf LONG_BIT
- 64
2、下载64位版本的jdk
下载地址:http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html
版本:jdk-8u91-Linux-x64.rpm
3、使用ftp工具如FileZilla,xftp,winscp,将下载好的文件传到服务器上,我是传到了home文件夹
4、查看当前有没有安装jdk
- #rpm -qa |grep jdk
- jdk-1.7.0_65-fcs.i586
- #rpm -qa |grep jdk
- jdk-1.7.0_65-fcs.i586
如果有就移除
- #rpm -e jdk-1.7.0_65-fcs.i586
5、输入安装命令,无须赋予权限,可以直接执行
- #rpm -ivh /home/jdk-8u91-linux-x64.rpm
6、设置环境变量(在文件末尾加入)
- #vim /etc/profile
- export JAVA_HOME=/usr/java/jdk1.8.0_91
- export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- export PATH=$PATH:$JAVA_HOME/bin
- export JAVA_HOME CLASSPATH PATH
wq 保存文件并退出vi
7、输入命令检查是否已经安装设置好(无须重启服务器)
- #java -version
- #java
- #javac
二.Tomcat的配置部署
1、下载tomcat
选择core下面的tar.gz包下载
2、上传和安装
我是把上传的软件都放在了home文件夹,解压即可实现安装,安装目录我放在了/usr/local下面
- #tar -zxvf apache-tomcat-8.0.33.tar.gz //解压文件 或者:tar xvf apache-tomcat-8.0.33.tar.gz
- #cp -R apache-tomcat-8.0.33 /usr/local/tomcat //移动和重命名
3、进入目录cd /usr/local/tomcat/bin/,启动和测试Tomcat
- #./startup.sh //在tomcat的bin目录下执行此命令,显示下面的信息
- Using CATALINA_BASE: /usr/local/tomcat
- Using CATALINA_HOME: /usr/local/tomcat
- Using CATALINA_TMPDIR: /usr/local/tomcat/temp
- Using JRE_HOME: /usr/java/jdk1.7.0_67
- Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
- Tomcat started.
测试:访问http://ip:8080,查看是否成功,如果不成功,检查端口情况
- #netstat -ano|grep 8080
如果端口被占用,可以修改/conf/server.xml 里的端口号
用./stratup.sh启动看不到详细的日志信息,如果想看详细信息,可以用./catalina.sh run启动,就可以像中一样查看启动信息了
4、在/usr/local/tomcat/bin下有可执行程序
启动tomcat # ./startup.sh
关闭tomcat # ./shutdown.sh
5、查看Tomcat是否启动
- # ps -ef |grep tomcat
如果返回类似以下信息说明tomcat没有启动
- 502 19258 8770 0 7:14下午 ttys000 0:00.01 grep tomcat
如果返回类似以下信息出现,说明tomcat是启动了,第一个是启动该进程的用户,第二个是该进程的id,第三个 是占用CPU的百分比,
第四个是占用内存的百分比
- root 2078 1 33 09:32 pts/0 00:00:01 /usr/java/jdk1.8.0_91/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/tomcat/endorsed -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
- root 2091 2019 0 09:32 pts/0 00:00:00 grep --color=auto tomcat
6、设置tomcat开机启动的方法
1、修改/etc/rc.d/rc.local
vi /etc/rc.d/rc.local
2、添加下面两行脚本,记住是两行,仅仅第二行不行,必须加第一行。在/etc/rc.d/rc.local文件最后加上
- export JAVA_HOME=/usr/java/jdk1.8.0_91
- /usr/local/tomcat/bin/startup.sh start
说明:/usr/java/jdk1.8.0_91 是jdk安装目录
/usr/local/tomcat 是tomcat安装的目录
3、注意,进入/etc/rc.d修改rc.local文件为可执行,如: chmod +x rc.local
三.Javaweb应用的部署
把web应用在eclipse里面export成war包文件并复制到tomcat/wabapps目录下
将被引用的项目的文件夹也考到tomcat/wabapps目录下
关闭后再次启动tomcat
访问时输入http://ip地址:8080/war文件名称/....
例如war文件名为wapinfo.war
则输入http://ip地址:8080/wapinfo/....
进行访问
四.MySQL数据库的安装和配置(方法二:请转至http://blog.csdn.net/u011019141/article/details/70925749查看)
1、下载数据库软件
地址:http://dev.mysql.com/downloads/mysql/5.6.html#downloads
我这里因为是64位的操作系统,所以选择下载如下rpm包:
MySQL-server-5.6.30-1.linux_glibc2.5.x86_64.rpm
MySQL-client-5.6.30-1.linux_glibc2.5.x86_64.rpm
MySQL-devel-5.6.30-1.linux_glibc2.5.x86_64.rpm
2、将这些rpm包通过FileZilla上传到linux服务器的某个目录,例如:/usr/local/mysql。
3、在路径/usr/local/mysql下使用如下命令开始安装MySQL服务器:
- rpm -ivh MySQL-server-5.6.30-1.linux_glibc2.5.x86_64.rpm
4、服务端安装完成后,使用如下命令安装MySQL客户端,命令如下:
- rpm -ivh MySQL-client-5.6.30-1.linux_glibc2.5.x86_64.rpm
5、接着安装MySQL-devel-5.6.30-1.linux_glibc2.5.x86_64.rpm,命令如下:
- rpm -ivh MySQL-devel-5.6.30-1.linux_glibc2.5.x86_64.rpm
6、安装完成后mysql是没有启动的,运行mysql命令会提示如下错误:
- [root@AY130221101729bc93912 software]# mysql
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
可使用如下命令启动MySQL:
- service mysql start
或者使用如下命令:
- /etc/init.d/mysql start
7、这样确定MySQL已经安装成功服务已启动
MySQL安装成功后,修改初始密码(网上说没有初始密码,但是我的有,忘记保存在哪个文件里了)
先stop你的myslq服务,service mysql stop或者 /etc/init.d/mysqld stop
(1). 若没有root权限,这种情况下,我们可以采用类似安全模式的方法修改初始密码
先执行命令 mysqld_safe --skip-grant-tables & (设置成安全模式)
&,表示在后台运行,不再后台运行的话,就再打开一个终端咯。
# mysql
mysql> use mysql;
mysql> UPDATE user SET password=password("test123") WHERE user='root'; (会提示修改成功query ok)
mysql> flush privileges;
mysql> exit;
(2). 在mysql系统外,使用mysqladmin
# mysqladmin -u root -p password "test123"
Enter password: 【输入原来的密码】
(3). 可以登录mysql系统的情况下,通过登录mysql系统修改
# mysql -uroot -p
Enter password: 【输入原来的密码】
mysql>use mysql;
mysql> update user set password=passworD("test") where user='root';
mysql> flush privileges;
mysql> exit;
【修改数据库编码】修改mysql配置文件
vi /etc/my.cnf #根据个人配置找到相应文件
#在[client]段增加下面代码
default-character-set=utf8
#在[mysqld]段增加下面的代码
#default-storage-engine=INNODB #置默认存储引擎为InnoDB,此处可不必添加
character-set-server=utf8
collation-server=utf8_general_ci
:wq! #保存退出
================================================================================================================
1、Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写;
2、用root帐号登录后,在/etc/my.cnf中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写;
lower_case_table_names参数详解:
lower_case_table_names=0
其中0:区分大小写,1:不区分大小写
MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:
1、数据库名与表名是严格区分大小写的;
2、表的别名是严格区分大小写的;
3、列名与列的别名在所有的情况下均是忽略大小写的;
4、变量名也是严格区分大小写的;
MySQL在Windows下都不区分大小写。
==================================================================================================================
8、设置开机自启动的方法有很多,例如使用chkconfig命令,另外也可以在/etc/rc.local文件中加上如下MySQL的启动命令,例如:
- /etc/init.d/mysql start
===============================================================================================
创建远程登陆用户并授权,在mysql的命令提示行输入以下命令:
- mysql > use mysql;
- mysql > grant all PRIVILEGES on discuz.* to ted@'123.123.123.123' identified by '123456';
- mysql > exit;
上面的语句表示将 discuz 数据库的所有权限授权给 ted 这个用户,允许 ted 用户在 123.123.123.123 这个 IP 进行远程登陆,并设置 ted 用户的密码为 123456 。
all PRIVILEGES 表示赋予所有的权限给指定用户,这里也可以替换为赋予某一具体的权限,例如:select,insert,update,delete,create,drop 等,具体权限间用“,”半角逗号分隔。
discuz.* 表示上面的权限是针对于哪个表的,discuz 指的是数据库,后面的 * 表示对于所有的表,由此可以推理出:对于全部数据库的全部表授权为“*.*”,对于某一数据库的全部表授权为“数据库名.*”,对于某一数据库的某一表授 权为“数据库名.表名”。
ted 表示你要给哪个用户授权,这个用户可以是存在的用户,也可以是不存在的用户。
123.123.123.123 表示允许远程连接的 IP 地址,如果想不限制链接的 IP 则设置为“%”即可。
123456 为用户的密码。
如:grant all PRIVILEGES on *.* to root@'%' identified by '1';
执行了上面的语句后,再执行下面的语句,方可立即生效。
flush privileges;
零基础在Linux服务器上部署javaweb项目的更多相关文章
- linux服务器上部署springboot项目,并让他持续运行到后台
我们知道在运行springboot 项目只需要java -jar + 项目的war包(jar包)名. 但是只要终端已停止那么服务就会被关闭,也就无法访问到我们的项目了.所以我们可以使用守护进程的方式来 ...
- centos服务器上部署javaweb项目(转)
本文总体参照http://blog.csdn.net/u011019141(然后更据自己情况进行更改) 一.安装JDK 1.首先要查看服务器的系统版本,是32位还是64位 #getconf LONG_ ...
- 在Linux服务器上部署node项目(git部署,forever持续运行,配置SSL证书)
一.环境部署 1.下载安装包: wget https://nodejs.org/dist/v9.9.0/node-v9.9.0-linux-x64.tar.xz 2.解压并进入目录: xz -d no ...
- 如何在Linux服务器上部署禅道
最近换了新的项目团队,由于新团队比较年轻化,没有实行正规的项目管理,于是我自告奋勇要为团队管理出一份力,帮助团队建立敏捷化的项目管理,经过多方考究和对比后,选择了目前较受欢迎的开源项目管理软件:禅道. ...
- Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包
Linux tomcat部署War包,Linux在Tomcat部署JavaWeb项目,Linux部署War包 >>>>>>>>>>>& ...
- linux服务器上部署项目,同时运行两个或多个tomcat
在阿里云服务器上部署项目的时候,想使用阿里云提供的负载均衡服务并创建两个监听(如图), 但需要一台服务器提供两个端口,于是就请教前辈并查询资料,得知: 一台服务器提供两个端口,有两种方式: 1.一个t ...
- Django项目在Linux服务器上部署和躺过的坑
引言 在各方的推荐下,领导让我在测试环境部署之前开发的测试数据预报平台.那么问题来了,既然要在服务器上部署, 就需要准备: 1.linux服务器配置 2.linux安装python环境搭建与配置 3. ...
- 如何在Linux服务器上部署Mysql
一.安装mysql 1.通过文件上传工具,将mysql安装包上传到linux服务器上 2.卸载mariadb包,由于系统中存在mariadb包会导致mysql安装时报错mariadb-libs被mys ...
- 在腾讯云&阿里云上部署JavaWeb项目(Tomcat+MySQL)
之前做项目都是在本地跑,最近遇到需要在在云服务器(阿里云或者腾讯云都可以,差不多)上部署Java Web项目的问题,一路上遇到了好多坑,在成功部署上去之后写一下部署的步骤与过程,一是帮助自己总结记忆, ...
随机推荐
- 每日英语:China Grapples With Genetically Modified Foods
A Chinese agricultural official's unsupported claims about the carcinogenic risks of consuming genet ...
- [转]T-SQL_面试题
[转]T-SQL_面试题 2015-05-19 1 创建表插入数据 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,s ...
- [转]第2台Tomcat端口变更失败解决办法
原文链接:http://blog.csdn.net/preterhuman_peak/article/details/41803361 今天在服务器上部署了两个Tomcat.于是将其中一个的serve ...
- HDOJ 4010 Query on The Trees LCT
LCT: 分割.合并子树,路径上全部点的点权添加一个值,查询路径上点权的最大值 Query on The Trees Time Limit: 10000/5000 MS (Java/Others) ...
- C语言 百炼成钢22
/* 题目58: 编写一个业务函数,实现按行读取文件.把内容按照第三种内存模型打包数据传出,把行数通过函数参数传出. 函数原型有两个,任意选择其一 要求1:请自己任意选择一个接口(函数),并实现功能: ...
- HBase学习系列
转自:http://www.aboutyun.com/thread-8391-1-1.html 问题导读: 1.hbase是什么? 2.hbase原理是什么? 3.hbase使用中会遇到什么问题? 4 ...
- Linux中安装配置hadoop集群
一. 简介 参考了网上许多教程,最终把hadoop在ubuntu14.04中安装配置成功.下面就把详细的安装步骤叙述一下.我所使用的环境:两台ubuntu 14.04 64位的台式机,hadoop选择 ...
- DWZ(二):经常使用组件了解
上篇博客中我们大致明确了DWZ框架.以及它的一些优势,接下来的这篇博客是具体介绍了DWZ框架中一些经常使用组件的使用. 经常使用组件列表: Ajax 链接扩展 ...
- Ubuntu下Eclipse无法添加Tomcat7解决方法
Ubuntu(Linux)下在eclipse中add一个tomcatserver时发现tomcat7无法选择,但是该tomcat已经在eclipse 的server->runtime envir ...
- 用 HTML5+ payment方法支付宝支付遇到的坑
用 HTML5+ payment方法碰到的第一个坑就是如果是支付宝的话签约那种支付方式. 因为 Dcloud的文档没有更新的原因你可以看到他们说的都是‘移动支付’,但是你去支付宝平台的时候看到的根本就 ...