Linux下创建Postgresql数据库的方法步骤

    前言

    PostgreSQL (也叫 Postgres)是一个自由的对象-关系数据库服务器(数据库管理系统),它在灵活的 BSD-风格许可证下发行。因为之前用默认的配置创建pgsql数据库,导致root的占用率达到97%:

    所以决定重新创建一次数据库,很多坑又忘了。为了避免以后再忘记,所以决定记录下面,分享出来供大家参考学习,下面来一起看看详细的介绍吧。

    创建步骤如下:

    创建一个放Data的文件夹,/majestic12/pgsql/data

    
    PGDATA = /majestic12/pgsql/data
    set | grep PGDATA

    初始化db:

    
    initdb -D /majestic12/pgsql/data

    启动数据库(在后台运行)

    
    postgres -D /majestic12/pgsql/data >logfile 2>&1 &

    创建数据库用户(创建一个tdsadmin的超级用户,立即给它赋予密码)

    
    createuser -P -s -e tdsadmin

    创建数据库(创建一个属于tdsadmin的叫TDS的数据库)

    
    createdb -O tdsadmin TDS

    这时候就创建完成了,但是从外部来连接数据库访问时可能会遇到一些异常。

    比如说不允许TCP/IP连接等,以及如下图:

    这个时候需要执行对2个文件配置进行修改

    对于postgresql.conf

    
    #listen_address='127.0.0.1' =>
    listen_address = '*'

    对于pg_hba.conf

    
    #TYPE DATEBASE USER CIDR-ADDRESS METHOD
    host all  all 0.0.0.0/0 MD5

    修改完重启service

     

    其他可能需要的资料:

    • netstat -tuln 查看现在的网络端口监听
    • ps -ef | grep postgres 查看是否存在PG进程
    • cat postgresql.conf|grep listen 查看监听地址是否正确
    • psql postgres 进入postgres命令环境
    • ls -ltr 看各个子文件或目录的权限
    • chkconfig postgresql-9.x on 设置开机启动
    • chown -R postgres:postgres data data文件夹用户所属组给postgres
    • chmod -R 0700 data 把data目前的所有文件及子目录文件权限改成: rwx (0700)
    • 0.0.0.0/0 最后一位为子网掩码,255.255.255.255 => 0,8,16,24,32.

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对lingkb的支持。