Linux postgresql 安装配置
### Linux PostgreSQL安装与配置详解 #### 一、安装PostgreSQL 在Linux环境下,PostgreSQL数据库的安装主要通过RPM包管理器完成。本节将详细阐述如何在Linux系统上安装PostgreSQL及其相关组件。 ##### 1.1 RPM包检查与准备 确认RPM包的存在,这一步可以通过在`DataBasePackages`目录下执行`ls | grep postgre`命令来完成。此操作会列出所有包含“postgre”关键字的文件,即PostgreSQL的相关RPM包。在给定的内容中,我们可以看到一系列PostgreSQL相关的RPM包,包括: - `postgresql-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-contrib-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-devel-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-docs-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-jdbc-8.4.701-3.el6.i686.rpm` - `postgresql-libs-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-odbc-08.04.0200-1.el6.i686.rpm` - `postgresql-plperl-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-plpython-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-pltcl-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-server-8.4.9-1.el6_1.1.i686.rpm` - `postgresql-test-8.4.9-1.el6_1.1.i686.rpm` - `qt-postgresql-4.6.2-20.el6.i686.rpm` 这些RPM包涵盖了PostgreSQL的核心组件以及各种扩展插件,如Java连接器(`postgresql-jdbc`)、ODBC驱动(`postgresql-odbc`)等。 ##### 1.2 安装过程 接下来,执行`rpm -ivh --nodeps postgresql-*`命令来安装所有PostgreSQL相关包。这里使用了`--nodeps`选项,意味着安装时不会检查依赖关系,这在某些情况下可能会导致问题,但为了演示目的,此处省略了依赖检查。在实际环境中,建议先解决所有依赖问题再进行安装。 在安装过程中,会遇到一个警告:“Header V3 RSA/SHA256 Signature, keyID fd431d51: NOKEY”。这表明系统缺少验证RPM包签名的公钥。虽然这通常不会阻止安装,但在生产环境中应确保所有软件包的来源安全可信。 安装完成后,可能会出现一个错误提示:“/var/tmp/rpm-tmp.eLCJ5n: line 1: /usr/bin/rebuild-gcj-db: No such file or directory”。这通常是由于系统中缺少某些工具或配置不正确导致的。在多数情况下,这不影响PostgreSQL的正常运行,但在遇到功能缺失或性能问题时,应进一步排查并修复该错误。 #### 二、PostgreSQL初始化与配置 一旦安装完毕,下一步是初始化数据库。这通常通过`service postgresql initdb`命令实现。此命令会在PostgreSQL的数据目录创建必要的文件结构,为启动服务做准备。 初始化完成后,可以编辑`/var/lib/pgsql/data/postgresql.conf`文件以调整PostgreSQL的配置。例如,在示例中,`listen_addresses`参数被设置为`'*'`,这意味着PostgreSQL将监听所有网络接口上的请求,默认端口为5432。这是一个重要的设置,因为它决定了哪些客户端能够连接到数据库服务器。 此外,`port`参数也非常重要,它指定了PostgreSQL监听的TCP/IP端口号。如果需要更改默认端口,只需修改此参数即可。但是,更改后必须重启PostgreSQL服务才能使新设置生效。 PostgreSQL在Linux下的安装与配置涉及到多个步骤,包括RPM包的检查与安装、数据库的初始化以及关键配置项的调整。每个环节都需要仔细处理,以确保数据库系统的稳定性和安全性。在生产环境中,还应考虑数据备份、高可用性策略以及性能优化等方面,以满足业务需求。





























