广告
返回顶部
首页 > 资讯 > 数据库 >Centos如何安装postgresql?
  • 944
分享到

Centos如何安装postgresql?

2024-04-02 19:04:59 944人浏览 八月长安
摘要

今天小编就为大家带来一篇介绍Centos安装postgresql的文章。小编觉得挺实用的,为此分享给大家做个参考。一起跟随小编过来看看吧。这篇文章给大家分享的是linux安装win7系统的详细安装教程,相信

今天小编就为大家带来一篇介绍Centos安装postgresql的文章。小编觉得挺实用的,为此分享给大家做个参考。一起跟随小编过来看看吧。

这篇文章给大家分享的是linux安装win7系统的详细安装教程,相信大部分人都还不知道怎么安装,为了让大家学会,给大家总结了以下内容,话不多说,一起往下看吧。

安装概要

环境centos 7.4/5/6 x86_64,源码安装,安装过程没啥好说的,主要是配置服务器的参数;既然是服务器,咱还是要严谨点,再说linux COPY 速度也很快,体力活;

下载介质:wget https://ftp.postgresql.org/pub/source/v11.4/postgresql-11.4.tar.gz

1 软件包安装

yum install net-tools -y
yum install sysstat -y
yum install iotop libXp redhat-lsb GCc gdb –y
yum install xorg-x11-xauth -y
yum install -y vim lrzsz tree wget gcc gcc-c++ readline-devel hwloc smartmontools
--db
yum install -y readline readline-devel openssl openssl-devel zlib zlib-devel nuMactl


2 启用大页

启用大页:

DB:

/etc/default/grub
net.ifnames=0 biOSdevname=0 default_hugepagesz=2M hugepagesz=2M hugepages=81920 transparent_hugepage=never

执行生效命令

grub2-mkconfig -o /boot/grub2/grub.cfg

修改大页数量,不用重启生效:

sysctl -w vm.nr_hugepages=81920

复查:

cat /proc/cmdline
cat /sys/kernel/mm/transparent_hugepage/enabled
[root@kbj-db-1 ~]# grep -i hugepage /proc/meminfo
AnonHugePages:         0 kB
HugePages_Total:   81920
HugePages_Free:    44703
HugePages_Rsvd:    43036
HugePages_Surp:        0
Hugepagesize:       2048 kB


 3 更改内核参数

net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744
fs.aio-max-nr = 1048576
kernel.panic_on_oops=1
net.core.somaxconn = 8192
net.ipv4.tcp_keepalive_time = 600  #默认7200
net.ipv4.ip_local_port_range = 10000 65000 #默认32768到61000 
net.ipv4.tcp_max_syn_backlog = 8192 #默认1024
net.ipv4.tcp_max_tw_buckets = 5000 #默认65535
#vm.nr_hugepages = 81920  #Db 启用81920*2M的大页
kernel.sem = 4096 128000 64  512
vm.swapniess=10
大页的算法官方提供了一个脚本:
#!/bin/bash
pid=`head -1 $PGDATA/postmaster.pid`
echo "Pid:            $pid"
peak=`grep ^VmPeak /proc/$pid/status | awk '{ print $2 }'`
echo "VmPeak:            $peak kB"
hps=`grep ^Hugepagesize /proc/meminfo | awk '{ print $2 }'`
echo "Hugepagesize:   $hps kB"
hp=$((peak/hps))
echo Set Huge Pages:     $hp

4更改用户限制

vi /etc/security/limits.conf
postgres soft nproc 16384
postgres hard nproc 16384
postgres soft nofile 65536
postgres hard nofile 65536


5修改环境变量(HISTORY)

vi /etc/profile

export.UTF8

export HISTTIMEFORMAT="%F %T "

export HISTSIZE=12000

ulimit -SHn 65536

6更改数据库服务器磁盘IO算法

磁盘的IO调度算法,根据实际情况调整,推荐cfq/noop


echo noop>/sys/block/sdb/queue/scheduler
cat /sys/block/sdb/queue/scheduler
[noop] deadline cfq
[root@kbj-db-1 ssd]# time dd if=/dev/zero of=/ssd/test.dmp bs=8192 count=12800000
^C记录了4873412+0 的读入
记录了4873412+0 的写出
39922991104字节(40 GB)已复制,35.9298 秒,1.1 GB/秒

7配置用户及目录

groupadd -g 106 ssl-cert
groupadd -g 107 postgres
useradd -g postgres -G ssl-cert -u 104 postgres
chown postgres:postgres -R /ssd
su - postgres
[postgres@kbj-db-1 ssd]$ mkdir /ssd/database/
[postgres@kbj-db-1 ssd]$ mkdir /ssd/database/pg114data
[postgres@kbj-db-1 ssd]$ mkdir /ssd/database/114arch
[postgres@kbj-db-1 ssd]$ mkdir /ssd/database/pg114home

8设置postgresql环境变量

