在项目产品开发中,开发环境搭建是软件开发的首要阶段,也是必须阶段,只有开发环境搭建好了,方可进行开发,良好的开发环境搭建,为后续的开发工作带来极大便利。

对于大公司来说,软件开发环境搭建工作一般是由运维来做,然而,对于小公司来说,这个工作就交给开发人员来做了,如开发经理。不管这个工作是交给运维人员做,还是

交给开发人员做,能确定的是:做这件事的人,一定是个资深的人,如此,方可让开发环境稳定运行,从而为后续的开发提供便利。

现实中,只有极少部分开发人员接触服务器(能接触的人,基本都是开发组长及其以上,或资深开发,小公司除外),然而,对于一个技术人员来说,服务器相关环境搭建是个必

不可少的环节,这就产生了一个矛盾:服务器相关搭建工作是程序员不可或缺技术,但大部分程序员又少接触服务器。鉴于此,本篇文章将详解这个专题,对于没搭建过服务器的开发

人员,初中级开发人员,.NET转java开发人员提供帮助。

本篇文章内容包括:Linux理论与实操,MySQL实操,JDK实操,Tomcat实操和Tomcat实操。

一 Linux环境搭建


本小结侧重于操作,主要内容大致包括:

  • 两大类操作系统简要介绍
  • VMware Workstation Pro 15简要介绍及安装
  • CentOS简要介绍及基于Wi'n'dows 操作系统的安装

(一 )关于操作系统的介绍


1.Windows 系统

Window操作系统,是我们再熟悉不过的系统了。

  • 客户端操作系统:windows xp(已过时),win7,win8,win10
  • 服务器操作系统:windows server 2008(R2),windows server 2012(R2),windows server 2016

2.Linux 系统

Linux系统是一款开源的多用户操作系统(开源主要指它的内核),由于开源,从而衍生出不同版本Linux操作系统。它的内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。

它是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。

Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。从商业角度来说,分为商业版(收费,如Rechart系列)和非商业版(免费,如CentOS)。

(二)虚拟机


关于虚拟机,当前有两款比较流行:VMware  Workstation 和 VirtualBox。

在本篇文章中,我们将选择VMware Workstation Pro 15(Wmware当前最新版本)作为演示虚拟机。

1.下载地址

官网:https://www.vmware.com/products/workstation-pro.html。官网提供了两种不同平台的虚拟机,即windows和linux。

2.序列号

GV7N2-DQZ00-4897Y-27ZNX-NV0TD

3.安装步骤

=》下载虚拟机

由于本次演示是基于windows的,因此下载windows版本的虚拟机

=》安装

下载好的虚拟机安装包如下,双击进行安装。

注意:一般在安装新软件时,尽量把杀毒软件关闭。

弹出界面,选择“下一步”

接受许可协议,下一步

选择安装路径,选择增强版(也可以不选),下一步

下一步

下一步

安装

安装中....

安装结束,输入许可证

输入许可证

重启电脑,安装完毕。

(三) CentOS


Linux镜像官网:https://www.centos.org/download/

从官网,可以看出提供了三种类型的CentOS镜像:

1.DVD ISO:常用版本,包含大部分功能,大小为4.2G左右;

2.Everything ISO:功能最全版本,大小为8.8G左右;

3.Minimal ISO:压缩版本,大小为906M左右,很多功能需要在线安装;

4.无论是哪个版本镜像,均分为32位(x86)和64位(x64);

(四) 安装CentOS


1.启动虚拟机,文件=》新建虚拟机

典型,下一步

选择安装包,下一步

下一步

存储单个文件,下一步

自定义硬件配置

设置内存为8G,关闭

完成

安装准备中(等待60秒,自动安装,不要操作鼠标)

准备中

选择简体中文(中国),继续

基本配置结束后,选择开始安装

安装中

配置Root密码

完成配置

重启

登录

注意:如果安装可视化桌面,请按照如下步骤

软件选择

GNOME

登录

桌面

二  MySQL安装


1  搭建mysql

1.1  官网下载mysql压缩包

下载压缩包时,可以先把安装包下载到本地,再上传到服务器,也可以在linux服务器上wget:

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

官网:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

