ulimit 是一个用于控制 shell 进程资源限制的命令。在 Debian 数据库服务器上,可以通过调整 ulimit 的设置来优化性能。以下是一些建议:
/etc/security/limits.conf 文件:sudo nano /etc/security/limits.conf
your_database_user 替换为您的数据库用户名。your_database_user soft nofile 65535
your_database_user hard nofile 65535
your_database_user soft nproc 4096
your_database_user hard nproc 4096
这将允许数据库用户打开最多 65535 个文件描述符,并允许最多 4096 个进程。您可以根据服务器的实际需求调整这些值。
保存并关闭文件。
为了让更改生效,您需要重新登录数据库用户。您还可以通过以下命令使更改立即生效:
ulimit -n 65535
ulimit -u 4096
/etc/mysql/my.cnf 或 /etc/mysql/mysql.conf.d/mysqld.cnf 文件中的 open_files_limit 设置。将以下行添加到 [mysqld] 部分:open_files_limit = 65535
保存并关闭文件。
重启 MySQL 服务以应用更改:
sudo systemctl restart mysql
/etc/postgresql/<version>/main/postgresql.conf 文件中的 shared_buffers 和 work_mem 设置。例如:shared_buffers = 25% of total RAM
work_mem = 4MB
请根据服务器的实际内存大小调整这些值。
保存并关闭文件。
重启 PostgreSQL 服务以应用更改:
sudo systemctl restart postgresql
完成以上步骤后,您的 Debian 数据库服务器性能应得到优化。请注意,根据服务器的具体配置和应用程序需求,您可能需要进一步调整这些设置。在进行任何更改之前,请确保备份所有重要数据。