export PGDATA=/ssd/database/pg114data
export PGARCH=/ssd/database/114arch
export PGHOME=/ssd/database/pg114home
export LD_LIBRARY_PATH=/ssd/database/pg114home/lib
export PATH=$PGHOME/bin:$PATH PATH=$PATH:$HOME/.local/bin:$HOME/bin

9安装

./configure根据实际情况选择

tar -xzvf postgresql-11.4.tar.gz
cd postgresql-11.4/
./configure --prefix=/ssd/database/pg114home --with-python --with-ossp-uuid --with-libxml --with-openssl --enable-dtrace --enable-debug
cd /ssd/postgresql-11.4/contrib/
make make install /ssd/postgresql-11.4/contrib/file_fdw
cd $PGHOME/bin/
 ./initdb -D $PGDATA
#连接数据库 
psql -p5432 -Upostgres -d postgres
#安装插件
create extension pg_buffercache ;
create extension pg_stat_statements;
CREATE EXTENSION file_fdw;
create extension pgrowlocks;
CREATE SERVER file_fdw_server FOREIGN DATA WRAPPER file_fdw;
 select current_database(),* from pg_extension
 select * from pg_available_extensions where name like '%uuid%';
 --扩展插件检查 
select * from pg_available_extensions where name in ( 'fuzzystrmatch','pg_visibility','tablefunc','amcheck','intarray','tsm_system_time','pgrowlocks','tcn','dict_int','unaccent','btree_gin','dict_xsyn','intagg','insert_username','dblink','lo','uuid-ossp','adminpack','bloom','postgres_fdw','pageinspect','pg_freespacemap','pg_prewarm','pgcrypto','pg_buffercache','file_fdw','btree_GISt','xml2','citext','pg_stat_statements','refint','pgstattuple','timetravel','hstore','moddatetime','isn','cube','autoinc','pg_trgm','ltree','plpgsql','seg','tsm_system_rows','earthdistance')
说明一下:
指定安装参数: 
--with-wal-segsize=SEGSIZE
设置WAL 段尺寸,以 M 字节计。这是 WAL 日志中每一个独立文件的尺寸。调整这个值来控制传送 WAL 日志的粒度非常有用。默认尺寸为 16 M字节。这个值必须是2的幂并且在 1 到 1024 (M字节)之间。注意修改这个值需要一次 initdb。
--with-segsize=SEGSIZE
设置段尺寸,以 G 字节计。大型的表会被分解成多个操作系统文件,每一个的尺寸等于段尺寸。这避免了与操作系统对文件大小限制相关的问题。默认的段尺寸(1G字节)在所有支持的平台上都是安全的。如果你的操作系统有“largefile”支持(如今大部分都支持),你可以使用一个更大的段尺寸。这可以有助于在使用非常大的表时消耗的文件描述符数目。但是要当心不能选择一个超过你将使用的平台和文件系统所支持尺寸的值。你可能希望使用的其他工具(如tar)也可以对可用文件尺寸设限。如非绝对必要,我们推荐这个值应为2的幂。注意改变这个值需要一次 initdb。
--with-blocksize=BLOCKSIZE
设置块尺寸,以 K 字节计。这是表内存储和I/O的单位。默认值(8K字节)适合于大多数情况,但是在特殊情况下可能其他值更有用。这个值必须是2的幂并且在 1 和 32 (K字节)之间。注意修改这个值需要一次 initdb。
--with-wal-blocksize=BLOCKSIZE
设置WAL 块尺寸,以 K 字节计。这是 WAL 日志存储和I/O的单位。默认值(8K 字节)适合于大多数情况,但是在特殊情况下其他值更好有用。这个值必须是2的幂并且在 1 到 64(K字节)之间。注意修改这个值需要一次 initdb。
--with-Python 制作PL/Python服务器端编程语言。
完整参考:Http://www.postgres.cn/v2/document


10 更改日志文件默认配置

1 #启用DDL记录

log_statement=ddl

2日志保留91天,log_line_prefix = '%m %p %u %d %r %a '

log_rotation_age = 91d
log_rotation_size = 20MB
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'

3 启用文件权限,供EFK使用

log_file_mode=0604

4 启用长时SQL记录auto_explain.log_min_duration=10000

arcHive_mode = on
archive_command = 'cp %p /home/postgres/arch/%f'
wal_level =replica

以上就是Centos安装postgresql的详细内容了,看完之后是否有所收获呢?如果想了解更多相关内容,欢迎关注编程网数据库!

您可能感兴趣的文档:

--结束END--

本文标题: Centos如何安装postgresql?

