文章目录
前言
本文是基于京东云CentOS 7环境下搭建的,腾讯云、阿里云基本都大同小异,无很大的区别。
安装和配置防火墙
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。
- 关闭firewall
systemctl stop firewalld.service systemctl disable firewalld.service systemctl mask firewalld.service
- 安装iptables防火墙
- 查看iptables相关的安装包
yum list iptables*
- 安装
yum install -y iptables-services
- 查看iptables相关的安装包
- 编辑防火墙,增加端口
-
在-A FORWARD上面编辑防火墙配置文件
vi /etc/sysconfig/iptables
添加以下配置-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
-
保存退出
:wq!
如果需要开通更多的端口,按上面的方式添加配置即可
-
- 重启配置,重启服务
- 开启防火墙
systemctl start iptables.service
- 重启防火墙使配置生效
systemctl restart iptables.service
- 查看防火墙是否生效
systemctl status iptables.service
- 设置防火墙开机启动
systemctl enable iptables.service
- 查看当前系统下的端口使用情况
netstat -tunlp
- 开启防火墙
- 云服务安全组
通过以上方式设置了防火墙之后,如果使用到的云服务器(如腾讯云、阿里云、京东云),需要在其管理平台中设置安全组;然后配置开通相应的端口才能正常开通对应的端口;目前发现京东云的安全组貌似没有什么用,不设置依然可以访问,不知道是否是我的设置问题;但是腾讯云如果不正常设置,端口将无法正常使用
安装telnet服务,语言包
-
查看xinetd相关的安装包,xinetd先安装
yum list xinetd*
-
安装xinetd服务
yum install -y xinetd
-
查看telnet相关的安装包
yum list telnet*
-
安装telnet服务端
yum install -y telnet-server
-
安装telnet客户端
yum install -y telnet
-
添加语言包
vim /etc/sysconfig/i18n
进入之后添加一下内容(默认已经有以下内容了):
LANG=zh_CN.UTF-8 LC_ALL=zh_CN.UTF-8
安装JDK
不能以yum的方式安装,因为有时候会缺少jar包,导致tomcat启动不成功。
下载jdk-7u67-linux-x64.tar.gz
通过FTP工具,将压缩包上传至服务器的/usr/local/src目录下
-
进入压缩包目录
cd /usr/local/src
-
解压文件
tar -xf jdk-7u67-linux-x64.tar.gz
-
设置权限
chown -R root:root ./
-
移动文件至/usr/local/(可根据自己的需求移动到响应的目录即可,该操作非必要操作)
mv jdk1.7.0_67 /usr/local/
该操作将文件移动至/usr/local/,并将文件夹名称更换为jdk1.7.0_67
-
添加环境变量
-
进入配置文件
vi /etc/profile
-
在文件末尾添加以下配置:
export JAVA_HOME=/usr/local/jdk1.7.0_67 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_HMOE为解压后的路径,如果移动过,就填写移动后的路径
-
-
环境变量生效
source /etc/profile
-
修改java.security
使tomcat启动不那么慢(几分钟–十几分钟)
cd /usr/local/jdk1.7.0_67/jre/lib/security
vim java.security修改
securerandom.source=file:/dev/urandom
为
securerandom.soure=file:/dev/./urandom
安装Nginx
方法一:通过自行下载依赖库安装(测试成功)
-
资源下载
-
安装c++依赖库
yum install -y gcc-c++
-
下载依赖文件压缩包
cd /usr/local/src/ wget http://nginx.org/download/nginx-1.12.1.tar.gz wget http://www.openssl.org/source/openssl-1.1.0f.tar.gz wget http://zlib.NET/zlib-1.2.11.tar.gz wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz
如果以上的下载操作出现问题,可以戳此下载,再通过FTP的形式上传至/usr/local/src/目录下
-
-
解压资源
cd /usr/local/src/ tar -xf zlib-1.2.11.tar.gz tar -xf openssl-1.1.0f.tar.gz tar -xf pcre-8.40.tar.gz tar -xf nginx-1.12.1.tar.gz
-
设置权限
chown -R root:root ./
-
编译安装
-
安装zlib
cd /usr/local/src/zlib-1.2.11/ ./configure make && make install
-
安装openssl(用于配置ssl证书,本人在测试的时候,这一步无法正常安装,使用yun的方式安装的,详细操作请参考方法二)
cd /usr/local/src/openssl-1.1.0f/ ./config make && make install
-
安装pcre
cd /usr/local/src/pcre-8.40/ ./configure make && make install
-
安装nginx
cd /usr/local/src/nginx-1.12.1/ ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre=/usr/local/src/pcre-8.40 --with-zlib=/usr/local/src/zlib-1.2.11 --with-openssl=/usr/local/src/openssl-1.1.0f make && make install
注:以上为自行通过安装包安装,在安装nginx的时候务必要注意安装的对应路径
-
方法二:通过系统自带安装包安装
-
查看gcc相关的安装包
yum list gcc*
-
安装依赖包
yum install -y gcc-c++ yum install -y openssl openssl-devel yum install -y zlib zlib-devel yum install -y pcre pcre-devel
-
下载nginx
cd /usr/local/src/ wget http://nginx.org/download/nginx-1.12.1.tar.gz
可以戳此下载,再通过FTP的形式上传至/usr/local/src/目录下
-
安装nginx
cd /usr/local/src/ tar -xf nginx-1.12.1.tar.gz cd /nginx-1.12.1 ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module make && make install
以下操作是基于方法一和方法二安装之后的公共操作
-
修改配置文件
cd /usr/local/nginx/-
查看版本
sbin/nginx -v
-
检查正确性
/sbin/nginx -t
-
修改/conf/nginx.conf文件
打开pid和error_log的注释,设置worker_processes(一般这个参数要和操作系统的CPU内核数成倍数),user 默认的nobody根据情况修改。 -
创建nginx运行使用的用户
www :/usr/sbin/groupadd www和/usr/sbin/useradd -g www www -
建立映射
ln -s sbin/nginx /usr/bin
-
修改文件拥有者
chown -R www:www *_temp
-
-
基础命令
cd /usr/local/nginx/
-
启动
sbin/nginx
-
停止
sbin/nginx -s stop
-
重启(建议用reload)
sbin/nginx -s reopen
-
修改nginx.conf后重新加载配置
sbin/nginx -s reload
-
-
配置开启自启动
-
添加配置
vi /etc/init.d/nginx
在文件中添加以下代码并保存#!/bin/bash # # chkconfig: - 85 15 # description: Nginx is a World Wide Web server. # processname: nginx nginx=/usr/local/nginx/sbin/nginx conf=/usr/local/nginx/conf/nginx.conf case $1 in start) echo -n "Starting Nginx" $nginx echo " done" ;; stop) echo -n "Stopping Nginx" $nginx -s stop echo " done" ;; test) $nginx -t -c $conf ;; reload) echo -n "Reloading Nginx" $nginx -s reload echo " done" ;; restart) sh $0 stop sh $0 start ;; show) ps -aux|grep nginx ;; *) echo -n "Usage: $0 {start|restart|reload|stop|test|show}" ;; esac
-
测试脚本是否可用
cd /etc/init.d sh nginx start
出现下图,说明脚本无问题
-
更改配置文件nginx的权限
chmod 755 /etc/init.d/nginx
-
设置开机自启动
chkconfig nginx on
-
Tomcat安装(包含多个tomcat的配置说明)
-
下载安装包
apache-tomcat-7.0.57.tar.gz
下载完成之后通过FTP工具上传至/usr/local/src -
解压并安装
如果需要安装多个tomcat,按如下操作,为了便于区分,我们将文件夹带上端口号-
第一个tomcat,端口定为8080
tar -xf apache-tomcat-7.0.57.tar.gz mv apache-tomcat-7.0.57 /usr/local/tomcat/apache-tomcat-7.0.57_8080
-
第二个tomcat,端口定为8086
tar -xf apache-tomcat-7.0.57.tar.gz mv apache-tomcat-7.0.57 /usr/local/tomcat/apache-tomcat-7.0.57_8086
注:更多个以此类推
-
-
修改各个tomcat下server.xml中的端口
cd /usr/local/tomcat vim apache-tomcat-7.0.57_8080/conf/server.xml vim apache-tomcat-7.0.57_8086/conf/server.xml
将各个server.xml选的端口修改为各自的端口
注:更多个以此类推配置 -
编辑系统环境变量
vi /etc/profile- 添加8080端口的配置
export CATALINA_BASE_8080=/usr/local/tkb/apache-tomcat-7.0.57_8080 export CATALINA_HOME_8080=/usr/local/tkb/apache-tomcat-7.0.57_8080 export TOMCAT_HOME_8080=/usr/local/tkb/apache-tomcat-7.0.57_8080
- 添加8086端口的配置
注:多个以此类推配置export CATALINA_BASE_8086=/usr/local/tkb/apache-tomcat-7.0.57_8086 export CATALINA_HOME_8086=/usr/local/tkb/apache-tomcat-7.0.57_8086 export TOMCAT_HOME_8086=/usr/local/tkb/apache-tomcat-7.0.57_8086
- 重新加载生效配置
source /etc/profile
- 添加8080端口的配置
-
编辑catalina.sh 文件
编辑catalina.sh 文件,关联环境变量cd /usr/local/tomcat
-
配置8080端口的tomcat
vim apache-tomcat-7.0.57_8080/bin/catalina.sh
在 # OS specific support. $var must be set to either true or false.下面增加如下代码export CATALINA_BASE=$CATALINA_BASE_8080 export CATALINA_HOME=$CATALINA_HOME_8080
-
配置8086端口的tomcat
vim apache-tomcat-7.0.57_8086/bin/catalina.sh
在 # OS specific support. $var must be set to either true or false.下面增加如下代码export CATALINA_BASE=$CATALINA_BASE_8086 export CATALINA_HOME=$CATALINA_HOME_8086
注:多个以此类推配置
-
-
启动tomcat
-
启动8080端口tomcat
cd /usr/local/tomcat/apache-tomcat-7.0.57_8080/bin sh startup.sh
-
启动8086端口tomcat
cd /usr/local/tomcat/apache-tomcat-7.0.57_8086/bin sh startup.sh
注:多个以此类推启动
-
MySQL安装
如果需要下载MySQL或者防止有参与文件,印象后续的操作,可参考以下博客:http://blog.csdn.net/typa01_kk/article/details/49057073
-
软件资源及安装前准备
-
MySQL资源下载
官网下载
云盘下载mysql_5.6.36版本
下载成功之后通过FTP将资源上传至/usr/local/src目录下 -
解压资源
cd /usr/local/src tar -xf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql cd /usr/local/mysql
-
添加系统mysql组和mysql用户
groupadd mysql useradd -r -g mysql mysql
-
修改当前目录拥有者为mysql用户
cd /usr/local/mysql chown -R mysql:mysql ./
-
安装数据库
cd /usr/local/mysql ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/mysql.pid
- 错误1
- 错误描述
如果报错FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper - 解决方案,执行以下指令
yum install -y autoconf
- 错误描述
- 错误2
- 错误描述
如果报错error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory - 解决方案,执行以下指令,安装依赖包
yum install libaio*
- 错误描述
- 错误1
-
修改目录权限
- 修改目录拥有者为root用户
cd /usr/local/mysql chown -R root:root ./
- 修改当前data目录拥有者为mysql用户
cd /usr/local/mysql chown -R mysql:mysql data
- 修改目录拥有者为root用户
-
创建日志文件夹、日志文件、socket通讯文件夹
- log日志
日志文件:mysql的运行时日志记录的地方,可以通过错误信息方便快速找到问题点cd /usr/local/mysql mkdir log chown -R mysql:mysql log cd log touch mysql.log
- 通讯文件
Mysql客户端和服务器端在本机的通信方式,该文件所在目录必须双方都有权限可以访问到,而且服务器在启动时需要写该文件,所以需要授权mysql,文件mysql.sock再启动mysql服务的时候生成cd /usr/local/mysql mkdir socket/ chown -R mysql:mysql socket
- log日志
-
配置文件修改
-
my.cnf配置
vi /usr/local/mysql/my.cnf
修改配置以下内容#对应安装数据库时的路径 #修改 datadir = /usr/local/mysql/data #修改 basedir = /usr/local/mysql/ #修改 socket = /usr/local/mysql/socket/mysql.sock port = 3306 server_id = mysql #编码格式 character-set-server=utf8 #查询表名不区分大小写 lower_case_table_names=1 # 启用主从复制 log-bin=mysql-bin #启动函数 log-bin-trust-function-creators=1 event_scheduler=ON skip-name-resolve sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES symbolic-links=0
-
配置mysql.server
vi /usr/local/mysql/support-files/mysql.server#对应安装数据库时的路径 #修改 basedir = /usr/local/mysql/ #修改 datadir = /usr/local/mysql/data #修改 mysqld_pid_file_path =/usr/local/mysql/data/mysql.pid
-
配置mysqld_safe
vi /usr/local/mysql/bin/mysqld_safe#对应安装数据库时的路径 #修改 pid_file=/usr/local/mysql/data/mysql.pid #修改 err_log=/usr/local/mysql/log/mysql.log
-
-
建立映射关系
cp /usr/local/mysql/my.cnf /etc/ cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
注:准确的位置是/etc/rc.d/init.d/mysql,由于这里这里有一个/etc/init.d到/etc/rc.d/init.d的映射
-
赋予可执行权限
chmod +x /etc/init.d/mysql
-
添加服务
chkconfig --add mysql
-
显示服务列表(2,3,4,5是on表示ok)
chkconfig --list
-
启动服务
service mysql start
注:这时会生成mysql.sock文件
-
建立映射
-
映射mysql命令,用户登陆mysql数据库
ln -s /usr/local/mysql/bin/mysql /usr/bin
-
映射sock文件
ln -s /usr/local/mysql/socket/mysql.sock /tmp/mysql.sock
-
-
初始化用户及添加基础信息
-
登录root账户
mysql -u root -p
注:这条命令需要输入密码,第一次进入默认root密码为空,直接回车即可,修改之后即用新的密码登录即可
-
修改root密码
set password=password('root');
-
创建用户
create user 'lupf'@'%' identified by '123456789';
注:‘localhost’ 本地登陆,’%'为不限制登录IP
-
创建数据库并授权
create database testdb default charset utf8 collate utf8_general_ci; grant all privileges on testdb.* to 'lupf'@'%' identified by '123456789';
-
刷新权限
flush privileges;
-
查看当前的所有数据库用户
select host,user,password from mysql.user;
-
查看当前所有的数据库
show databases;
-
-
可视化工具
window下载Navicat可视化工具,根据上面的,其中包含了破解工具,直接运行破解工具即可完成破解
Redis安装
-
资源下载
cd /usr/local/src
wget http://download.redis.io/releases/redis-4.0.1.tar.gz
或者戳次下载4.0.1版本,通过ftp的方式上传至/usr/local/src -
解压并安装
tar -xzf redis-4.0.1.tar.gz mv redis-4.0.1 /usr/local/ cd /usr/local/redis-4.0.1 make && make install
-
修改配置文件
-
编辑redis_init_script
vi utils/redis_init_script
在第二行增加下面注释#!/bin/sh # chkconfig: 2345 80 90 # description: redis Start and Stop # 解释下面各行的意思 REDISPORT=6379 #端口 EXEC=/usr/local/bin/redis-server #服务端路径 CLIEXEC=/usr/local/bin/redis-cli #客户端路径 PIDFILE=/var/run/redis_${REDISPORT}.pid #在启动的时候,redis.conf配了生成路径 CONF="/etc/redis/${REDISPORT}.conf" #就是redis.conf,但是需要修改文件名
-
复制服务端和客户端到上面的路径下
cp src/redis-server /usr/local/bin cp src/redis-cli /usr/local/bin
注:安装完之后,上面对应的文件夹下会包含相应的客户端、服务端的信息,如果没有的话,按以上的指令拷贝到响应的位置。
-
建立快捷命令
cp /usr/local/redis-4.0.1/utils/redis_init_script /etc/init.d/redis
-
设置权限
chmod +x /etc/init.d/redis
-
-
编辑redis.conf
-
创建log日志文件夹及数据持久化文件夹
mkdir /usr/local/redis-4.0.1/logs mkdir /usr/local/redis-4.0.1/data/redisData
-
修改日志
vim /usr/local/redis-4.0.1/redis.conf
修改以下对应的信息daemonize yes #后台运行 pidfile /var/run/redis_6379.pid #启动自动生成pid路径,对应上面路径 logfile "/usr/local/redis-4.0.1/logs/redis.log" #日志生成路径 dir /usr/local/redis-4.0.1/data/redisData #持久化文件路径
-
-
配置redis自启动
-
拷贝配置文件至/etc目录下
mkdir /etc/redis cp /usr/local/redis-4.0.1/redis.conf /etc/redis/6379.conf
-
添加服务项
cd /etc/redis chkconfig --add redis
-
设置开机启动
chkconfig redis on
-
-
启动和关闭服务命令
service redis start service redis stop
-
redis测试
cd /usr/local/bin redis-cli set test 1 get test
设置linux系统的编码格式
-
查看命令
locale localedef -c -f UTF-8 -i zh_CN zh_CN.utf8 export LC_ALL=zh_CN.utf8
-
添加配置
vim /etc/sysconfig/i18n
添加以下配置LANG=zh_CN.UTF-8 LC_ALL=zh_CN.UTF-8