[root@DataBase Packages]# ls |grep postgre
postgresql-8.4.9-1.el6_1.1.i686.rpm
postgresql-contrib-8.4.9-1.el6_1.1.i686.rpm
postgresql-devel-8.4.9-1.el6_1.1.i686.rpm
postgresql-docs-8.4.9-1.el6_1.1.i686.rpm
postgresql-jdbc-8.4.701-3.el6.i686.rpm
postgresql-libs-8.4.9-1.el6_1.1.i686.rpm
postgresql-odbc-08.04.0200-1.el6.i686.rpm
postgresql-plperl-8.4.9-1.el6_1.1.i686.rpm
postgresql-plpython-8.4.9-1.el6_1.1.i686.rpm
postgresql-pltcl-8.4.9-1.el6_1.1.i686.rpm
postgresql-server-8.4.9-1.el6_1.1.i686.rpm
postgresql-test-8.4.9-1.el6_1.1.i686.rpm
qt-postgresql-4.6.2-20.el6.i686.rpm
[root@DataBase Packages]# rpm -ivh --nodeps postgresql-*
warning: postgresql-8.4.9-1.el6_1.1.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:postgresql-libs ########################################### [ 8%]
2:postgresql ########################################### [ 17%]
3:postgresql-server ########################################### [ 25%]
4:postgresql-plperl ########################################### [ 33%]
5:postgresql-plpython ########################################### [ 42%]
6:postgresql-pltcl ########################################### [ 50%]
7:postgresql-test ########################################### [ 58%]
8:postgresql-contrib ########################################### [ 67%]
9:postgresql-devel ########################################### [ 75%]
10:postgresql-docs ########################################### [ 83%]
11:postgresql-odbc ########################################### [ 92%]
12:postgresql-jdbc ########################################### [100%]
[root@DataBase Packages]# service postgresql initdb
Initializing database: [ OK ]
[root@DataBase Packages]# vi /var/lib/pgsql/data/postgresql.conf
# - Connection Settings -
listen_addresses = '*' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost', '*' = all
# (change requires restart)
port = 5432 # (change requires restart)
max_connections = 100 # (change requires restart)
[root@DataBase Packages]# vi /var/lib/pgsql/data/pg_hba.conf
# IPv4 local connections:
host all all 0.0.0.0/0 md5
[root@DataBase Packages]# su postgres
bash-4.1$ psql
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
bash-4.1$ service postgresql status
postmaster is stopped
bash-4.1$ service postgresql start
Starting postgresql service: /etc/init.d/postgresql: line 114: echo: write error: Permission denied
touch: cannot touch `/var/lock/subsys/postgresql': Permission denied
/etc/init.d/postgresql: line 122: /var/run/postmaster.5432.pid: Permission denied
bash-4.1$ exit
exit
[root@DataBase Packages]# service postgresql start
剩余6页未读,继续阅读


- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- A172基于springboot+vue的电池销售系统(LW文档+完整前后端代码+sql脚本+开发文档+全套软件)
- SpringBoot 基于微信小程序的网络安全知识科普平台【附万字论文+PPT+包部署+录制讲解视频】.zip
- 自制的一个编译器, 用于学习,完整实现了词法分析,语法分析,中间代码(SSA)生成,机器码生成,和基于寄存器的虚拟机
- 机器学习算法的原理解析与编程实践指南 机器学习算法原理探究及编程实践方法 机器学习算法原理阐释与编程实践教程 机器学习算法原理剖析及编程实践详解 机器学习算法原理与编程实践全解析 机器学习算法原理及编
- A172基于springboot+vue的电池销售系统(LW文档+完整前后端代码+sql脚本+开发文档+全套软件)
- A173基于springboot+vue的酒店点餐管理系统(完整前后端代码+sql脚本+开发文档+全套软件)
- 网易云课程菜菜的机器学习
- A173基于springboot+vue的酒店点餐管理系统(完整前后端代码+sql脚本+开发文档+全套软件)
- 机器学习-支持向量机与神经网络
- python培训视频及文档.zip
- A174基于springboot+vue的推荐算法的智能书店的设计与实现(LW文档+完整前后端代码+sql脚本+开发文档+全套软件)
- 网易云课堂中菜菜老师的机器学习课程
- 《机器学习实战》基于python3.6的代码实现
- A174基于springboot+vue的推荐算法的智能书店的设计与实现(LW文档+完整前后端代码+sql脚本+开发文档+全套软件)
- 【最新版】 GJB 981A-2021《粘弹阻尼材料强迫非共振型动态测试方法》 (1).pdf
- 【最新版】 GJB 777B-2021 交流测速发电机通用规范.pdf


