优化CentOS上PostgreSQL的磁盘空间是一个重要的任务,以确保数据库的高效运行和数据的可靠性。以下是一些关键的优化策略:
SELECT pg_relation_filepath(oid), relpages FROM pg_class WHERE relname = 'weather';
du -sh /var/lib/pgsql/data/*
find /var/log/postgresql/ -type f -mtime 30 -name "*.log" -exec rm -f {} \;
find /tmp/ -type f -mtime 7 -exec rm -f {} \;
find /var/lib/pgsql/backups/ -type f -mtime -7 -exec rm -f {} \;
fdisk
重新扫描磁盘分区表。parted
或 fdisk
对磁盘进行分区。resize2fs
调整文件系统大小。postgresql.conf
中调整参数,如 shared_buffers
、work_mem
、maintenance_work_mem
等。CREATE TABLESPACE my_ts LOCATION '/mnt/psql_ts';
CREATE TABLE mytable ( id SERIAL PRIMARY KEY , name VARCHAR ( 100 )) TABLESPACE my_ts;
DROP TABLESPACE mytablespace;
SELECT pg_size_pretty(pg_database_size('dbname'));
SELECT table_schema, table_name AS table_full_name, pg_size_pretty(pg_total_relation_size('"' table_schema table_name AS size FROM information_schema.tables ORDER BY pg_total_relation_size('"' table_schema table_name '"') desc;
通过上述方法,可以有效地管理和优化CentOS上PostgreSQL的磁盘空间,确保数据库的高效运行。