Linux环境下搭建javaweb服务器所需的工具的安装步骤及相关操作命令

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: 本文主要介绍Linux环境下搭建javaweb服务器所需的关键工具的按键及相关操作命令,其中关键工具包括lrzsz、JDK、nginx、tomcat、redis、ffmpeg、mysql、mqtt、zookeeper等

Linux运维工具安装:

  1. 安装lrzsz
     wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz #下载lrzsz安装包
     tar zxvf lrzsz-0.12.20.tar.gz && cd lrzsz-0.12.20 #解压并切换到lrzsz-0.12.20目录下面
     ./configure && make && make install #编译安装
     cd /usr/bin
     下面创建软链接,并命名为rz/sz:
     ln -s /usr/local/bin/lrz rz
     ln -s /usr/local/bin/lsz sz

yum命令安装
yum -y install lrzsz
使用:
  sz -y 下载
  rz -y 上传

  1. 安装JDK
     解压: tar -zxvf jdk-8u131-linux-x64.tar.gz
     修改环境变量:vim /etc/profile
     export JAVA_HOME=/usr/java/jdk1.8.0_131
     export JRE_HOME=JAVAHOME/jreexportCLASSPATH=.:{JAVA_HOME}/lib:JREHOME/lib:CLASSPATH
     export JAVA_PATH=JAVAHOME/bin:{JRE_HOME}/bin
     export PATH=PATH:{JAVA_PATH}
     让/etc/profile文件生效:source /etc/profile
     测试:java -version
  1. 安装nginx
     gcc 安装:yum install gcc-c++
     PCRE pcre-devel 安装:yum install -y pcre pcre-devel
     zlib 安装:yum install -y zlib zlib-devel
     OpenSSL 安装:yum install -y openssl openssl-devel
     安装wget:yum install wget(有,则忽略)
     wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
     解压:tar -zxvf nginx-1.12.0.tar.gz
     cd nginx-1.12.0
     ./configure \
     --prefix=/usr/local/nginx \
     --conf-path=/usr/local/nginx/conf/nginx.conf \
     --pid-path=/usr/local/nginx/conf/nginx.pid \
     --lock-path=/var/lock/nginx.lock \
     --error-log-path=/var/log/nginx/error.log \
     --http-log-path=/var/log/nginx/access.log \
     --with-http_gzip_static_module \
     --http-client-body-temp-path=/var/temp/nginx/client \
     --http-proxy-temp-path=/var/temp/nginx/proxy \
     --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
     --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
     --http-scgi-temp-path=/var/temp/nginx/scgi
     编译安装:make & make install
     启动、停止nginx:
     cd /usr/local/nginx/sbin/
     ./nginx
     ./nginx -s stop
     ./nginx -s quit
     ./nginx -s reload

 启动时报80端口被占用:
解决办法:1、安装net-tool 包:yum install net-tools

 查询nginx进程:ps aux|grep nginx

  1. 安装tomcat
     解压:tar -xzvf apache-tomcat-9.0.0.M9.tar.gz
     配置环境变量:
     export TOMCAT_HOME=/home/soft/tomcat9
     export PATH=PATH:JAVA_HOME/bin:$CATALINA_HOME/bin

  2. 安装redis
     解压:tar -zxvf redis-5.0.7.tar.gz
     cd redis-5.0.7
     make
     cd src && make install
     启动redies: service redis start
     停止redies: service redis stop
     查看redies状态:service redis status
     查看进程:ps -ef | grep redis
     设置redis为开机自动启动:chkconfig redis on

 进入本机redis:redis-cli
 列出所有key:keys *

 编辑redies.conf文件
 vim /etc/redis.conf
port 6379 //设置端口号
repuirepass zkfr2017 //设置密码
//运行远程连接
注释bind 127.0.0.1
protected-mode no

 service redis_6379 start
 ./redis-server /home/server/redis-5.0.5/redis.conf //使用配置文件启动
redis-5.0.5/src/ redis-server redis-cli
 使用端口登录:redis-cli -h 127.0.0.1 -p 6379
 停止redies: shutdown
 查看进程:ps -ef | grep redis

1、检测是否有安装redis-cli和redis-server;
[root@localhost bin]# whereis redis-cli
redis-cli: /usr/bin/redis-cli