1.2  解压gz压缩包

tar -zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

1.3 将压缩包移动到 /usr/local/mysql/

mv -v mysql-5.7.26-linux-glibc2.12-x86_64 /usr/lcoal/mysql

1.4 创建用户组和添加用户

groupadd mysql
useradd -r -g mysql mysql

1.5 将安装目录所有者及所属组改为mysql,这个根据自己的目录来

#chown -R mysql.mysql /usr/local/mysql

1.6  在mysql目录下创建data文件夹

#mkdir data

1.7 初始化数据库

#/usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
如果出现以下错误是因为5.7版本的初始化命令后面要加 --initialize,如下:

/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize

1.8 编辑配置文件

配置文件地址:/etc/my.cnf

[mysqld]
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
socket=/tmp/mysql.sock
user=mysql
port=3306
character-set-server=utf8
# 取消密码验证
//skip-grant-tables
# 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
1.9 将mysql加入到服务

#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

1.10 开机启动

#chkconfig mysql on

1.11 启动mysql

#service mysql start

1.12 设置密码

由于在第7步my.cnf配置文件中取消了密码验证,故登录mysql不需要密码验证。

/usr/local/mysql/bin/mysql -uroot

无密码登录之后,修改密码:

#use mysql;
#update user set authentication_string=password('root') where user='root';
或者#set password=password("root");
#flush privileges;
#exit

1.13 将第7步改为需要密码验证

1.14 添加远程账户

使用root账户登录,并设置远程登录账户

GRANT ALL PRIVILEGES ON *.* to 'Alan_beijing'@'%' IDENTIFIED by 'Shanghai2019' WITH GRANT OPTION

1.15 防火墙设置

方式一:关闭防火墙

//停止
systemctl stop firewalld.service
//禁止开机启动
systemctl disable firewalld.service

方式二:开启端口

//这里发现防火墙是开启的,再来查看防火墙控制的端口
systemctl status firewalld
//查看防火墙控制的端口,发现我想要监听的8081端口没有开启
firewall-cmd --list-all
//永久开启3306端口
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent
//重载防火墙
sudo firewall-cmd --reload

1.16 重启mysql服务

service mysql start

1.17 相关命令

1 .安装numactl和libaio

yum -y install numactl
    yum search libaio
    yum install libaio

2.配置环境变量

export PATH=$PATH:/usr/local/mysql/bin

3.启动服务

方式一:服务方式

[root@localhost ~]service mysql start
如果服务在启动状态,直接重启服务用以下命令:
[root@localhost ~]service mysql restart

方式二:命令行方式

[root@localhost bin]cd /usr/bin

[root@localhost bin]./mysqld_safe &

4.关闭服务

方式一:服务方式

[root@localhost ~]service mysql stop

方式二:命令行方式

[root@localhost ~]mysqladmin -u root shutdown

5.查看服务

方式一:

[root@localhost bin]ps -ef|grep mysql

方式二:

[root@localhost bin]netstat -nlp

6.进程查询和杀死

(1) ps -ef |grep redis

ps:将某个进程显示出来
-A  显示所有程序。 
-e  此参数的效果和指定"A"参数相同。
-f  显示UID,PPIP,C与STIME栏位。 
grep命令是查找
中间的|是管道命令 是指ps命令与grep同时执行

这条命令的意思是显示有关redis有关的进程

(2)kill[参数][进程号]

kill -9 4394

kill就是给某个进程id发送了一个信号。默认发送的信号是SIGTERM,而kill -9发送的信号是SIGKILL,即exit。

exit信号不会被系统阻塞,所以kill -9能顺利杀掉进程。当然你也可以使用kill发送其他信号给进程。

7.查看mysql

方法一:status;
方法二:select version();

2  卸载mysql
2.1 RPM包安装方式的MySQL卸载

1.检查是否安装了MySQL组件
   # rpm -qa | grep -i mysql

2.卸载前关闭MySQL服务
     # service mysql status

# service mysql stop

# service mysql status

3.卸载删除MySQL各类组件

# rpm -ev  组件名 
 4.收集MySQL对应的文件夹信息

# find / -name mysql
5.收集MySQL对应的文件夹信息

