zoukankan      html  css  js  c++  java
  • postgresql 9源码安装

    安装过程:

    1、configuration

    --prefix=PREFIX

    install all files under the directory PREFIX instead of usr/local/psql

    --with-pgport=NUMBER

    set NUMBER as the default port number for server and clients,the default is 5432.

    --with-segsize=SEGSIZE(控制表的大小)

    set the segment size,in gigabytes,large tables are divided into multiple operating-system files,each of size equal to the segment size.

    --with-blocksize=BLOCKSIZE

    set the block size,in kilobytes.this is the unit of starage and i/o within tables.the defaules,8 kilobytes,is susitable for most situnations;but other values may be usefulin special cases,the value must be a power of 2 between 1 and 32(jukobyrtes).

    --with-wal-segsize=SEGSIZE

    set the wal segment size,in megabytes,this is the size of each individaul file in the wal log.it may be useful to adjust this size to control the granularity of wal log shipping.the default size is 16 megabytes.the value must be a power of 2 between 1 and 64(megabytes).

    --with-wal-blocksize=BLOCKSIZE

    set the wal block size,in kilobytes.this is the unit of storage and i/o within the wal log,the default,8 kilobytes,is suitable for most situations;but other values may be useful in special cases.the value must be a power of w between 1 and 64(kilobytes).

    2、build

    gmake

    gmake world

    3、installing the files

    gmake install

    gmake install-world

    4、add a os user account

    #groupadd postgres

    #useradd postgres

    #passwd postgres

    #chown -R postgres:postgres /pgdir

    5、creating a database cluster(数据库初始化)

    A database cluster is a collection of databases that is managed by a single instance of a running database server.

    In file system terms,a database cluster will be a single directory under which all data will be stored.we call this the data direcotry or data area.

    as an alternative to the -D option,you can set the environment variable PGDATA

    initdb -D /usr/local/pgsql/data/ --locale=C --encoding=UTF8

    pg_ctl -D /usr/local/pgsql/data initdb

    6、starting the database server

    postgres -D /usr/local/pgsql/data   --前台启动方式,退出终端即退出pg

    postgres -D /usr/local/pgsql/data >logfile 2>&1 &            --后台启动方式

    pg_ctl start -l logfile

    安装文档1:

    [root@node2 pg952]# tar -jxvf postgresql-9.5.2.tar.bz2

    [root@node2 pg952]# cd postgresql-9.5.2

    [root@node2 pg952]# cat INSTALL |more

    [root@node2 pg952]# mkdir /pg952

    [root@node2 pg952]# ./configure --prefix=/pg952/

    [root@node2 pg952]# gmake world

    [root@node2 pg952]# gmake install-world

    [root@node2 pg952]# id postgres

    [root@node2 pg952]# chown -R postgres:postgres /pg952/

    [root@node2 pg952]# initdb -D /usr/local/pgsql/data/ --locale=C --encoding=UTF8

    [root@node2 pg952]# pg_ctl start -l logfile

    安装文档2:

    linux系统依赖包:

    [root@localhost ~]# gcc --version

    gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)

    Copyright (C) 2010 Free Software Foundation, Inc.

    This is free software; see the source for copying conditions.  There is NO

    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

    [root@localhost ~]# make --version

    GNU Make 3.81

    Copyright (C) 2006  Free Software Foundation, Inc.

    This is free software; see the source for copying conditions.

    There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A

    PARTICULAR PURPOSE.

    This program built for x86_64-redhat-linux-gnu

    [root@localhost ~]# rpm -qa|grep readline

    compat-readline5-5.2-17.1.el6.x86_64

    readline-devel-6.0-4.el6.x86_64

    readline-6.0-4.el6.x86_64

    [root@localhost ~]# rpm -qa|grep zlib

    zlib-1.2.3-29.el6.x86_64

    zlib-devel-1.2.3-29.el6.x86_64

    安装postgresql 5.2

    [root@localhost mnt]# tar -jxvf postgresql-9.5.2.tar.bz2

    [root@localhost mnt]# cd postgresql-9.5.2

    [root@localhost postgresql-9.5.2]# ./configure --prefix=/pg952/

    [root@localhost postgresql-9.5.2]# make world

    [root@localhost postgresql-9.5.2]# make install-world

    [root@localhost pg952]# cd /pg952/

    [root@localhost pg952]# ll

    总计 32

    drwxr-xr-x 2 root root 4096 05-26 05:41 bin

    drwxr-xr-x 4 root root 4096 05-26 05:40 include

    drwxr-xr-x 4 root root 4096 05-26 05:40 lib

    drwxr-xr-x 5 root root 4096 05-26 05:40 share

    [root@localhost pg952]# id postgres

    uid=26(postgres) gid=26(postgres) groups=26(postgres) context=root:system_r:unconfined_t:SystemLow-SystemHigh

    [root@localhost pg952]# chown -R postgres:postgres /pg952/

    [root@localhost pg952]# ll /pg952/

    总计 32

    drwxr-xr-x 2 postgres postgres 4096 05-26 05:41 bin

    drwxr-xr-x 4 postgres postgres 4096 05-26 05:40 include

    drwxr-xr-x 4 postgres postgres 4096 05-26 05:40 lib

    drwxr-xr-x 5 postgres postgres 4096 05-26 05:40 share

    [root@localhost pg952]# su - postgres

    -bash-3.2$ vim .bash_profile    --添加如下环境变量

    [ -f /etc/profile ] && source /etc/profile

    export PGHOME=/pg952

    export PGDATA=/pg952/data

    export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH

    PATH=$PGHOME/bin:$PATH

    -bash-3.2$ pg_ctl init        --初始化数据库

    -bash-3.2$ vim postgresql.conf        --修改配置文件

    #listen_addresses = 'localhost'         # what IP address(es) to listen on;

    listen_addresses = '*'

    -bash-3.2$ vim pg_hba.conf           --修改配置文件

    # IPv4 local connections:

    host    all             all             127.0.0.1/32            trust

    host    all             all             192.168.72.0/24          md5

    -bash-3.2$ pg_ctl start -l $PGHOME/logfile 2>&1 >/dev/null   --启动数据库

    注意:pg_ctl start|status|stop|restart进行数据库启动

    -bash-3.2$ ps -ef|grep post                   --查看数据库状态

    -bash-3.2$ cat logfile

    -bash-3.2$ ps -f -U postgres

    连接数据库:

    -bash-3.2$ psql                  --本地连接

    psql (9.5.2)

    Type "help" for help.

    postgres=# l

    ..........

    postgres-# password            --修改pg口令

    Enter new password:

    Enter it again:

    C:Userswangwc>psql -h 192.168.72.130 -U postgres -d oracle    --远程连接

    Postgresql shared memory usage:

    Usage

    Approximate shared memory bytes required(as of 8.3)

    commections

    (1800+270*max_locks_per_transaction)*max_connections

    Autovacuum workers

    (1800+270*max_locks_per_transaction)*autovacuum_max_workers

    Prepared transactions

    (770+270*max_locks_per_transaction)*max_prepared_transcctions

    Shared disk buffers

    (blocks_size+208)*shared_buffers

    Wal buffers

    (wal_blocks_size+208)*wal_buffers

    Fixd space requiremenrs

    770kb

  • 相关阅读:
    Failure [INSTALL_FAILED_ALREADY_EXISTS]
    在CentOS 7上构建RAID5、LVM和SAMBAserver(5)——架设SAMBAserver
    adb命令具体解释(二)——手机缺失sqlite3时操作数据库的多种解决方式
    【环境配置】Linux的经常使用命令
    windowsclient开发--使你的client执行时记住上次关闭的大小和位置
    【13】以对象管理资源
    C++ 初始化与赋值
    C++ 变量初始化规则
    C++ 构造和析构
    【20】宁以pass-by-reference-to-const替换pass-by-value
  • 原文地址:https://www.cnblogs.com/wcwen1990/p/6655438.html
Copyright © 2011-2022 走看看