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

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

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

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

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

人员,初中级开发人员,.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)

我有一个微信公众号,经常会分享一些Java技术相关的干货;如果你喜欢我的分享,可以用微信搜索“Java团长”或者“javatuanzhang”关注。

Java开发环境搭建超全详解相关推荐

  1. GitHub重磅官宣!Java开发环境搭建超全详解

    =>下载虚拟机 由于本次演示是基于windows的,因此下载windows版本的虚拟机 =>安装 下载好的虚拟机安装包如下,双击进行安装. 注意:一般在安装新软件时,尽量把杀毒软件关闭. ...

  2. (2019) PHP Strom php 开发环境搭建 教程(详解)

    PHP 开发教程 1. PHP 环境准备 本教程使用php.4 推荐安装PHP 7.3版本 PHP 环境准备 2. 打开PHP Storm Setting->PHP->找到 CLI Int ...

  3. Java开发环境搭建详解

    Java开发环境搭建详解  http://topic.csdn.net/u/20110829/13/BF4FAA45-3E1A-48A8-BC46-0405B7F862A2.html 一.jdk安装与 ...

  4. Tomcat环境搭建与常见问题详解

    Tomcat环境搭建和常见问题详解 Tomcat介绍 环境搭建流程 配置Java 注意事项 下载Java 安装Java 配置环境变量 测试Java 配置Tomcat 下载Tomcat 安装Tomcat ...

  5. phonegap安装 环境搭建与配置详解(3.4 完整版 提供下载地址)

    phonegap安装 环境搭建与配置详解(3.4 完整版 提供下载地址) 原文连接:http://blog.csdn.net/aaawqqq/article/details/19755179 phon ...

  6. day01--java基础编程:计算机基础知识 ,java语言概述,java开发环境搭建,eclipse概述,创建简单java项目,JDK JRE JVM的关系,java开发中的命名规范,编程风格

    1 Day01–Java开发环境+HelloWorld 1.1 计算机基础知识 资料下载网址:刘沛霞 18600949004 code.tarena.com.cn tarenacode code_20 ...

  7. 【早期笔记】java 开发环境搭建

    java 开发环境搭建 文章目录 java 开发环境搭建 `windows`下搭建 Java修饰符 Java 变量 源文件声明规则 Employee.java 文件代码: synchronized 修 ...

  8. 前端:深拷贝的多种方法(超全详解)

    别划走 !走过路过不要错过:错过这个村,我在下一个村等你!坚持每天进步一点点:一天两天可能没发现有效果:但一年365天后你将会感谢今天的自己!!! 今天博主带大家了解一下前端常用的深拷贝方法:(超全详 ...

  9. 初识Java以及JAVA开发环境搭建

    初识Java以及JAVA开发环境搭建 JAVA帝国的诞生 C&C++ JAVA JAVA特性和优势 JAVA三大版本 JDK.JRE.JVE JAVA开发环境搭建 JDK下载与安装.卸载 安装 ...

最新文章

  1. Python IDLE 如何清屏
  2. Chapter 4 : 单行函数
  3. 针对Linux ASP.NET MVC网站中 httpHandlers配置无效的解决方案
  4. 寄存器分配图着色_寄存器分配
  5. 你确定不反编译 likely 看看?
  6. 在新项目中使用 Vue3 使用总结
  7. 求职,北京,.netGIS
  8. redis 集群配置(centos)
  9. codeforces Free Cash
  10. python读取excel(xlrd)
  11. koa2 session mysql_koa2+vue+axios搭建一个博客台管理系统之session踩坑
  12. 40个科研学术网站,收藏必备,予取予求!
  13. 论文解读(PairNorm)《PairNorm: Tackling Oversmoothing in GNNs》
  14. Access 查询的IIF的写法
  15. 2017计算机系书单推荐(排版更新)
  16. VM是什么,干什么的
  17. 课件动画做的牛不牛,看你有它没它!
  18. GrayLog日志平台
  19. 前端学习 day4 : 盒子模型,浮动,定位
  20. 手机短信验证码发送(106短信验证码发送)

热门文章

  1. 解决jquery点击事件后的点击事件执行次数会累加
  2. springboot用户上传头像
  3. web搜索框的制作(必应)
  4. 原码 反码 补码及应用
  5. Mysql之mysqladmin工具
  6. 文件夹Directory
  7. Python用代码打开文件
  8. 【HBase学习之一】HBase简介
  9. mysql添加索引的命令与使用解析
  10. [技术前沿]Hybrid App