# rm -rf  路径/文件名
6.删除mysql用户及用户组

# more /etc/passwd | grep mysql

# more /etc/shadow | grep mysql

# more /etc/group | grep mysql

# userdel mysql

# groupdel mysql

7.确认MySQL是否卸载删除

#  rpm -qa | grep -i mysql

2.2  yum包安装方式的MySQL安装
1.查看yum上提供的数据库可下载版本
    #  yum list | grep mysql

2.安装mysql.i686,mysql-devel.i686,mysql-server.i686
   #  yum -y install mysql mysql-server mysql-devel

3.查看是否开机启动
   # chkconfig --list | grep mysqld

4.设置为开机启动
   #  chkconfig mysqld on

5.设置数据库密码
  #  service mysqld start

#  mysqladmin -u root -p password 'root'

2.3  service mysql start出错:unrecognized service的解决办法
[root@ctohome.com ~]# service mysql start
mysql: unrecognized service
[root@ctohome.com ~]# service mysql restart
mysql: unrecognized service
 
[root@ctohome.com ~]# rpm -q mysql   查询发现mysql已经正常安装
mysql-5.1.52-jason.1

[root@ctohome.com ~]# chmod 755 /etc/rc.d/init.d/mysqld  修改mysqld执行权限

[root@ctohome.com ~]# service mysqld start  搞定
Starting mysqld:  [  OK  ]
[root@ctohome.com ~]# service mysqld status
mysqld (pid 9487) is running...

2.4  Navicat for mysql远程连接数据库详解(1130错误解决方法)
1.进入MySql控制台: mysql -u root -p

2.弹出Enter password:   输入您的数据库密码

3.执行下命令: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '您的数据库密码' WITH GRANT OPTION;

4.再执行下下命令:  flush privileges;

5.mysql服务启动、停止、重启
(一)启动方式

(1)使用 service 启动:service mysqld start

(2)使用 mysqld 脚本启动:/etc/inint.d/mysqld start

(3)使用 safe_mysqld 启动:safe_mysqld&

(二)停止

(1)使用 service 启动:service mysqld stop

(2)使用 mysqld 脚本启动:/etc/inint.d/mysqld stop

(3)mysqladmin shutdown

(4)杀掉进程:

#  ps -ef  |  grep mysqld

#  kill -9  进程号

(三)重启

(1)(使用 service 启动:service mysqld restart

(2)使用 mysqld 脚本启动:/etc/inint.d/mysqld restart

6.mysql 查询的基本命令
   1)查看内存
  #  top

 2)mysql的安装路径和运行路径
  #  whereis mysqld

3)PATH变量指定的路径中,搜索mysql的信息
  #  which mysqld

4)查看配置文件
 #  vi /etc/my.cnf

7.解决修改mysql的datadir所引发的错误问题
 1)修改datadir指向的文件路径
   1))复制默认指定路径里面的文件到新的指定路径的文件夹中      

   2))修改指定的文件夹的修改权限

2)配置apparmor权限
   1))查看apparmor的配置:# vi /etc/apparmor.d/usr.sbin.mysqld

   2))配置新路径权限

3)PATH变量指定的路径中,搜索mysql的信息
  1))查看selinux的配置:# vi /etc/selinux/config

  2))修改配置: SELINUX=disabled

三  JDK安装


1.wget下载安装包

我将jdk安装包下载在/TestPackages/  目录下

wget url

2.解压jdk安装包

tar xzvf jdk-8u221-linux-x64.tar.gz

解压后

3.配置环境变量

vim /etc/profile.d/java.sh

4.使环境变量生效

source /etc/profile

5.测试jdk是否安装成功

java -version

四 Tomcat安装


以安装tomcat 8 为例

=》进入Tomcat官网,获取Tomcat下载地址

https://tomcat.apache.org/download-80.cgi

=》wget

wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.43/bin/apache-tomcat-8.5.43.tar.gz

=》解压

tar -zxvf apache-tomcat-8.5.43.tar.gz

=》启动Tomcat

=>访问Tomcat

用ip访问

 五 Redis安装


(一)  Redis服务搭建

1.在根路径建立目录 myredis

mkdir myredis

