美文网首页大数据程序员
PostgreSQL数据库安装Version10.5

PostgreSQL数据库安装Version10.5

作者: 木木与呆呆 | 来源:发表于2019-01-29 17:34 被阅读60次

    PostgreSQL数据库安装,基于版本10.5安装,
    在Linux系统上使用*.gz二进制压缩包手动安装。
    操作系统:Red Hat Enterprise Linux Server release 6.5 (Santiago)
    安装包: postgresql-10.5-1-linux-x64-binaries.tar.gz

    1.说明

    网上有很多在线安装PostgreSQL的文章,
    在线安装使用yum或者apt-get非常简单,
    可以参考如下文章:
    第 4 课 PostgreSQL 安装最新的版本
    postgreSQL安装与使用
    本文使用PostgreSQL的二进制压缩包离线安装,
    安装步骤其实也非常简单,而且卸载也很方便。

    2.创建postgres用户

    登陆到root用户创建新用户postgres。

    2.1.新增hadoop用户组

    groupadd hadoop

    2.2.新增postgres用户

    useradd -g hadoop -s /bin/bash -md /home/postgres postgres

    2.3.修改postgres用户密码

    passwd postgres

    2.4.验证新增的用户

    ssh postgres@10.43.159.9
    使用步骤2.3中设置的密码登陆,
    注意后续的所有操作都在该用户下执行,
    而不是root用户。

    3.下载安装包

    可以从如下地址下载需要的安装包,
    按照自己的操作系统和版本要求选择下载。
    PostgreSQL官网下载
    PostgreSQL Download
    PostgreSQL中文社区下载

    4.上传并解压安装包

    上传安装包到postgres的家目录:
    /home/postgres/postgresql-10.5-1-linux-x64-binaries.tar.gz
    解压安装包:
    tar -zxvf postgresql-10.5-1-linux-x64-binaries.tar.gz

    5.创建数据和日志目录

    进入安装包解压后的目录:
    cd /home/postgres/pgsql
    创建数据data目录:
    mkdir data
    创建日志log目录:
    mkdir log

    6.设置环境变量

    vim .bashrc

    export PGHOME=/home/postgres/pgsql
    export PGDATA=$PGHOME/data 
    export PGLOG=$PGHOME/log 
    export PATH=$PGHOME/bin:$PATH 
    export MANPATH=$PGHOME/share/man:$MANPATH 
    export LANG=en_US.utf8 
    export DATE=`date +"%Y-%m-%d %H:%M:%S"` 
    export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH 
    

    刷新环境变量:
    source .bashrc

    7.初始化数据库

    bin/initdb -D $PGDATA

    8.修改配置文件

    8.1.修改PostgresSQL数据库配置

    vim $PGDATA/postgresql.conf
    修改为如下:

    listen_addresses = '*'
    port = 5432
    

    说明:PostgreSQL安装完成后,默认是只接受来自本机localhost的连接请求,
    listen_addresses设置为*来允许数据库服务器监听来自任何主机的连接请求,
    并且对外提供的服务端口是5432(默认端口)。

    8.2.设置远程连接

    修改服务端对客户端的认证配置文件pg_hba.conf,
    将需要访问数据库的远程IP地址或地址范围加入该文件:
    vim $PGDATA/pg_hba.conf
    在文件最下方添加如下配置:

    host all all 0.0.0.0/0 trust
    

    说明:上面的配置允许任意IP和用户访问该数据库,
    建议仅用作测试时使用,在公网需要考虑安全问题。

    9.启动数据库

    pg_ctl -D $PGDATA -l $PGLOG/logfile start
    

    注意必须使用postgres用户启动,
    因为PostgresSQL不能以root身份运行,
    要以其他用户身份运行。

    停止数据库:

    pg_ctl -D $PGDATA stop 
    

    查看数据库状态:

    pg_ctl status
    

    10.测试数据库

    登陆PostgresSQL命令行:
    psql
    创建测试数据库:
    create database test;
    查看数据库列表:
    \l
    切换到test数据库:
    \c test
    退出命令行:
    \q
    设置用户密码:
    alter user postgres with password 'zdh1234'
    使用指定用户和端口登陆:
    psql -U postgres -W -p 5432

    11.图形化界面登陆数据库

    使用PostgresSQL自带的pgAdmin进行远程连接。
    可以打开pgAdmin4的图形化界面。

    登陆Linux服务器后执行如下脚本:
    /home/postgres/pgsql/pgAdmin 4/bin/pgAdmin4
    具体方法请参考:
    MobaXterm远程连接Linux图形用户界面
    Xstart远程连接Linux图形用户界面

    脚本执行成功后,会打开远程的firefox浏览器,
    选择创建服务器,填写服务器信息:


    然后就能够看到如下数据库信息:


    12.参考文章

    Linux系统二进制安装PostgreSQL
    PostgreSQL 二进制安装步骤

    13.日志

    13.1.初始化数据库日志

    The files belonging to this database system will be owned by user "postgres".
    This user must also own the server process.
    
    The database cluster will be initialized with locale "en_US.utf8".
    The default database encoding has accordingly been set to "UTF8".
    The default text search configuration will be set to "english".
    
    Data page checksums are disabled.
    
    fixing permissions on existing directory /home/postgres/pgsql/data ... ok
    creating subdirectories ... ok
    selecting default max_connections ... 100
    selecting default shared_buffers ... 128MB
    selecting dynamic shared memory implementation ... posix
    creating configuration files ... ok
    running bootstrap script ... ok
    performing post-bootstrap initialization ... ok
    syncing data to disk ... ok
    
    WARNING: enabling "trust" authentication for local connections
    You can change this by editing pg_hba.conf or using the option -A, or
    --auth-local and --auth-host, the next time you run initdb.
    
    Success. You can now start the database server using:
    
        bin/pg_ctl -D /home/postgres/pgsql/data -l logfile start
    
    

    13.2.logfile启动日志

    2019-01-29 15:27:44.809 CST [13987] LOG:  listening on IPv4 address "0.0.0.0", port 5432
    2019-01-29 15:27:44.809 CST [13987] LOG:  listening on IPv6 address "::", port 5432
    2019-01-29 15:27:44.811 CST [13987] LOG:  listening on Unix socket "/tmp/.s.PGSQL.5432"
    2019-01-29 15:27:44.827 CST [13988] LOG:  database system was shut down at 2019-01-29 15:27:07 CST
    2019-01-29 15:27:44.845 CST [13987] LOG:  database system is ready to accept connections
    

    14.其他

    14.1.设置特定IP远程连接

    如果出于安全考虑,可以配置为具体的IP,
    修改pg_hba.conf文件示例如下:

    host all  all       127.0.0.1/32    trust
    host all  username  192.168.1.0/24  md5
    

    其中数字24是子网掩码,
    表示允许192.168.1.0-192.168.1.255的IP访问,
    允许通过username用户,md5使用密码访问。

    相关文章

      网友评论

        本文标题:PostgreSQL数据库安装Version10.5

        本文链接:https://www.haomeiwen.com/subject/ccaxsqtx.html