作为一个“程序猿”,一定要有自己的公网服务器,不仅可以用来测试代码,更为重要的是生产环境和本地开发环境还是有很大差异的。“为什么在我本地是正常的?到线上就出错了,这不是我的问题!!!”----常见的程序猿甩锅名句。但是搭建一套完整的运行环境,对于普通开发程序员来说,并不容易。所以我动手亲自实践了一下,从0搭建服务器的过程,并记录下来,帮助更多的码农们,更快的,搭建好自己的线上服务器!现在开始我的表演!!!

       声明:目前搭建的环境主要包括:Jdk+Tomcat+Mysql+Redis,一般的网站,这些组件也完全够用了。服务器系统: centos_7_06_x64

一、安装jdk

1、查看Linux自带的JDK是否已安装

# java -version

2、查看JDK信息

# rpm -qa | grep java

显示:

java-x.x.x-gcj-compat-x.x.x.x-xxjpp.xxx

java-x.x.x-openjdk-x.x.x.x-x.x.bxx.exx

3、卸载(有几个卸载几个)

# rpm -e --nodeps java-x.x.x-gcj-compat-x.x.x.x-xxjpp.xxx

# rpm -e --nodeps java-x.x.x-openjdk-x.x.x.x-x.x.bxx.exx

还有一些其他的命令

rpm -qa | grep gcj

rpm -qa | grep jdk

如果出现找不到openjdk source的话,那么还可以这样卸载

yum -y remove java java-x.x.x-gcj-compat-x.x.x.x-xxjpp.xxx

yum -y remove java java-x.x.x-openjdk-x.x.x.x-x.x.bxx.exx

没有安装过java任何版本的,忽略这个流程。

然后到oracle官网下载jdk,http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html,由于官网更新,下载jdk 要求必须登录。注册账号,登录才可下载。而且很不容易找到你需要的版本的JDK。例如:我需要下载的jdk版本号是jdk-8u201,那么就需要下面的地址,去里面自己找,里面有所有版本JDK:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html。如下图:

java 本地服务器映射 搭建java本地服务_java 本地服务器映射

 

然后解压jdk: tar -zxvf jdk-8u201-linux-x64.tar.gz

将解压后的文件夹移到自己安装第三方软件的常用文件夹中,如:mv jdk1.8.0_201 /usr/local/

配置环境变量

安装完成后需要配置一下环境变量,编辑/etc/profile文件:

vim /etc/profile

在文件尾部添加如下配置:

export JAVA_HOME=/usr/local/jdk1.8.0_201
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

截图如下:

java 本地服务器映射 搭建java本地服务_linux_02

最后一步就是通过source命令重新加载/etc/profile文件,使得修改后的内容在当前shell窗口有效:

source /etc/profile

测试

输入java -version查看一下jdk版本信息:

java 本地服务器映射 搭建java本地服务_java 本地服务器映射_03

如上图所示正常显示了jdk版本,到此为止就已经安装成功了。

二、安装Tomcat

访问官网:http://tomcat.apache.org/

java 本地服务器映射 搭建java本地服务_mysql_04

点击左侧的Tomcat8,进入下载页面

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

java 本地服务器映射 搭建java本地服务_linux_05

选择红框标注的tar.gz链接,直接点击下载

或者直接用命令 wget -c https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.38/bin/apache-tomcat-8.5.38.tar.gz

解压Tomcat:tar -zxvf apache-tomcat-8.5.38

改目录名:mv apache-tomcat-8.5.38 tomcat8-1

移动到/usr/local/目录下:mv tomcat8-1/ /usr/local/

防火墙开启8080端口

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

firewall-cmd --reload

启动tomcat8

/usr/local/tomcat8-1/bin/startup.sh

java 本地服务器映射 搭建java本地服务_java 本地服务器映射_06

浏览器地址栏输入:http://你的IP地址:8080,能访问到如下界面,就说明Tomcat安装成功了。

java 本地服务器映射 搭建java本地服务_服务器_07

至此,已完成安装,

Tomcat的默认工具manager配置,在很多的生产环境中由于基本用不到、或者是不太需要使用Tomcat默认的manager管理页面时一般都会把Tomcat的默认webapp下的内容给删除了,但是如果需要使用Tomcat默认的manager来管理项目时就需要保留相应的文件目录。在Tomcat中的webapps中有如下目录:docs(Tomcat本地说明文档)、examples(Tomcat相关的deamon示例)、host-manager(主机头管理工具)、manager(项目管理工具)、ROOT(Tomcat默认页),其中需要保留的是host-manager、manager、ROOT这3个目录而从Tomcat 6开始为了安全缺省条件下Tomcat的host-manager、manager是不能访问的(http 401拒绝),如需访问需要分配相关的角色权限

java 本地服务器映射 搭建java本地服务_服务器_08

会发生异常如下:

java 本地服务器映射 搭建java本地服务_linux_09

此时需要将这两个文件替换,即可正常登录管理页面,管理应用了。

一个是 tomcat-users.xml,另一个是context.xml ,都位于tomcat 目录下。具体位置见下图:

