postgresql 优化与维护

postgresql 优化与维护

ID:2082542

大小:26.20 KB

页数:13页

时间:2017-11-14

postgresql 优化与维护_第1页
postgresql 优化与维护_第2页
postgresql 优化与维护_第3页
postgresql 优化与维护_第4页
postgresql 优化与维护_第5页
资源描述:

《postgresql 优化与维护》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.硬件数据库最重要的就是I/O了。所以一切从I/O开始。RAID:这个基本不用说,数据库放RAID10上面,只读的备份数据库可以放RAID0,反正挂了没关系。谨记:数据库是RandomRead注意的是硬盘外圈要比内圈快,所以跟linux建立swap的原理一样,尽力把数据库的东西放在硬盘的外圈(前端)直接在fdisk的时候就做好。同时有个省钱方法,因为硬盘的外围速度远远快于内圈的速度,所以选择一个1T的SATA硬盘,然后只用外圈的100G,其他的不用,这样的话,速度要比单买一个100G的SAS还快。RAID卡的选择:RAID卡一定要带电池的才可以(BBU)有电源的才能

2、做到东西写进CACHE,RAID就返回硬盘写成功(不用等)1.Areca2.LSI(真正的LSI,re-brand不要)3.HPP400以上系列硬盘选择:首选是SAS:15KRPM每个SAS大约能提供25MB/s的RandomWrite。也就是说在RAID10的设定下,如果需要50MB/s的RandomWrite就需要4个硬盘节俭选择是:SATA可以多用几个硬盘(SAS一倍数量)达到在RAID10中接近SAS的速度。就算SATA买SAS一倍的数量,价格仍然比SAS便宜。也可以买产品:例如Compaq的MSA70(P800BatterybackedRAIDcontrol

3、)CPU:64位Cache:越大越好(现在个人电脑都3M的cache了)CORE:越多越好(postgresql毕竟是跑cpu的)建议最少4个coreRAM:最少4G。通常根据具体需求,用16-64G的RAM2.OS(系统)可用系统:1.DebianStable2.CentOS3.UbuntuLTS4.RedHat5.SUSEEnterprise如果准备付费(服务),那么就是Canonical,Novell跟Redhat这三家选择而已如果准备不买任何服务,可以用Debian,CentOS,UbuntuLTS这里还是觉得系统用RedHat(不付费就CentOS)毕竟人家

4、是企业级的老大哥,错不了。*现在CentOS也可以买到服务了。不可用系统:例如fedora(redhatQA)ubuntu(non-LTS)Scheduler:Grub增加:elevator=deadlineredhat的图标可以看出,deadline是数据库的最佳选择文件系统(Filesystem)这里的选择是:ext2,ext3跟ext4。为什么只考虑这几个呢?因为数据库还是稳定第一,内核开发人员所做的文件系统,理论上说出问题的情况会少点。WAL:放ext2 因为WAL本身自己有Journal了,不需要用ext3(ext2快很多)data:ext3BlockSiz

5、e:postgres自己是8k的blocksize。所以文件系统也用8k的blocksize。这样才能最佳的提高系统的效能。ext4:出来时间还不够长,不考虑。分区(Partitioning)Postgres跟系统OS应该在不同分区系统(OS):系统应该放独立的RAID1数据库(PostgresData):数据库应该放独立的RAID10上。如果RAID是带电池的,mount的时候给data=writeback的选项独立的数据库分区,就不许要记录文件时间了(都是放数据的)所以mount的时候要给noatime的选项,这样可以节约更新时间(timestamp)的I/O了。

6、WAL日志(xlogs):独立的RAID1上(EXT2系统)日志是Sequentialwrite,所以普通的硬盘(SATA)速度就足够了,没有必要浪费SAS在log上Postgresql日志(logs):直接丢给syslog就可以。最好在syslog.conf中设定单独的文件名.这里例如用local2来做postgresqllocal2.*-/var/log/postgres/postgres.log记得log要给Async,这样才不会等卡在log的I/O上,同时记得设定logrotate以及创建路径(path)ext2VSext3性能测试:HPDL5854DualC

7、ore8222processors64GBRAM(2)MSA70directattachedstoragearrays.25spindlesineacharray(RAID10)HPP800Controller6DiskinRAID10onembeddedcontrollerxlogwithext3:avg=87418.44KB/secxlogwithext2:avg=115375.34KB/sec3.Postgres内存(MemoryUsage)SharedBufferCacheWorkingMemoryMaintenanceMemoryShare

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。