本次课程实验,我们选择的是ubuntu 14.04操作系统,不像使用RDP连接windows服务器那样可以直观的看到远程端的图形界面,只能通过Xshell以命令行进行操作,那么就来说说配置远程linux服务器需要的一些工具。

  服务器环境:Ubuntu 14.04+Mysql Distrib 5.5.46+vsftpd 3.0.2+JAVA 1.8.0_71+Tomcat 8.0.30

  作为一个JAVA Web服务器,那么Tomcat是必不可少的,而且Web项目中一般涉及数据的存储问题,采用数据库是最为简单而又有效的方式,而数据库方面选择Mysql而不是Oracle则主要是因为Mysql完全足够满足我们的需求,Oracle过于庞大,在性能一般的机器上运行反而无法发挥它的能力,当然,Mysql的安装相比于Oracle简单太多,偷个懒。vsftpd是将服务器打折成FTP服务器,目的是使我们能够更加方便地将项目上传到服务器上进行部署。

  1.Mysql的安装

    Mysql的安装十分简单,是整个过程中最为省力的一步,可以从Mysql官网上下载安装包解压安装,也可以直接使用命令apt-get install mysql-server mysql-client,我们使用后者

    在安装过程中会让你设置Mysql的管理员用户密码(root),这个密码忘记了虽然可以找回来,但是,还是记牢了为好。

    安装完成后,在命令行输入mysql -u root -p回车再输入root用户的密码即可进行登陆。

    安装好了就可以创建表空间进行使用了,直接执行create database dbname,就可以创建一个名为dbname的表空间,但这里存在一个问题,就是以这个命令创建的表空间默认字符编码是不支持中文字符串的,一旦执行中文信息插入,全部显示乱码。

    查询了create database的用法以及网上一些博客的介绍才知道

    CREATE DATABASE 的语法:

      CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name
      [create_specification [, create_specification] ...]

      reate_specification:
      [DEFAULT] CHARACTER SET charset_name
      | [DEFAULT] COLLATE collation_name

    所以如果数据库将来插入的数据涉及中文,那么最好以这个语句进行创建CREATE DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;将语言系设置为UTF-8

    如果你的数据库已经创建了,又不舍得通过删除重建方法,那么可以使用 ALTER DATABASE db_name DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci 进行设置。

  2.vsftpd的安装

    vsftpd的安装同样简单,使用apt-get install vsftpd就可以完成安装

    但难的在于配置项,vsftpd安装完成后,他的配置文件为/etc/vsftpd.conf

    我们新建一个本地用户用于FTP连接 useradd ftpuser -d /home/ftp -m;

    -d:指定用户的根目录,-m:如果用户根目录不存在则自动创建

    passwd ftpuser为其指定一个新的密码用于登陆;

    然后使用vim打开/etc/vsftpd.conf修改以下参数(去除参数前的#注释即可)

      local_enable=YES   //是否允许本地用户登录

      write_enable=YES  //是否允许写入

      chroot_local_user=YES  //禁止所有用户访问local_root的上一级目录

      anonymous_enable=NO  //是否允许匿名登陆,NO本该是默认选项,不过也有人提到这个参数的初始值为YES,改成NO就好了

    并在文件末尾添加

      local_root = /home/ftp

    保存退出后重启vsftpd:service vsftpd restart

    然后就可以使用Xftp等FTP工具连接服务器了,以上配置仅是实现一个最简单的FTP服务器,实现基础的文件传输功能,其他的高级功能设置可以自行google或百度。

  3.JDK的安装

    1.先去jdk官网下载ubuntu系统对应版本到本地,然后使用步骤二的ftp服务上传到服务器

    2.使用wget命令直接登陆jdk官网下载:wget -c 链接地址 ;  -c 参数代表断点续传,如果不使用-P参数指定下载目录则下载到当前目录

    下载完成后复制到/usr/local目录下,使用tar -zvxf 文件名 进行解压,然后修改/etc/profile为jdk指定全局环境变量,如果修改用户环境变量~/.bashrc也可以,但感觉有点麻烦,如果多个用户都需要用到JDK,得一个用户一个用户进行设置。

    变量贴出来如下:

      export JAVA_HOME=/usr/local/jdk1.8.0_71(这个是我的版本)
      export JRE_HOME=$JAVA_HOME/jre
      export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
      export PATH=$JAVA_HOME/bin:$PATH

    保存关闭后,source /etc/profile即可重新加载变量设置。

  4.Tomcat安装

    步骤其实同JDK安装差不多

    1.先去Tomcat官网下载ubuntu系统对应版本到本地,然后使用步骤二的ftp服务上传到服务器

    2.使用wget命令直接登陆Tomcat官网下载

    下载完成后复制到/usr/local目录下,使用tar -zvxf 文件名 进行解压,然后修改~/.bashrc为Tomcat指定变量,Tomcat个人感觉不必设置成全局变量。

    变量贴出来如下:(注:我将Tomcat解压后的文件夹改名成Tomcat8)

      export CATALINA_BASE=/usr/local/Tomcat8
      export CATALINA_HOME=/usr/local/Tomcat8
      export PATH=$CATALINA_HOME/bin:$PATH

    保存关闭后,source ~/.bashrc即可重新加载变量,可以实现Tomcat的功能,但个人不是这样配置的,我为Tomcat配置了一个独立的用户设置为服务并开机自启,过程中需要编译,有点麻烦,这个以后再写。

  以上就是一个简单的JAVA Web服务器配置流程,如果有错误还请指正。

    

    

    

  

配置linux服务器的一些操作的更多相关文章

  1. windows环境jar包部署到linux服务器,一键操作

    背景: windows系统下生成的jar包通过FTP上传到linux服务器,然后通过XShell进行jar包的发布,这样反复了几个月后,开发阶段需要频繁更新包的部署.个人觉得很繁琐,想一键式把这个工作 ...

  2. 定时备份windows机器上的文件到linux服务器上的操作梳理(rsync)

    由于需要对网络设备做备份,备份文件是放到windows机器上的.现在需要将备份数据同步到linux备份机器上,想到的方案有三种: 1)将windows的备份目录共享出来,然后在linux服务器上进行挂 ...

  3. java链接linux服务器,命令操作

    1.本地读取linux文件,即在Windows上链接外部linux package com.common.utils; import java.io.BufferedReader; import ja ...

  4. centOS7 mini配置linux服务器(三) 配置防火墙以及IPtables切换

    一.firewall介绍 CentOS 7中防火墙是一个非常的强大的功能,在CentOS 6.5中在iptables防火墙中进行了升级了. 1.官方介绍 The dynamic firewall da ...

  5. centOS7 mini配置linux服务器(五) 安装和配置tomcat和mysql

    配置java运行环境,少不了服务器这一块,而tomcat在服务器中占据了很大一部分份额,这里就简单记录下tomcat安装步骤. 下载 首先需要下载tomcat7的安装文件,地址如下: http://t ...

  6. 如何配置FTP服务器,方便操作服务器文件

    1 进入"控制面板"->"程序"->"打开或关闭Windows功能",找到"Internet信息服务"选项 ...

  7. 如何购买并配置linux服务器上的数据库

    首先百度搜索阿里云 如果是学生可以学生认证 然后注册账号->个人认证->学生认证 然后你会发现 服务器一年只要114,114你买不了上当,买不了吃亏,买下面的ECS服务器,系统可以选择wi ...

  8. windows环境jar包部署到linux服务器,一键操作(帮助说明)

    背景:在上次https://www.cnblogs.com/shexunyu/p/11165282.html发布了第一个版本后,后面增加了相关功能 需求:做下简单的说明文档 下载:https://fi ...

  9. Linux服务器使用命令操作MySQL插入数据乱码问题

    服务器上使用MySQL命令方式进行插入数据时,很多时候会遇到插入数据乱码问题,导出一个sql执行文件,再倒入到unbutn中,结果出现乱码,折腾7-8分钟, 解决方式 在导出mysql sql执行文件 ...

