设为首页 收藏本站
查看: 404|回复: 0

[经验分享] Linux 下 PostgreSQL 安装与开机启动

[复制链接]

尚未签到

发表于 2016-2-18 08:31:24 | 显示全部楼层 |阅读模式
  1  添加用户  创建目录
useradd postgres -d /usr/local/pgsql
passwd postgres
mkdir /usr/local/pgsql/
mkdir /usr/local/pgsql/data
chown -R postgres /usr/local/pgsql
chown postgres /usr/local/pgsql/data
2  设置环境变量
vi /etc/profile
export LD_LIBRARY_PATH=/usr/local/pgsql/lib:$LD _LIBRARY_PATH
export PATH=/usr/local/pgsql/bin:$PATH
export PGD ATA=/usr/local/pgsql/data
export MANPATH=$MANPATH:/usr/local/pgsql/man
  3  安装
./configure --prefix=/usr/local/pgsql ;make;make install
4  初始化数据库
su postgres
/usr/local/pgsql/bin/initd b -D /usr/local/pgsql/data
5  添加开机自启动
chmod a+x /postgresql-8.1.9(postgresql 解压目录)/contrib/start-scripts/linux
cp /tmp/postgresql-8.1.9/contrib/start- scripts/linux /etc/init.d/postgresql
chkconfig --add postgresql
6  换数据库用户 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

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-179349-1-1.html 上篇帖子: Linux和Windows下使用Syslog库 下篇帖子: linux系统批量格式化磁盘
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表