2.进入myredis目录

cd myredis/

3.Redis搭建

(1)下载Redis

wget http://download.redis.io/releases/redis-5.0.4.tar.gz

(2)解压Redis包

tar xzf redis-5.0.4.tar.gz

(3)切换到(2)解压的包

cd redis-5.0.4

(4)编译包

make

Tip:当make命令出错时,请添加如下命令:

yum install cpp
        yum install binutils
        yum install glibc
        yum install glibc-kernheaders
       yum install glibc-common
       yum install glibc-devel
       yum install gcc
       yum install make

yum install tcl

(二)Redis服务配置


Redis服务相关配置,主要集中在Redis.conf文件中。 在除此配置Redis服务时,有六个参数是比较重要的:requirepass, bind,port,protected-mode,daemonize,logfile

1.requirepass:配置redis登录密码

redis.conf中,requirepass参数默认是不需要的,即不需要密码登录。

这里,我将其更改为123456

​ 

2.bind:配置ip

redis.conf中,bind默认绑定的ip为127.0.0.1

为了让远程能够访问,请使用Linux服务器ip地址代替,查看ip命令:ifconfig

​  

3.port:配置端口号

redis.conf默认端口号为6379,你可以改为你自己的端口号

如下更改为6399

4.protected-mode:设置保护模式

redis.conf的protected-mode默认是开启保护模式的,需要更改为非开启模式

如下设置为不保护模式

​   

5.daemonize

daemonize表示是否在后台启动redis-server,默认表示为非在后台启动服务,将其设置为后台运行

​  

6.logfile

redis.conf的logfile表示redis的配置文件,大家可以理解为sl4j.log等日志文件,

创建文件:myredis.log

vim  /myredis/redis-5.0.4/myredis.log

配置logfile参数,其路径为myredis.log路径

(三)  防火墙配置


如下为防火前配置的基本流程
   1.查看防火墙状态

防火墙状态为running或not running,若非running,则设置为running

2.向防火墙添加开放端口

firewall-cmd --permanent --zone=public --add-port=6399/tcp

--permanet参数表示永久,否则表示临时

3.加载配置

firewall-cmd --reload

4.查看开启的端口

firewall-cmd --permanent --zone=public --list-ports

5.启动redis服务

需要注意的是,启动服务时,要带上redis配置文件

src/redis-server  redis.conf

查看配置文件,发现redis已经启动成功

(四) 访问Redis服务


1.通过xshell访问

src/redis-cli -h 192.168.202.134 -p 6399 -a 123456

如下为成功访问redis的截图

测试一下:

2.通过redisDeskManager来访问redis服务

打开db0,就能看到刚才set 的name

​  

关于redis客户端工具,目前市场上还是比较多的,这里我推荐两款:

RedisDeskManager和RedisClient

(五)  相关命令


(1)关闭redis服务
  redis-cli -h ip -p port shutdown

六 版权区


  • 转载博客,必须注明博客出处
  • 博客园:http://www.cnblogs.com/wangjiming/ (侧重.NET)
  • CSDN:https://blog.csdn.net/u010228798  (侧重JAVA)
  • 如您有新想法,欢迎提出,邮箱:2098469527@qq.com
  • 专业.NET之家技术QQ群:490539956
  • 专业化Java之家QQ群:924412846
  • 有问必答QQ群:2098469527
  • 一对一技术辅导QQ:2098469527

