搭建服务器之前的准备
云服务器(我用的百度云服务器CentOS / 7.2 x86_64 (64bit)系统),mysql数据库管理系统(如果没有云数据库,需要在服务器中自行安装,我安装的是mysql 5.7 64位的),jdk1.8的安装包,tomcat8安装包,工具xshell5+xftp5,项目导出的war包。
百度下载地址是:https://pan.baidu.com/s/1g27DC-uUAo7RP4irTICJlw 注意安装mysql请参考:https://www.cnblogs.com/ghzjm/p/9542469.html 还有安装xshell5和xftp5时选择个人,这样就不需要激活。
环境部署
1.先安装jdk和tomcat
打开xshell,输入ip和用户名和密码连接上去,再点击文件传输,会自动打开xftp,在usr下新建一个java文件夹和tomcat文件夹,将安装包传输到对应目录下。 当然了可以使用wget命令或者其他方式进行下载不过多介绍
安装jdk
1)在linux中使用命令到jdk压缩包目录下,我的是 cd /usr/java,使用命令 tar zxvf jdk-8u131-linux-x64.tar.gz 解压安装包
或者直接使用 tar zxvf jdk-8u131-linux-x64.tar.gz -C /usr/java 后面-C接的是解压到的指定路径
2)配置jdk环境变量
输入命令 vi /etc/profile
输入i编辑状态,在最后面加上
export JAVA_HOME=/usr/java/jdk1.8.0_101 export JRE_HOME=/usr/java/jdk1.8.0_101/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
输入ESC退出编辑,再输入 :wq 退出保存
3)再输入source /etc/profile
验证安装是否成功:java -version
如果显示版本信息说明就可以了
或者输入:javac
看看是否会提示命令信息
安装tomcat
1)解压:
输入tar zxvf apache-tomcat-8.5.16.tar.gz -C /usr/tomcat
2)配置环境变量
vi /etc/profile
在文件最后加上以下配置
export CATALINA_HOME=/usr/tomcat/apache-tomcat-8.0.51
保存退出后执行下面的命令,使其生效
source /etc/profile
上面的部分就已经安装好tomcat了,可以使用ip+:8080访问到tomcat页面,下一部分是把tomcat服务注册,好处
是可以在任何位置通过 service tomcat start启动tomcat服务,最后也提到了tomcat日志打印乱码的解决方案
3)注册服务
切换到tomcat /bin下
打开vi setclasspath.sh
添加
export JAVA_HOME=/usr/java/jdk1.8.0_101 export JRE_HOME=/usr/java/jdk1.8.0_101/jre
4)编辑配置:
vi catalina.sh
加入:
CATALINA_HOME=/usr/tomcat/apache-tomcat-8.0.51 JAVA_HOME=/usr/java/jdk1.8.0_101 JRE_HOME=/usr/java/jdk1.8.0_101/jre
保存退出,并复制一下
cp catalina.sh /etc/init.d/tomcat
然后就可以使用全局命令了:
相关命令
启动service tomcat start
停止service tomcat stop
状态service tomcat status
版本信息service tomcat version
启动tomcat,成功之后
可以通过IP+:8080访问到主页,为了方便,我们把端口号改成80,直接输入IP或域名就可以访问主页了。
也很简单,打开tomcat/conf/server.xml然后找到
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
如果要开启远程web管理界面,在tomcat7中只需要在tomcat-users.xml配置文件中在tomcat-users节点下添加,即可使用账户密码登录tomcat,其他版本配置类似,高版本配置的东西需要繁琐一点。
<role rolename="admin-gui"/> <role rolename="manager-gui"/> <user username="admin" password="12345" roles=" admin-gui , manager-gui "/>
将8080改成80即可
当然如果觉得tomcat启动慢,可以装一个插件
# yum -y install rng-tools //安装rngd服务(熵服务,增大熵池) # systemctl start rngd //启动服务 # systemctl enable rngd //设置开机自启动
tomcat8解决日志打印乱码问题:
首先排除linux自身编码格式原因
输入 echo $LANG可以查看当前使用的系统语言
查看是否有中文语言包可以在终端输入 locale命令,如有zh cn 表示已经安装了中文语言
如果没有中文语言呢可以通过网上下载安装中文语言包yum groupinstall chinese-support(不能联网的通过其他电脑下载,上传上去吧)
修改系统默认语言如Vi /etc/sysconfig/i18n
修改系统编码之后还是不行就需要查看xShell中的编码是否为utf-8
如果还是不行就需要修改Tomcat的bin目录下的catalina.sh文件
if [ -z "$LOGGING_MANAGER" ]; then JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager " else JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER" fi 修改为以下: if [ -z "$LOGGING_MANAGER" ]; then JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8" else JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8" fi
亲测可用,或者
在catalina.sh里加上 JAVA_OPTS="-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8",然后重启即可(有兴趣的可以尝试一下)
mysql数据库安装及配置
这个稍微复杂一点,CentOS 7以上就没有自带安装mysql了。
1安装
1. 安装rpm包 rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
2. 查看可用资源 yum repolist enabled | grep "mysql.*-community.*"
3. 安装:yum -y install mysql-community-server
常用命令:
启动:systemctl start mysqld
停止:systemctl stop mysqld
重启:systemctl restart mysqld
退出:exit或者quit
状态信息:status
2修改密码
初次安装mysql,root账户没有密码。
1.然后用空密码方式使用root用户登录 MySQL;
mysql -u root;
2.修改密码,5.7修改密码的口令不一样且至少包含一个大写字母、一个小写字母、一个特殊符号、一个数字,密码长度至少为8个字符。
mysql> set password for 'root'@'localhost' =password('password');
修改密码后不需要重启数据库即可生效
3.就可以使用用户名密码的方式登录了
3开启远程连接
一般情况需要使用远程连接的功能
1.服务器开放3306端口;
2.数据库授权
授权:grant all privileges on *.* to root@'%' identified by '登录密码';
3.测试,使用navicat premium工具连接
安装redis
安装包下载地址:https://redis.io/download
常用命令 启动服务端:redis-server & 或者service redis start 客户端:redis-cli 停止服务:shutdown ctrl+c跳出
步骤
1.解压,安装
2.启动
3.测试
4.配置
–开机启动:
cp /usr/java/redis/redis-4.0.1/utils/redis_init_script /etc/init.d/redis
vi /etc/init.d/redis
在第二行加入 # chkconfig: 2345 80 90
并修改这两处
EXEC=/usr/java/redis/redis-4.0.1/src/redis-server
CLIEXEC=/usr/java/redis/redis-4.0.1/src/redis-cli
退出并保存
–把配置文件复制过来
mkdir /etc/redis
cp /usr/java/redis/redis-4.0.1/redis.conf /etc/redis/6379.conf
–修改6379.conf
daemonize no //修改为yes 使redis以守护进程模式启动
bind 0.0.0.0 ::1 //可以远程连接
protected-mode no
–添加服务
chkconfig –add redis
–设置开机启动
chkconfig –level 35 redis on
–service方式启动redis服务
service redis start
service redis stop
–配置环境变量
vi /etc/profile
export PATH=PATH:PATH:JAVA_HOME/bin:/usr/java/redis/redis-4.0.1/src
–生效
source /etc/profile
–指定配置启动
redis-server /etc/redis/6379.conf
–使用java测试连接
import redis.clients.jedis.Jedis; public class TestRedis { static String address = "139.196.86.61" ; public static Jedis getRedis(){ Jedis jedis = new Jedis(address) ; return jedis ; } public static void main(String[] args){ Jedis j = TestRedis. getRedis() ; j.set( "hello", "world" ) ; String output = j.get( "hello") ; System. out.println(output) ; } }
会在控制台打印word;
安装nginx
centos平台编译环境使用如下指令(安装nginx之前)
1)安装make:
yum -y install gcc automake autoconf libtool make
2)安装g++:
yum install gcc gcc-c++
可以选择任何目录,本文选择 cd /usr/local/nginx
3)安装PCRE库
cd /usr/local/nginx wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz tar -zxvf pcre-8.37.tar.gz cd pcre-8.34 ./configure make make install
4)安装ZLIB库
cd /usr/local/nginx wget http://zlib.net/zlib-1.2.11.tar.gz tar -zxvf zlib-1.2.11.tar.gz cd zlib-1.2.11 ./configure make make install
5)安装openssl
cd /usr/local/nginx wget https://www.openssl.org/source/openssl-1.0.1t.tar.gz tar -zxvf openssl-1.0.1t.tar.gz
6)安装nginx
cd /usr/local/nginx wget http://nginx.org/download/nginx-1.1.10.tar.gz tar -zxvf nginx-1.1.10.tar.gz cd nginx-1.1.10 ./configure make make install
如果这里报错的话
重复第5)步或者
yum -y install openssl openssl-devel
nginx常用命令
#whereid nginx //查找自己的nginx安装在哪里 #ps -ef|grep nginx //查找nginx的进程是都启动 #cd usr/local/nginx/sbin #./nginx //启动nginx #cd /usr/local/nginx/sbin #./nginx -t //检查nginx.conf是否配置正确
nginx关闭
查询nginx主进程号
ps -ef | grep nginx
从容停止 kill -QUIT 主进程号
快速停止 kill -TERM 主进程号
强制停止 kill -9 nginx
若nginx.conf配置了pid文件路径,如果没有,则在logs目录下
kill -信号类型 '/usr/local/nginx/logs/nginx.pid'
这些就是我在学习服务器搭建这方面的一些心得,在这里分享给大家如果有什么问题可以在文章下面给出你宝贵的建议,我们将一起成长一起努力。
本篇博文借鉴:https://blog.csdn.net/qq_29423883/article/details/72465738