随机推荐

  1. 对AutoIt中控件和窗口的理解

    经过尝试,对AutoIt中Control和Window有了新的认识,分享一下 1.Control 现在我想对一个WinForm架构的应用程序进行自动化操作,得到控件Advanced Mode属性为[N ...

  2. BZOJ3522——[Poi2014]Hotel

    1.题意:http://www.lydsy.com/JudgeOnline/problem.php?id=3522 2.分析:这道题有两种情况,第一个是三个点在同一个链上,这显然不可能了,因为树上的路 ...

  3. jQuery判断及更改checkbox状态

    判断:jquery对象.prop("checked") 选中:jquery对象.prop("checked", true) 取消选中:jquery对象.remo ...

  4. HTTP返回码中301与302的区别 (转载)

    一.官方说法 301,302 都是HTTP状态的编码,都代表着某个URL发生了转移,不同之处在于:  301 redirect: 301 代表永久性转移(Permanently Moved). 302 ...

  5. [CodeWars][JS]如何判断给定的数字是否整数

    问题描述: We are asking for a function to take a positive integer value, and return a list of all positi ...

  6. EndNote(二)之英文引文导入方式

    在上一篇EndNote教程(一)--基本介绍中介绍了基本使用,今天将来介绍如何将常用文献引文导入EndNote中. EndNote在文献管理方面有着很多优点,可以节约很多精力.但是,不同文献查询网站可 ...

  7. 移居 GitHub

    博客很久没能更新了,很多代码也从博客园逐渐转移到 GitHub,欢迎新老用户光顾: https://github.com/kedebug 个人博客:http://kedebug.me/

  8. C# 同类型实体赋值

    #region 更新赋值,前者赋值给后者 public static void ShadowCopy(object a, object b) { if (a == null) return; if ( ...

  9. CodeForces 589J Cleaner Robot

    题目链接 题意:一个机器人打扫卫生,URDL代表初始时机器人面对的方向上右下左. ' . ' 代表可以打扫的, ' * ' 代表家具,如果机器人遇到家具就顺时针转90度,问机器人能打扫多少面积. 题解 ...

  10. 建表过程-列名&列类型&修改表小试题C

    #新增数据 INSERT INTO goods VALUES(10,'豆豆','男',85.2,'2016-12-14',5000.36,'2016-12-14 12:05:06','高') INSE ...