史上最强Java开发环境搭建的更多相关文章

  1. Java 开发环境搭建

    找到一篇很不錯的Java開發環境搭建的博客, 原文地址為:http://www.cnblogs.com/bribe/p/3377008.html Java 开发环境搭建 一.开发工具获取 1.开发工具 ...

  2. 转 史上最详细的Hadoop环境搭建

    GitChat 作者:鸣宇淳 原文:史上最详细的Hadoop环境搭建 关注公众号:GitChat 技术杂谈,一本正经的讲技术 [不要错过文末活动哦] 前言 Hadoop在大数据技术体系中的地位至关重要 ...

  3. 开始JAVA编程的敲门砖——JAVA开发环境搭建

    从头开始的java编程--JAVA开发环境搭建 一.什么是java的开发环境? 顾名思义java的开发环境是提供并保证整个java程序开发运行的必要的环境,搭建java开发环境是开始java编程的敲门 ...

  4. spark JAVA 开发环境搭建及远程调试

    spark JAVA 开发环境搭建及远程调试 以后要在项目中使用Spark 用户昵称文本做一下聚类分析,找出一些违规的昵称信息.以前折腾过Hadoop,于是看了下Spark官网的文档以及 github ...

  5. Windows系统下JAVA开发环境搭建

    首先我们需要下载JDK(JAVA Development Kit),JDK是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JAVA基础的类库. 下载地址:http://www.or ...

  6. 史上最强Java NIO入门:担心从入门到放弃的,请读这篇!

    本文原题“<NIO 入门>,作者为“Gregory M. Travis”,他是<JDK 1.4 Tutorial>等书籍的作者. 1.引言 Java NIO是Java 1.4版 ...

  7. 超全详解Java开发环境搭建

    摘自:https://www.cnblogs.com/wangjiming/p/11278577.html 超全详解Java开发环境搭建   在项目产品开发中,开发环境搭建是软件开发的首要阶段,也是必 ...

  8. Java开发环境搭建的准备工作

    Java开发环境搭建的准备工作 网络配置(修改hosts) 什么时候需要 比如我们在安装homeBrew的时候会遇到 curl: (7) Failed to connect to raw.github ...

  9. 【java系列】java开发环境搭建

    描述 本篇文章主要讲解基于windows 10系统搭建java开发环境,主要内容包括如下: (1)安装资料准备 (2)安装过程讲解 (3)测试是否安装成功 (4)Hello Word测试 1   安装 ...

随机推荐

  1. jsp路径兼容

    jsp头 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&q ...

  2. mysql-8.0-winx64安装以及修改密码

    一.下载安装包(https://dev.mysql.com/downloads/mysql/) 二.添加my.ini配置文件 打开刚刚解压的文件夹 C:\mysql-8.0.16-winx64,在该文 ...

  3. MySQL 性能调优——SQL 查询优化

    如何设计最优的数据库表结构,如何建立最好的索引,以及如何扩展数据库的查询,这些对于高性能来说都是必不可少的.但是只有这些还不够,要获得良好的数据库性能,我们还要设计合理的数据库查询,如果查询设计的很糟 ...

  4. Win32小游戏--蜘蛛纸牌

    前一段时间完成了蜘蛛纸牌的仿写,现将过程和思路记录下来 首先,为了符合复用性,在win32的基本框架中,把可变的部分用c++封装起来成为一系列虚函数,这样如果再继续写游戏的话,只需要继承这个类就可以了 ...

  5. JDK1.8之ConcurrentHashMap

    目录 简介 JDK1.7 JDK1.8 重要属性 Node类 ForwardingNode类 原子操作和Unsafe类 重要方法 初始化表操作(initTable) 插入键值对(put和putVal) ...

  6. 玲珑OJ 1082:XJT Loves Boggle(爆搜)

    http://www.ifrog.cc/acm/problem/1082 题意:给出的单词要在3*3矩阵里面相邻连续(相邻包括对角),如果不行就输出0,如果可行就输出对应长度的分数. 思路:爆搜,但是 ...

  7. Python的函数, 返回值, 参数

    1. 函数 函数是对功能的封装 语法: def 函数名(形参): 函数体(代码块,return) 调用: 函数名(实参) 2. 返回值 return:在函数执行的时候, 遇到return 就直接返回, ...

  8. ML.NET技术研究系列-2聚类算法KMeans

    上一篇博文我们介绍了ML.NET 的入门: ML.NET技术研究系列1-入门篇 本文我们继续,研究分享一下聚类算法k-means. 一.k-means算法简介 k-means算法是一种聚类算法,所谓聚 ...

  9. 学Redis这篇就够了

    Redis 简介 Redis 优势 Redis 数据类型 string hash list set Zset 小总结 基本命令 发布订阅 简介 实例 发布订阅常用命令 事务 实例 Redis 事务命令 ...

  10. Linux操作系统下文件作用

    linux下的文件结构,看看每个文件夹都是干吗用的 /bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的 ...