常用Linux指令:Java/MySQL/Tomcat/Redis/Nginx运维指南

一、基础Linux指令

1. 文件与目录操作

rust 复制代码
ls -lh          # 查看文件详情(人类可读格式)
pwd             # 显示当前目录路径
cd /path        # 切换目录
mkdir dirname   # 创建目录
rm -rf dirname  # 强制删除目录
cp -r src dest  # 递归复制目录
mv old new      # 移动/重命名文件
find / -name "*.log"  # 查找文件
chmod 755 file  # 修改文件权限
chown user:group file # 修改文件所有者

2. 文本处理

复制代码
cat file        # 查看文件内容
head -n 10 file # 查看文件前10行
tail -f file    # 实时查看文件新增内容
grep "pattern" file # 搜索文本
sed -i 's/old/new/g' file # 替换文本
awk '{print $1}' file # 提取文本列
vim file        # 编辑文件

3. 系统监控

复制代码
top             # 实时系统监控
htop            # 增强版top(需安装)
free -h         # 查看内存使用
df -h           # 查看磁盘空间
du -sh dir      # 查看目录大小
ps -ef | grep java # 查看进程
netstat -tunlp  # 查看网络连接
lsof -i:8080    # 查看端口占用

二、Java相关指令

1. JDK管理

复制代码
java -version   # 查看Java版本
javac -version  # 查看编译器版本
update-alternatives --config java # 切换Java版本

2. JVM监控

复制代码
jps -l          # 查看Java进程
jstat -gcutil pid # 查看GC情况
jmap -heap pid  # 查看堆内存
jstack pid      # 获取线程堆栈
jcmd pid VM.flags # 查看JVM参数

3. Jar包管理

复制代码
nohup java -jar app.jar > log.out 2>&1 & # 后台运行jar包
kill -9 pid     # 强制终止Java进程

三、MySQL相关指令

1. 服务管理

复制代码
systemctl start mysql     # 启动MySQL
systemctl stop mysql      # 停止MySQL
systemctl restart mysql   # 重启MySQL
systemctl status mysql    # 查看状态

2. 数据库操作

复制代码
mysql -u root -p          # 登录MySQL
mysqldump -u root -p dbname > backup.sql # 备份数据库
mysql -u root -p dbname < backup.sql # 恢复数据库
mysqladmin -u root -p status # 查看MySQL状态

3. 性能监控

复制代码
show processlist;        # 查看当前连接(MySQL内)
show variables like '%max_connections%'; # 查看最大连接数
show global status like 'Threads_connected'; # 查看当前连接数

四、Tomcat相关指令

1. 服务管理

复制代码
./catalina.sh start      # 启动Tomcat
./catalina.sh stop       # 停止Tomcat
./catalina.sh restart    # 重启Tomcat
tail -f ../logs/catalina.out # 查看日志

2. 配置检查

复制代码
ps -ef | grep tomcat     # 查看Tomcat进程
lsof -i :8080            # 检查端口占用

3. 内存设置

复制代码
# 在catalina.sh中添加
export JAVA_OPTS="-Xms512m -Xmx1024m -XX:MaxPermSize=256m"

五、Redis相关指令

1. 服务管理

复制代码
redis-server /path/to/redis.conf # 启动Redis
redis-cli shutdown       # 关闭Redis
redis-cli ping           # 测试连接

2. 性能监控

复制代码
redis-cli info          # 查看Redis信息
redis-cli info memory   # 查看内存使用
redis-cli info clients  # 查看客户端连接
redis-cli --latency     # 测试延迟

3. 数据操作

复制代码
redis-cli keys "*"      # 查看所有键
redis-cli flushall      # 清空所有数据(慎用)
redis-cli bgrewriteaof  # 重写AOF文件

六、Nginx相关指令

1. 服务管理

复制代码
nginx                   # 启动Nginx
nginx -s stop           # 快速停止
nginx -s quit           # 优雅停止
nginx -s reload         # 重载配置
nginx -t                # 测试配置

2. 日志分析

复制代码
tail -f /var/log/nginx/access.log # 实时访问日志
awk '{print $1}' access.log | sort | uniq -c | sort -nr # 统计IP访问

3. 性能调优

复制代码
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' # 查看连接状态
ab -n 1000 -c 100 http://test.com/ # 压力测试

七、常用组合命令

  1. ​查找并杀死Java进程​

    ps -ef | grep java | grep -v grep | awk '{print $2}' | xargs kill -9

  2. ​批量查找并替换文件内容​

    find /path -type f -name "*.xml" -exec sed -i 's/old/new/g' {} ;

  3. ​查看各进程内存占用​

    ps -eo pid,user,%mem,command --sort=-%mem | head

  4. ​统计日志中404错误​

    awk '9 == 404 {print 7}' access.log | sort | uniq -c | sort -nr

  5. ​监控Redis内存增长​

    watch -n 1 "redis-cli info | grep used_memory_human"

八、实用技巧​

​压缩与解压​

复制代码
tar -czvf archive.tar.gz /path/to/dir  # 压缩
tar -xzvf archive.tar.gz              # 解压

希望这份Linux指令大全能帮助您更高效地进行服务器运维工作!根据实际环境,部分命令可能需要适当调整。

相关推荐
张np9 小时前
java基础-集合接口(Collection)
java·开发语言
开始了码9 小时前
QT:ItemWidgets模块介绍
开发语言·qt
汪汪队立大功1239 小时前
JavaScript是怎么和html元素关联起来的?
开发语言·javascript·html
Mr_Dwj9 小时前
【Python】Python 基本概念
开发语言·人工智能·python·大模型·编程语言
hggngx548h10 小时前
有哪些C++20特性可以在Dev-C++中使用?
开发语言·c++·c++20
2401_8414956410 小时前
【自然语言处理】基于规则基句子边界检测算法
人工智能·python·自然语言处理·规则·文本·语言·句子边界检测算法
yue00810 小时前
C# 生成指定位数的编号
开发语言·c#
大笨象、小笨熊10 小时前
Qt Widgets和Qt Quick在开发工控触摸程序的选择
开发语言·qt