java 本地服务器映射 搭建java本地服务_linux_10

java 本地服务器映射 搭建java本地服务_服务器_11

这里我已经配置好了,直接下载 tomcat-users.xml 和 context.xml 覆盖到相应位置即可。

登录用户名、密码在 tomcat-users.xml 中可以自行修改。修改完成在访问会看到如下界面:

java 本地服务器映射 搭建java本地服务_redis_12

java 本地服务器映射 搭建java本地服务_mysql_13

至此,全部完成!!!

三、安装MySQL5.7.29

下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

java 本地服务器映射 搭建java本地服务_mysql_14

解压

tar -xvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz

再移动并重命名一下

mv mysql-5.7.29-linux-glibc2.12-x86_64 /usr/local/mysql

java 本地服务器映射 搭建java本地服务_mysql_15

创建mysql用户组和用户并修改权限

groupadd mysql
useradd -r -g mysql mysql

创建数据目录并赋予权限

mkdir -p  /data/mysql              #创建目录
chown mysql:mysql -R /data/mysql   #赋予权限

java 本地服务器映射 搭建java本地服务_redis_16

配置my.cnf

vim /etc/my.cnf

 内容如下

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
lower_case_table_names=1    #设置数据库不区分大小写

初始化数据库

进入mysql的bin目录

cd /usr/local/mysql/bin/

初始化

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

温馨提示:

在这一步中容易遇到以下错误:

执行./mysqld --initialize 后

./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

原因是没有安装libaio.so.1,安装即可。

Ubuntu下执行:

apt-get install libaio1 libaio-dev

Redhat/Fedora/CentOS下执行:

yum install libaio

 

查看密码

cat /data/mysql/mysql.err

下图中,红框内的即是,mysql 的 root 用户的初始密码。

启动mysql,并更改root 密码

先将mysql.server放置到/etc/init.d/mysql中

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

启动!!!

service mysql start
 
ps -ef|grep mysql

java 本地服务器映射 搭建java本地服务_linux_17


 

到这里说明mysql已经安装成功了!!

下面修改密码

首先登录mysql,前面的那个是随机生成的。

./mysql -u root -p   #bin目录下

再执行下面三步(分步执行)操作,然后重新登录。

SET PASSWORD = PASSWORD('123456');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

 

java 本地服务器映射 搭建java本地服务_服务器_18

 这时候你如果使用远程连接……你会发现你无法连接。

java 本地服务器映射 搭建java本地服务_mysql_19

这里主要执行下面三个命令(先登录数据库)

use mysql                                            #访问mysql库
update user set host = '%' where user = 'root';      #使root能再任何host访问
FLUSH PRIVILEGES;                                    #刷新

java 本地服务器映射 搭建java本地服务_linux_20

java 本地服务器映射 搭建java本地服务_java 本地服务器映射_21


好了,到这一步,MySQL5.7.29就装好了!!!

四、安装Redis5.0.7

1.获取redis资源

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

        如果提示找不到资源,那么直接去官网https://redis.io/下载,然后上传到 Linux 服务器

2.解压

tar xzvf redis-5.0.7.tar.gz

3.安装

cd redis-5.0.7
make
cd src
make install PREFIX=/usr/local/redis

(如果有执行出错,先安装gcc。安装命令为:

yum -y install gcc automake autoconf libtool make

若出现【zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录】,则运行命令

make MALLOC=libc

4.移动配置文件到安装目录下

cd ../
mkdir /usr/local/redis/etc
mv redis.conf /usr/local/redis/etc

 5.配置redis为后台启动

vim /usr/local/redis/etc/redis.conf //将daemonize no 改成daemonize yes

6.将redis加入到开机启动

vi /etc/rc.local //在里面添加内容:
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf 
(意思就是开机调用这段开启redis的命令)

7.开启redis

/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf

8.常用命令  

redis-server /usr/local/redis/etc/redis.conf //启动redis

pkill redis  //停止redis

卸载redis:

  rm -rf /usr/local/redis //删除安装目录

  rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本

  rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹

9.采用redis desktop manager远程连接的配置

接下里我们在配置文件redis.conf中进行相关的配置

vim redis.conf   #打开配置文件

在vim编辑模式下,输入行数+gg可以快捷跳行。例如跳到第138行,输入:138gg

  1. 将第138行的daemonize no修改为daemonize yes即可

设置后台启动

java 本地服务器映射 搭建java本地服务_mysql_22

开启远程访问

将第70行的bind注释,第90行将protected-mode改为no

java 本地服务器映射 搭建java本地服务_linux_23

设置密码

取消第502行的注释,并修改密码

java 本地服务器映射 搭建java本地服务_mysql_24


接下来重启redis:

  1. #首先查询到redis的pid后,kill掉,然后重启
  2. [root@localhost bin]# ps -ef|grep redis
  3. root      20940      1  0 12:12 ?        00:00:18 ./redis-server *:6379 
  4. [root@localhost bin]# kill 20940
  5. [root@localhost bin]# ./redis-server redis.conf 

后台启动成功如下
 

java 本地服务器映射 搭建java本地服务_mysql_25