首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 操作系统 >

Linux 上 PostgreSQL 安装与开机启动

2013-02-17 
Linux 下 PostgreSQL 安装与开机启动1添加用户创建目录useradd postgres -d /usr/local/pgsqlpasswd postg

Linux 下 PostgreSQL 安装与开机启动
1  添加用户  创建目录useradd postgres -d /usr/local/pgsqlpasswd postgresmkdir /usr/local/pgsql/mkdir /usr/local/pgsql/datachown -R postgres /usr/local/pgsqlchown postgres /usr/local/pgsql/data2  设置环境变量vi /etc/profileexport LD_LIBRARY_PATH=/usr/local/pgsql/lib:$LD _LIBRARY_PATHexport PATH=/usr/local/pgsql/bin:$PATHexport PGD ATA=/usr/local/pgsql/dataexport MANPATH=$MANPATH:/usr/local/pgsql/man3  安装./configure --prefix=/usr/local/pgsql ;make;make install4  初始化数据库su postgres/usr/local/pgsql/bin/initd b -D /usr/local/pgsql/data5  添加开机自启动chmod a+x /postgresql-8.1.9(postgresql 解压目录)/contrib/start-scripts/linuxcp /tmp/postgresql-8.1.9/contrib/start- scripts/linux /etc/init.d/postgresqlchkconfig --add postgresql6  换数据库用户 postgres 的密码psql template1  或者    psql -U postgres然后ALTER USER postgres WITH PASSWORD 'password';7  添加外部的访问连接,   在 pg_hba.conf 加上host  all  all  0.0.0.0/0  trust 修改 postgresql.conf listen_addresses = '*'启动/usr/local/pgsql/bin/postmaster -i -D /usr/local/pgsql/data &or/usr/local/pgsql/bin/pg_ctl -i -D /usr/local/pgsql/data -l logfile start关闭    kill -INT `head -1 /usr/local/pgsql/data/postmaster.pid`是了,我来这里就只能总结一下了, Linux 下, postgresql.conf     pg_hba.conf     都是放在$PG_DATA目录下,也就是一般的...../data 目录下  访问的控制是修改 pg_hba.conf 文件,如果加入的是下面行: host all all 192.168.0.0 255.255.255.0  md5 这时,你从那个网段上访问任何数据库时,就要密码,密码在传的过程中是加密码的, 如果加下面一行: host all all 192.168.0.0 255.255.255.0 password 这时,你从那个网段上访问任何数据库时,就要密码,密码在传的过程中是没加密码的, 如果加下面一行: host all all 192.168.0.0 255.255.255.0 trust 这时,你从那个网段上访问任何数据库时,就不要密码, 修改 postgresql.conf     中    把#tcpip_socket     =     false 改成 tcpip_socket     =     true 这样你在启动时是否加有 i     参数,客户端都可连上你的数据库!一、实现远程连接 Linux 上的 PostgreSQL 服务器。主要分两个步骤: <1>要使 Linux 上的 PostgreSQL 打开  “unix 的 tcpip 套接子”。编辑  $POSTGRES/data/postgresql.conf  文件,将 tcpip_socket=off 改成 tcpip_socket=on 即可。<2>设置远程访问认证机制。编辑  $POSTGRES/data/pg_hba.conf  文件,这个文件上面一大堆都是介绍如何使用这个文件使进行配置的,最下面才是真正让我们填写东西的地方。其中,有一行注释:# TYPE    DATABASE      USER          CIDR- ADDRESS             METHOD说明每一行有五个字段,分别是:连接类型、可使用的数据库名、使用者、DIDR 地址、和验证方法等五项。下面,我只介绍一些针对每个字段常用的选项。字段一:TYPE。可以选择:local 或 host。前者只能允许本地的用户登陆 Postgres 数据库;后者可以接受远程客户登陆。所以,我们应该使用“host”。字段二:DATWABSE连接用户可以使用的数据库名字。可以使 Postgres 的一个具体的数据库名,也可以使用“all”来允许用户访问所有数据库。字段三:USER。可以指定某个具体的用户来连接 Postgres 数据库(还要结合后面的地址字段),也可以使用“all”来允许所有用户连接数据库。字段四:DIDR-ADDRESS。这可能会让您不知所措,不知道它为何物。其实,它就是 IP 地址与掩码的另一种表示方法而已。Postgres 是通过这个字段来了解,允许那些 IP 或 IP 网段连接此服务器。它的格式是:  IP 地址/掩码。  这个掩码和子网掩码是一个道理,只不过是用一个小于等于 32 的正数来表示,表示的正是子网掩码中高几位为 1,比如,255.255.255.0  就是“24”,说明高 24 位是 1。192.168.0.1/32  相当于  IP 为 192.168.0.1,子网掩码为 255.255.255.255 的网段,很显然,这只表明 192.168.0.1IP 自己。如果您对 IP 地址与子网掩码不太了解,请查看相关资料。字段五:METHOD。这是验证方法。可选的有:reject:拒绝这个 IP 的用户访问;md5:密码以 md5 作为 hash 编码;password:密码作为明文传输(好恐怖!);krb5:密码以 krb5 作为 hash 编码。下面举一个例子,来说明如何进行设置:# TYPE    DATABASE      USER          CIDR- ADDRESS             METHOD#允许 IP 为 192.168.0.1 的所有用户登陆到 Postgres 服务器的所有数据库,采用 md5 验证。host all all 192.168.0.1/32  md5#允许用户 testuser 在 192.168.0.XX 的网段任意机器登陆 Postgres 服务器, #只能使用数据库 testdb,采用 md5 验证。host       testdb              testuser 192.168.0.1/24             md5原文链接:http://www.software8.co/shujuku/postgresql/2599.html

热点排行