本文链接: https://www.lsjlt.com/news/35212.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Centos如何安装postgresql?
    今天小编就为大家带来一篇介绍Centos安装postgresql的文章。小编觉得挺实用的,为此分享给大家做个参考。一起跟随小编过来看看吧。这篇文章给大家分享的是linux安装win7系统的详细安装教程,相信...
    99+
    2022-10-18
  • CentOS 7 安装 postgreSQL 9.4
    CentOS 7仓库中的postgresql软件包太老,我们希望从postgresql 官方获取支持,尤其是关于postgresql 集群方面的支持,比如pgpool 。安装postgresql 9.4yu...
    99+
    2022-10-18
  • CentOS/RHEL 7上PostgreSQL如何安装配置
    这篇文章主要介绍了CentOS/RHEL 7上PostgreSQL如何安装配置,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。安装Postgr...
    99+
    2022-10-19
  • postgresql 9.6 rpm包安装 CentOS 7.2 X64
    1.pgdg-centos96-9.6-3.noarch.rpmPostgreSQL 9.6--》CentOS 7 - x86_64下载链接:https://yum.postgresql.org/repop...
    99+
    2022-10-18
  • Windows下如何安装PostgreSQL
    这篇文章主要为大家展示了“Windows下如何安装PostgreSQL”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Windows下如何安装PostgreSQL...
    99+
    2022-10-18
  • centos如何安装mongodb
    centos安装mongodb的方法:1、打开centos终端;2、创建一个/etc/yum.repos.d/mongodb-enterprise.repo文件并添加相关内容配置存储库;3、在终端命令行中输入“sudo yum instal...
    99+
    2022-10-10
  • centos如何安装php
    在centos系统中安装php的方法首先,在centos命令行中使用yum命令查看是否安装php;yum list installed | grep php若已有php,可以执行以下命令删除;yum -y remove php-common...
    99+
    2022-10-05
  • CentOS 7.3如何安装
    这篇文章将为大家详细讲解有关CentOS 7.3如何安装,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。CentOS 7是CentOS项目发布的开源类服务器操作系统,于2014年7月7日正式发布,CentO...
    99+
    2023-06-28
  • centos如何安装EPEL
    这篇文章给大家分享的是有关centos如何安装EPEL的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、安装前,我们先看一下我们现有的源:如图所示,当前源有8127个软件2、安装EPEL YUM源1、命令安装:&...
    99+
    2023-06-28
  • Centos如何安装nmon
    这篇文章主要为大家展示了“Centos如何安装nmon”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Centos如何安装nmon”这篇文章吧。安装mkdir /usr/local/nmoncd ...
    99+
    2023-06-10
  • 在Linux上如何安装PostgreSQL
    这篇文章主要介绍了在Linux上如何安装PostgreSQL,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。PostgreSQL 的官方下载地址为:ftp://ftp.post...
    99+
    2023-06-13
  • Linux系统如何安装PostgreSQL
    这篇文章给大家分享的是有关Linux系统如何安装PostgreSQL的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。PostgreSQL 简介:PostgreSQL是一个功能强大的开源对象关系型数据库系统,他使用和...
    99+
    2023-06-28
  • 如何在CentOS安装GitLab
    GitLab是一个用于代码管理和协作的开源平台。它提供了源代码管理、问题跟踪、CI/CD等一系列功能,使团队协作更加高效。当前最新版本为GitLab 13.x,本篇文章将介绍如何在CentOS安装GitLab。安装GitLab的前置条件:1...
    99+
    2023-10-22
  • centos下如何安装tomcat
    这篇文章主要介绍centos下如何安装tomcat,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!下载tomcat[admin@ticent app]$ wget http://mirrors.tuna.tsinghu...
    99+
    2023-06-03
  • 如何对linux CentOS安装
    这篇文章给大家介绍如何对linux CentOS安装,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。很多朋友选择安装linux。在这里我建议初学者使用CentOS安装。推荐初学者使用CentOS安装有很多理由,主要是Ce...
    99+
    2023-06-16
  • centos php如何安装opcache
    这篇文章主要介绍“centos php如何安装opcache”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“centos php如何安装opcache”文章能帮助大家解决问题。centos php安装...
    99+
    2023-07-05
  • CentOS 7.4如何安装redis5.0
    这篇文章主要介绍“CentOS 7.4如何安装redis5.0”,在日常操作中,相信很多人在CentOS 7.4如何安装redis5.0问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大...
    99+
    2022-10-18
  • CentOS 6如何安装SQLAdvisor
    这篇文章给大家分享的是有关CentOS 6如何安装SQLAdvisor的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. 从git上拉取最新代码[BEGIN] 2018...
    99+
    2022-10-18
  • centos中如何安装mysql
    centos中安装mysql的方法:1、打开centos终端;2、在命令行中输入“yum install mysql-server”命令安装mysql即可。具体操作步骤:在centos系统桌面中使用快捷键【Ctrl+Alt+T】打开终端命令...
    99+
    2022-10-16
  • centos中如何安装docker
    centos中安装docker的方法:1、打开centos终端;2、在命令行中输入“curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun”命令自动安装docke...
    99+
    2022-10-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作