[root@localhost bin]# whereis redis-server
redis-server: /usr/bin/redis-server

  1. 安装ffmpeg
    http://ffmpeg.org/ 官网
     tar -xjvf ffmpeg-3.3.1.tar.bz2
     cd ffmpeg-3.3.1/
     ./configure --enable-shared --prefix=/monchickey/ffmpeg
     make
     make install
     查看版本:cd bin
     ./ffmpeg -version

  2. 安装mysql
     按照依赖关系依次安装rpm包 依赖关系依次为common→libs→client→server
    rpm -ivh mysql-community-common-5.7.22-1.el7.x86_64.rpm
    rpm -ivh mysql-community-libs-5.7.22-1.el7.x86_64.rpm
    rpm -ivh mysql-community-client-5.7.22-1.el7.x86_64.rpm
    rpm -ivh mysql-community-server-5.7.22-1.el7.x86_64.rpm
    rpm -qpl mysql-community-server-5.7.22-1.el7.x86_64.rpm

 上面各个包安装完毕后,在 /etc/下生成 my.cnf 文件 和 my.cnf.d 文件夹
 在/var/lib/下生成三个文件夹:mysql、mysql-file、mysql-keyring
 在/var/log/ 下生成 mysqld.log 文件
 在/var/run/ 下生成 mysqld 目录

 systemctl start mysqld.service 启动mysql
 systemctl status mysqld.service 查看mysql状态
 systemctl stop mysqld.service 关闭mysql

 查看mysql进程 ps -ef|grep mysql
 查看3306端口 netstat -anop|grep 3306

 grep 'temporary password' /var/log/mysqld.log 查看安装root密码
 修改密码:mysql -uroot –p 命令使用随机密码登录mysql
 set password for root@localhost=password('ZkFr@2017');

 设置root用户权限,允许mysql远程连接
 mysql> use mysql ;
 mysql> select user,host from user;
 mysql> show grants;
 mysql> update user set host='%' where user='root';
 mysql> flush privileges;刷新权限

 修改数据文件路径
 mv /var/lib/mysql /mnt/
 ln -s /mnt/mysql /var/lib/mysql
 vim /etc/my.cnf
 datadir=/mnt/mysql
 socket=/mnt/mysql/mysql.sock

 修改mysql.cnf文件:
~#~ For advice on how to change settings please see

http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[client]
default_character_set = utf8mb4

[mysql]
default_character_set = utf8mb4

[mysqld]
port=3308
character_set_client_handshake = FALSE
character_set_server = utf8mb4
collation_server = utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'

wait_timeout=2880000
interactive_timeout = 2880000
max_allowed_packet = 100M

Remove leading # and set to the amount of RAM for the most important data

cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.

innodb_buffer_pool_size = 128M

#

Remove leading # to turn on a very important data integrity option: logging

changes to the binary log between backups.

log_bin

#

Remove leading # to set options mainly useful for reporting servers.

The server defaults are faster for transactions and fast SELECTs.

Adjust sizes as needed, experiment to find the optimal values.

join_buffer_size = 128M

sort_buffer_size = 2M

read_rnd_buffer_size = 2M

datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

 查看mysql端口号:netstat -anop|grep 3306

 登录mysql:mysql -uroot –p
 mysql> show global variables like ‘port’;

阿里云安装:
 执行如下命令,更新YUM源。
 rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
 2. 执行如下命令,安装MySQL:yum -y install mysql-community-server –nogpgcheck
 查看MySQL版本号:mysql –V
 启动MySQL服务:systemctl start mysqld
 设置MySQL服务开机自启动:systemctl enable mysqld
 查看/var/log/mysqld.log文件,获取root用户的初始密码。
 grep 'temporary password' /var/log/mysqld.log
 使用root用户登录数据库:mysql -uroot –p
 修改MySQL的root用户的初始密码:
 set global validate_password_policy=0; #修改密码安全策略为低(只校验密码长度,至少8位)。
 ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';
 授予root用户远程管理权限:
 GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY '12345678';
 test 的数据库备份到当前目录的 test.sql:mysqldump -uroot -p test >test.sql
 test.sql 导入数据库:mysql -uroot -p -Dtest<test.sql
 还有一种导入方法:输入命令:mysql -uroot -p12345678 ,进入 MySQL 数据库。输入 use test; ,连接数据库 test ,输入 source /root/test.sql; ,将 test.sql 导入数据库 test ,全部出现 Query OK ,则表示数据库导入成功

