红联Linux门户
Linux帮助

OpenBSD4.0 PostgreSQL8.1.5数据库的安装

发布时间:2007-02-11 00:19:08来源:红联作者:exchanged
一、建立postgresql相关用户

#groupadd postgresql

#mkdir /home/postgres

#useradd -g postgresql postgres

#passwd postgres

设置密码 password

确认密码 password

二、安装PostgreSQL

#mkdir -p /var/postgresql/data
*建立数据库初始目录,安装时会自动建立但会提示个错误。

#chown -R postgres /var/postgresql/data
*让用户postgres拥有数据库目录控制权限

#pkg_add -r postgresql-server-8.1.5.tgz

三、开机启动PostgreSQL数据库

#vi /etc/rc.local    
*加入如下内容,注意格式
CODE:[Copy to clipboard]if [ -x /usr/local/bin/pg_ctl -a -x /usr/local/bin/postmaster ]; then

su postgres -c "/usr/local/bin/pg_ctl start -D /var/postgresql/data -l /var/postgresql/data/log.txt -o '-D /var/postgresql/data' -o '-k /var/www/tmp/'"

ln -s /var/www/tmp/.s.PGSQL.5432 /tmp

ln -s /var/www/tmp/.s.PGSQL.5432.lock /tmp

echo -n ' postgresql'

fi
:wq    *保存退出

#ln -s /var/www/tmp/.s.PGSQL.5432 /tmp

#ln -s /var/www/tmp/.s.PGSQL.5432.lock /tmp

四、关机时关闭PostgreSQL数据库

#vi /etc/rc.shutdown    *加入如下内容,注意格式


CODE:[Copy to clipboard]if [ -f /var/postgresql/data/postmaster.pid ]; then

su postgres -c '/usr/local/bin/pg_ctl stop -m fast -D /var/postgresql/data'

rm -f /var/postgresql/data/postmaster.pid

fi
:wq
文章评论

共有 2 条评论

  1. exchanged 于 2007-02-11 00:19:52发表:

    八、安装并配置phpPgAdmin-4.0.1

    #pkg_add -r php5-pgsql-5.1.4.tgz

    #/usr/local/sbin/phpxs -a pgsql

    网上下载phpPgAdmin-4.0.1.tar.gz 到 /var/www/htdocs    

    #tar zxf phpPgAdmin-4.0.1.tar.gz

    #mv phpPgAdmin-4.0.1 pgadmin       


    *改个容易记住的名字,当然你喜欢长文件名不改也行~_~

    #vi /var/www/htdocs/pgadmin/conf/config.inc.php


    CODE:[Copy to clipboard]改:

    $conf['servers'][0]['host'] = '';     

    $conf['servers'][0]['defaultdb'] = 'Template1';

    $conf['extra_login_security'] = true;

    为:

    $conf['servers'][0]['host'] = 'localhost';     
    * 指定postgresql 在本机

    $conf['servers'][0]['defaultdb'] = 'posrgres';   
    * PostgreSQL 8.1 以上版本,你需要到将这项设定为 'postgres'

    $conf['extra_login_security'] = false;      
    *启用密码认证
    :wq

  2. exchanged 于 2007-02-11 00:19:31发表:

    五、建立数据库

    #su postgres

    $initdb -D /var/postgresql/data

    $exit
    (如果这步提示 /tmp/.s.PGSQL.5432.lock 文件已存在无法创建该文件,请把/tmp/.s.PGSQL.5432.lock 删除,再次启动数据)


    六、启动数据库、建立新用户、创建数据

    #su postgres

    $/usrl/local/bin/postmaster -D /var/postgresql/data

    或者

    $/usr/local/bin/pg_ctl -D /var/postgresql/data -l /var/postgresql/data/pgsql.log start

    $createuser -P       
    *创建一个带密码的超级用户 -P 大写

    Enter name of role to add: (新的用户名)

    Enter password for new role: (新密码)

    Enter it again: (确认密码)

    Shall the new role be a superuser? (y/n) y       
    (使该用户拥有超级用户权限y/n) 如果输入y,下面两项将不再出现

    Shall the new role be allowed to create databases?(y/n)     
    (使该用户拥有创建新数据库的权限y/n)

    Shall the new role be allowed to create more new roles?(y/n)  
    (使该用户拥有新用户创建的权限y/n)

    $/usr/local/bin/createdb -O admin -E UNICODE phpbb

    *(为admin用户创建一个编码为UTF-8的phpbb数据库,注意大小写,admin必须拥有superuser权限)*

    CREATE DATABASE

    $exit

    七、配置postgresql

    #vi /var/postgresql/data/pg_hba.conf

    # TYPE  DATABASE  USER  CIDR-ADDRESS  METHOD

    # "local" is for Unix domain socket connections only
    local   postgres   all              trust
    # IPv4 local connections:
    host     all     all    0.0.0.0 0.0.0.0   md5 * 密码认证


    #vi /var/postgresql/data/postgresql.conf

    改:


    CODE:[Copy to clipboard]#listen_addresses = 'localhost'

    #port = 5432

    #unix_socket_permissions = 0777

    #authentication_timeout = 60

    #password_encryption = on

    #db_user_namespace = off

    为:

    listen_addresses = '*'   

    port = 5432

    unix_socket_permissions = 0700

    authentication_timeout = 60

    password_encryption = on

    db_user_namespace = off
    :wq