rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 操作系统 » OpenBSD

PostgreSQL在OpenBSD环境README

在OpenBSD环境使用PostgreSQL

有两种不同的帐户涉及与PostgreSQL的工作:
一个是OpenBSD的userid,
另一种是如'_postgresql',类似userid的文件, 这是PostgreSQL的一部分。
另外,通常名为'Postgres'的账户,并不是 OpenBSD的用户名,
也就是说你不会在/etc/passwd文件中找到它,只是一个帐户
内部的数据库系统。'Postgres'帐户被称为数据库管理员
帐户(数据库管理员)并且是被创建好了的,当一个新的数据库要初始化时使用initdb命令。

如果你是第一次安装PostgreSQL,首先你必须创建默认数据库。
在下面的例子中,我们将
在/ var / postgresql/中创建一个数据库帐户'Postgres'和MD5认证数据。
我们将提示输入密码,以保护数据库管理员帐户:

       # su - _postgresql
       $ mkdir /var/postgresql/data
       $ initdb -D /var/postgresql/data -U postgres -A md5 -W

强烈建议您不要使用Postgres的数据库管理员帐户
除了创建更多的 user 或 databases 或 管理性质的任务。
使用PostgreSQL的权限系统,以确保一个数据库只有programs/users具有修改权限。

请参阅更多信息PostgreSQL的网站,特别是当您要升级现有的数据库安装。

-自动启动和停止-

要在开机时启动PostgreSQL和在关机时关闭它,添加以下行到/etc/rc.local中和/etc/rc.shutdown,
分别是:

/etc/rc.local:

if [ -x /usr/local/bin/pg_ctl ]; then
 echo -n ' postgresql'
 su -l _postgresql -c "nohup /usr/local/bin/pg_ctl start \
     -D /var/postgresql/data -l /var/postgresql/logfile \
     -o '-D /var/postgresql/data' >/dev/null"
fi

/etc/rc.shutdown:

if [ -f /var/postgresql/data/postmaster.pid ]; then
 su -l _postgresql -c "/usr/local/bin/pg_ctl stop -m fast \
      -D /var/postgresql/data"
 rm -f /var/postgresql/data/postmaster.pid
fi

网络连接和调整

要允许TCP连接(和其他选项),编辑该文件:

/var/postgresql/data/postgresql.conf

并编辑pg_hba.conf的(在同一目录)适当修改,让你的网络连接。

SysV内核指针的GENERIC默认大小不是足够大,不足以让数据库满载。
服务器运行这样一个资料库,
你可以在/ etc / sysctl.conf中以下内容加入最低限制:

 kern.seminfo.semmni=256
 kern.seminfo.semmns=2048
在i386下为了满足的连接(“250)大量,您可能还需要增加最大共享内存段大小,
尝试:
 kern.shminfo.shmmax=50331648 # this is 48MB.
     # default on i386 is 32MB
     # other archs will vary
这些数字的调整应该取决于系统的使用。您也将需要调整在postgresql.conf文件中的值增加后台连接数量。

默认情况下,_postgresql用户和postmaster还有后台
程序在login时以"deamon"类型运行。在一个繁忙的服务器,
最好把_postgresql用户和进程设置成他们自己的login类型和调整资源,如更加开放文件描述符等。

例如,加入这些到login.conf中文件中:

 postgresql:\
  :openfiles-cur=768:\
  :tc=daemon:

如果有必要,重建login.conf.db文件:

# cap_mkdb /etc/login.conf

用vipw或chsh改变login类型。

超过250的连接,这些数字应该要增加。请报告任何改动和经验
维护人员,以便我们能够更新这方面的未来版本的文件。

Kerberos认证

默认情况下,PostgreSQL服务器需要它自己的krb5.keytab文件。它
应当具有可读性只对_postgresql用户。默认位置 该文件是
'/ etc/postgresql/krb5.keytab',但可调通过设置postgresql.conf文件中的krb_server_keyfile行。

生成keytab:

 # mkdir /etc/postgresql
 # ktutil -k /etc/postgresql/krb5.keytab get postgres/server.domain
 # chown _postgresql:_postgresql /etc/postgresql/krb5.keytab

客户端/前端

许多应用程序可以马上使用PostgreSQL数据库。为方便
管理PostgreSQL数据库,两个客户端是值得注意的:

www/phppgadmin         基于网络的用户界面,它使用的是PHP5
databases/pgadmin3     图形用户界面,它使用的是wxWidgets

顶一下
(0)
踩一下
(0)