MySQL安全性配置。
执行如下命令,对MySQL进行安全性配置:mysql_secure_installation

  1. 安装mqtt
     wget https://www.emqx.io/downloads/broker/v3.2.1/emqx-centos7-v3.2.1.zip
     启动命令:./bin/emqx start
     关闭命令:./bin/emqx stop
     控制台调试模式启动,检查 EMQ 是否可正常启动
     ./bin/emqttd console
     默认的用户名/密码为admin/public
     修改默认配置端口
     配置文件为/emqtt/etc/emq.conf
     1.修改mqtt External TCP端口,该端口默认为1883,为mqtt主要连接端口
     2.修改mqtt Internal TCP端口,该端口默认为11883
     3.修改mqtt External SSL端口,该端口默认为8883
     4.修改mqtt WebSocket 端口,
     5.修改mqtt WebSocket SSL端口配置文件为/emqtt/etc/emq.conf
     6.修改mqtt API 端口配置文件为/emqtt/etc/emq.conf

 配置文件为/emqtt/etc/plugins/emq_dashboard.conf
 修改mqtt Dashboard 管理控制台端口

  1. 安装zookeeper
     wget
     tar -zxcf /home/install/apache-zookeeper-3.5.8-bin.tar.gz -C /usr/local/
     mv /usr/local/apache-zookeeper-3.5.8-bin /usr/local/zookeeper
     拷贝样本配置为主配置
     进入配置目录,赋值拷贝样本文件
     cd /usr/local/zookeeper/conf/
     cp zoo_sample.cfg zoo.cfg

 创建数据存储目录与日志目录
 mkdir /usr/local/zookeeper/dataDir
 mkdir /usr/local/zookeeper/dataLogDir

 修改数据存储和日志目录
 vim /usr/local/zookeeper/conf/zoo.cfg

配置zookeeper环境变量
 vim /etc/profile
 ZOOKEEPER_HOME=/usr/local/zookeeper
 PATH=PATH:ZOOKEEPER_HOME/bin
 export PATH ZOOKEEPER_HOME PATH
 source /etc/profile

 启动:/usr/local/zookeeper/bin/zkServer.sh start
 连接:/usr/local/zookeeper/bin/zkCli.sh

开机启动:
 (1)编辑zookeeper.service文件:vim /usr/lib/systemd/system/zookeeper.service
