您好,登錄后才能下訂單哦!
今天小編就為大家帶來一篇介紹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
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
啟用大頁:
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
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
vi /etc/security/limits.conf postgres soft nproc 16384 postgres hard nproc 16384 postgres soft nofile 65536 postgres hard nofile 65536
vi /etc/profile
export.UTF8
export HISTTIMEFORMAT="%F %T "
export HISTSIZE=12000
ulimit -SHn 65536
磁盤的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/秒
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
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
./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
log_statement=ddl
log_rotation_age = 91d log_rotation_size = 20MB log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
log_file_mode=0604
archive_mode = on archive_command = 'cp %p /home/postgres/arch/%f' wal_level =replica
以上就是Centos安裝postgresql的詳細內容了,看完之后是否有所收獲呢?如果想了解更多相關內容,歡迎關注億速云行業資訊!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。