linux项目部署:nginx+tomcat+redis+mysql基础命令

这篇博客详细介绍了如何在Linux环境中部署项目,包括安装和配置Nginx、MySQL数据库运行SQL、设置Redis以及调整Tomcat的配置。涉及了Nginx的启动与配置检查、MySQL的错误解决方案、Redis的远程访问配置以及Tomcat的部署问题。
摘要由CSDN通过智能技术生成


linux服务器部署,项目 nginx+tomcat+redis+mysql。 记录简单的搭建过程和部署出现的问题。

安装nginx

// 检测nginx 是否运行启动
ps -ef | grep nginx

root 15705 1 0 14:07 ? 00:00:00 nginx: master process ./nginx
nobody 15706 15705 0 14:07 ? 00:00:00 nginx: worker process
root 15940 15409 0 14:09 pts/0 00:00:00 grep --color=auto nginx

// 进入当前的进程,就能看到执行nginx的位置
cd /proc/15705

lrwxrwxrwx 1 root root 0 Nov 2 14:11 exe -> /usr/local/nginx/sbin/nginx*

// 安装nginx

-- 解压nginx : tar -zxvf nginx-1.14.2.tar.gz 
-- 进入解压后的目录:  cd nginx-1.14.2
-- 执行nginx要安装的位置:  ./configure --prefix=/usr/local/nginx-1.14.2
-- 在当前目录执行: make
-- 进入nginx 的安装目录(/usr/local/nginx-1.14.2),执行:mke install
-- 进入sbin 执行: ./nginx  启动
-- 进入conf目录配置nginx,默认80端口: 
-- 测试nginx能否访问成功,或者使用浏览器访问: curl localhost
--  /usr/local/nginx/sbin/nginx -t测试配置文件修改是否正常
--  重新加载配置 ./nginx -s reload

nginx 配置修改

upstream nodes {
server 127.0.0.1:8180;    //分发的地址
server 127.0.0.1:8181;
}
server {
        listen 80;
        server_name loclhost;
        proxy_set_header Host $host;
        location / {
            proxy_pass http://nodes;      // 反向代理
            root html;
            index index.html index.htm;
        }
}

参考:Linux下查看Nginx安装目录、版本号信息及当前运行的配置文件
Linux环境下Nginx的安装
linux下搭建nginx
Nginx学习系列三Nginx的启动、停止、修改配置文件后重启
Nginx服务器之负载均衡策略(6种)
Nginx 配置详解

mysql 数据库运行sql

问题1:
-- Mysql:The user specified as a definer ('xxx@'%') does not exist:
创建视图出现这个错误:视图没有权限, 
登陆mysql ,执行
mysql -u root -pChinacdc
mysql >grant all privileges on *.* to root@"%" identified by "Chinacdc"
mysql >flush privileges
先执行不需要依赖别的视图的视图,然后再执行其他视图。

问题2:
-- MySQL This function has none of DETERMINISTIC, NO SQL...错误1418 :
创建函数出现了,此问题
执行 SET GLOBAL log_bin_trust_function_creators = 1;
-- mysql linux 安装包下载地址:
http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.7/

问题3 :
-- mysql 表名大小写敏感导致的问题
出现错误:Table 'testdb.xxx' doesn't exist
设置 lower_case_table_names 为 1
show variables like '%lower_case_table_names%';   // 查看
-- 找到linux mysql 配置文件所在位置:  whereis  mysqld  结果: /usr/local/mysql/bin/mysqld
--查看mysql配置文件所在位置 : /usr/local/mysql/bin/mysqld --verbose --help |grep -A 1 'Default options'   结果: /etc/my.cnf /etc/mysql/my.cnf
-- 修改配置: vi  /etc/my.cnf   
-- 在[mysqld]节点下添加   lower_case_table_names=1  (0:大小写敏感;1:大小写不敏感)
-- 重启mysql 数据库: 
第一种方式 
service mysqld restart 
第二种方式 
 /etc/init.d/mysql stop 
/etc/init.d/mysql start

参考:Mysql:The user specified as a definer (‘xxx@’%’) does not exist的解决方案
MySQL This function has none of DETERMINISTIC, NO SQL…错误1418 的原因分析及解决方法 (转)
MySQL表名大小写敏感导致的问题
关于Linux安装mysql默认配置文件位置
Mysql Table doesn’t exist问题解决方式
linux下mysql 重启命令

redis

redis下载地址:https://redis.io/download
-- 检测redis 是否安装 : whereis redis-cli          结果: redis-cli: /usr/bin/redis-cli
     whereis redis-server   结果: redis-server: /usr/bin/redis-serve
--解压:tar xzf redis-5.0.5.tar.gz
--进入目录 cd redis-5.0.5
--安装 make
--进入目录,启动redis cd ./src/redis-server
-- 允许远程访问:
--配置redis.conf
    将 bind 127.0.0.1 使用#注释掉,改为# bind 127.0.0.1(bind配置的是允许连接的ip,默认只允许本机连接;若远程连接需注释掉,或改为0.0.0.0)
    将 protected-mode yes 改为 protected-mode no(3.2之后加入的新特性,目的是禁止公网访问redis cache,增强redis的安全性)
    将 requirepass foobared 注释去掉,foobared为密码,也可修改为别的值(可选,建议设置)
--  设置iptables规则,允许外部访问6379端口
    iptables -I INPUT 1 -p tcp -m state --state NEW -m tcp --dport 6379 -j ACCEPT
    临时生效,重启后失效。若想永久生效,请参考另一篇文章:http://www.cnblogs.com/jinjiyese153/p/8600855.html
-- 关闭redis 
      ./redis-cli  shutdown
-- 启动redis,并指定配置文件
  ./redis-server ../redis.conf
-- 测试远程连接访问
       ./redis-cli -h 120.0.0.2 

参考:查看linux上面是否有安装redis,redis启动
CentOS下配置redis允许远程连接
linux redis 远程访问
Linux下停止和启动redis

tomcat 配置

启动项目 logs/catlina.out 文件中提示: 
xxx.html  的资源添加到Web应用程序[/xxx]的缓存中,
因为在清除过期缓存条目后可用空间仍不足 - 请考虑增加缓存的最大空间。
在 /conf/context.xml 的 </Context>前添加以下内容(大小默认是1024,单位是KB):
<Resources cachingAllowed="true" cacheMaxSize="100000" />
配置项目访问路径为 /  访问  ,配置在 server.xml 中的 <HOST/> 标签中
<Context   path =“/”   docBase =“/projectName”   debug =“0”   reloadable =“true”  /> 
修改tomcat 配置: 修改 /bin/catlina.sh  在第一行加入
--------------------------------------------------------------------------------------------
JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 
    -server -Xms1024m -Xmx1024m 
    -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m 
    -XX:MaxPermSize=512m -XX:+DisableExplicitGC" 
---------------------------------------------------------------------------------------------
-Xms – 指定初始化时化的栈内存
-Xmx – 指定最大栈内存

参考:tomcat-9.0.20部署的问题
Linux scp命令
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值