[Unit]
Description=zookeeper
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/zookeeper/bin/zkServer.sh start
ExecReload=/usr/local/zookeeper/bin/zkServer.sh restart
ExecStop=/usr/local/zookeeper/bin/zkServer.sh stop
[Install]
WantedBy=multi-user.target
 (2)zookeeper.service文件生效:systemctl daemon-reload
 (3)设置开机启动:systemctl enabled zookeeper.service
 (4)启动:systemctl start zookeeper.service
 (5)关闭:systemctl stop zookeeper.service
 (6)重启:systemctl restart zookeeper.service
 (7)查看是否开机启动:systemctl is-enabled zookeeper.service
 (8)systemctl取消开机启动redis:systemctl disable zookeeper.service

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
打赏
0
0
1
0
4
分享
相关文章
|
22天前
|
Websoft9:为开发者打造的高效 Linux 服务器面板
Websoft9 是一款以开源应用部署与管理为核心的服务器面板,采用“环境即服务”模式。它通过运行环境标准化、自动化配置、安全融合和资源管理四个方面实现平台与环境的深度协同。支持多语言框架预集成、云原生组件整合,提供 200+ 应用模板一键部署,并具备全流程安全防护和统一资源监控能力,助力开发者高效管理和扩展应用环境。
48 0
|
7天前
|
linux命令详细说明以及案例
本文介绍了常用的 Linux 命令及其详细说明和示例,包括:`ls`(列出目录内容)、`cd`(更改目录)、`rm` 和 `mv`(删除与移动文件)、`grep`(搜索文本)、`cat`(显示文件内容)以及 `chmod`(更改文件权限)。每个命令均配有功能描述、选项说明及实际案例,帮助用户更好地掌握 Linux 命令的使用方法。
89 56
|
8天前
|
Linux系统管理:服务器时间与网络时间同步技巧。
以上就是在Linux服务器上设置时间同步的方式。然而,要正确运用这些知识,需要理解其背后的工作原理:服务器根据网络中的其他机器的时间进行校对,逐步地精确自己的系统时间,就像一只犹豫不决的啮齿动物,通过观察其他啮齿动物的行为,逐渐确定自己的行为逻辑,既简单,又有趣。最后希望这个过程既能给你带来乐趣,也能提高你作为系统管理员的专业素养。
47 20
在阿里云服务器上如何搭建网站,网址怎么建站图文教程详解案例及步骤.
做好一个网站不仅需要我们对站点装修及内容发布,也需要我们学会对网站运营,如进行站长推送,将我们内容快速推送到各大搜索平台,有效的让用户能搜索到我们内容,或者需要在谷歌推广就必须对网站添加SSL证书,这样搜索域名的时候搜索框不会出现<不安全>字符在域名前面,以及运行网站要懂运维,出现BUG时要去及时解决查找原因.自始至终自身要不断学习网络相关知识,遇到问题方能迎刃而解. 本文结束,如还有不懂的同学可联系作者,倾力而为,祝您成功!
107 71
|
10天前
|
Linux基础:文件和目录类命令分析。
总的来说,这些基础命令,像是Linux中藏匿的小矮人,每一次我们使用他们,他们就把我们的指令准确的传递给Linux,让我们的指令变为现实。所以,现在就开始你的Linux之旅,挥动你的命令之剑,探索这个充满神秘而又奇妙的世界吧!
55 19
|
24天前
|
Linux 常用文件查看命令
`cat` 命令用于连接文件并打印到标准输出,适用于快速查看和合并文本文件内容。常用示例包括:`cat file1.txt` 查看单个文件,`cat file1.txt file2.txt` 合并多个文件,`cat &gt; filename` 创建新文件,`cat &gt;&gt; filename` 追加内容。`more` 和 `less` 命令用于分页查看文件,`tail` 命令则用于查看文件末尾内容,支持实时追踪日志更新,如 `tail -f file.log`。
47 5
Linux 常用文件查看命令
|
7天前
|
linux常用命令详细说明以及案例
本文介绍了Linux中几个常用的命令及其用法,包括:`ls`(列出目录内容)、`cd`(切换目录)、`mkdir`(创建目录)、`rm -p`(删除目录及内容)和`mv`(移动或重命名文件/目录)。每个命令都配有详细说明、语法格式、常见选项及实用案例,帮助用户更好地理解和使用这些基础命令。内容源自[linux常用命令详细说明以及案例](https://linux.ciilii.com/show/news-285.html)。
分享一个纯净无广、原版操作系统、开发人员工具、服务器等资源免费下载的网站
分享一个纯净无广、原版操作系统、开发人员工具、服务器等资源免费下载的网站
虚拟化数据恢复—VMware虚拟化环境下重装系统导致服务器崩溃的数据恢复
VMware虚拟化平台 vmfs文件系统 工作人员误操作重装操作系统,服务器崩溃。 重装系统会导致文件系统元文件被覆盖。要恢复数据,必须找到&提取重装系统前的文件系统残留信息,通过提取出来的元文件信息恢复虚拟磁盘。通过拼接虚拟磁盘来恢复服务器数据。
42 13
阿里云特惠云服务器99元与199元配置与性能和适用场景解析:高性价比之选
2025年,阿里云长效特惠活动继续推出两款极具吸引力的特惠云服务器套餐:99元1年的经济型e实例2核2G云服务器和199元1年的通用算力型u1实例2核4G云服务器。这两款云服务器不仅价格亲民,而且性能稳定可靠,为入门级用户和普通企业级用户提供了理想的选择。本文将对这两款云服务器进行深度剖析,包括配置介绍、实例规格、使用场景、性能表现以及购买策略等方面,帮助用户更好地了解这两款云服务器,以供参考和选择。

热门文章

最新文章