温馨提示×

ubuntu sqladmin怎么优化性能

小樊
43
2026-09-06 20:21:07
栏目: 云计算

在 Ubuntu 上,“sqladmin” 通常指的是 数据库管理相关场景下的性能优化(可能是 MySQL / PostgreSQL 管理工具、或是你用 sqladmin 这类 Web 管理界面)。下面我从 系统层 + 数据库层 + sqladmin 使用层 三个角度给你一套通用优化方案(以最常见的 MySQL / PostgreSQL 为主)。


一、Ubuntu 系统层优化

1. 调整 Linux 内核参数(数据库很重要)

编辑 /etc/sysctl.conf

# 增加文件描述符
fs.file-max = 1000000

# TCP 优化
net.core.somaxconn = 65535
net.ipv4.tcp_max_syn_backlog = 65535
net.ipv4.tcp_tw_reuse = 1

应用:

sysctl -p

2. 文件描述符限制

编辑 /etc/security/limits.conf

* soft nofile 65535
* hard nofile 65535

3. 使用 SSD & 文件系统

  • 推荐使用 ext4 / xfs
  • 挂载参数:
noatime,nodiratime

二、数据库层性能优化(重点)

✅ MySQL 优化(如果你用的是 MySQL)

1. 修改配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf

innodb_buffer_pool_size = 4G   # 物理内存的 60%~70%
innodb_log_file_size = 512M
innodb_flush_method = O_DIRECT
max_connections = 500
query_cache_type = 0   # MySQL 8 已移除
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 1

重启:

systemctl restart mysql

2. 索引优化

EXPLAIN SELECT * FROM user WHERE name='tom';
  • 避免 SELECT *
  • 给 WHERE / JOIN / ORDER BY 字段加索引

✅ PostgreSQL 优化

1. 修改 /etc/postgresql/14/main/postgresql.conf

shared_buffers = 2GB
work_mem = 64MB
maintenance_work_mem = 512MB
effective_cache_size = 6GB
random_page_cost = 1.1
systemctl restart postgresql

2. 慢查询分析

SELECT * FROM pg_stat_statements
ORDER BY total_exec_time DESC
LIMIT 10;

三、sqladmin / 管理工具层优化

如果你是 通过 sqladmin(Web 界面)管理数据库

1. 减少大数据量查询

  • 不要直接 SELECT * 全表
  • LIMIT 100
  • 使用分页

2. 关闭不必要的自动刷新

  • 实时刷新会加重数据库压力

3. 使用只读账号

CREATE USER ro_user WITH PASSWORD 'xxx';
GRANT SELECT ON ALL TABLES IN SCHEMA public TO ro_user;

四、监控 & 排查工具(Ubuntu)

htop
iotop
atop

数据库监控:

mysqladmin status
pg_stat_activity

五、快速自查清单 ✅

  • [ ] innodb_buffer_pool / shared_buffers 是否合理
  • [ ] 慢查询日志是否开启
  • [ ] 是否有缺失索引
  • [ ] 是否连接数爆了
  • [ ] 是否在 sqladmin 里跑全表查询

如果你能告诉我: 1️⃣ 用的是 MySQL 还是 PostgreSQL 2️⃣ sqladmin 是 Web 工具还是命令行 3️⃣ 服务器配置(CPU / 内存)

我可以直接给你 一份可复制的配置文件

0