Linux下PostgreSQL-12.0安装部署详细步骤

embedded/2025/1/21 17:51:55/
一、安装环境
  • postgresql-12.0

  • CentOS-7.6

  • 注意:确认linux系统可以正常连接网络,因为在后面需要添加依赖包。

  • 二、pg数据库安装包下载

    下载地址:postgresql.org/ftp/source/" rel="nofollow" title="PostgreSQL: File Browser">PostgreSQL: File Browser

    选择要安装的版本进行下载:

  • 三、安装依赖包

    在要安装postgresql数据库的Linux服务器上执行以下命令安装所需要的依赖包:

  •   yum install -y perl-ExtUtils-Embed readline-devel zlib-devel pam-devel libxml2-devel libxslt-devel openldap-devel python-devel gcc-c++ openssl-devel cmake
    
    四、安装postgres

    1、在根目录下新建/opt/pgsql文件夹,并将pgsql的压缩包移入。

  • 2、解压压缩包

  •   tar -zxvf postgresql-12.0.tar.gz 
    

    3、进入解压后的文件夹

  •   cd postgresql-12.0
    

    4、编译postgresql源码

  •   ./configure --prefix=/opt/pgsql/postgresqlmakemake install
    

    至此,已完成postgreql的安装。进入/opt/pgsql/postgresql目录可以看到安装后的postgresql的文件。

  • 五、创建用户组postgres并创建用户postgres
  •   groupadd postgresuseradd -g postgres postgresid postgres
    

  • postgresql_58">六、创建postgresql数据库的数据主目录并修改文件所有者
  • 这个数据库主目录是随实际情况而不同,这里我们的主目录是在/opt/pgsql/postgresql/data目录下

  •   mkdir datachown postgres:postgres data
    

  • 七、配置环境变量

    进入home/postgres目录可以看到.bash_profile文件。

  •   cd /home/postgresls -al
    

    编辑修改.bash_profile文件。

  •   vim .bash_profile 
    

    添加以下内容。

  •   export PGHOME=/opt/pgsql/postgresqlexport PGDATA=/opt/pgsql/postgresql/dataPATH=$PATH:$HOME/bin:$PGHOME/bin
    

    保存,退出vim。执行以下命令,使环境变量生效

  •   source .bash_profile 
    
    八、切换用户到postgres并使用initdb初使用化数据库
  •   su - postgres
    

initdb

可以看到/opt/pgsql/postgresql/data已经有文件了。

cd /opt/pgsql/postgresql/data

九、配置服务

修改/opt/pgsql/postgresql/data目录下的两个文件。

postgresql.conf 配置PostgreSQL数据库服务器的相应的参数。

pg_hba.conf 配置对数据库的访问权限。

vim postgresql.conf 

其中,参数“listen_addresses”表示监听的IP地址,默认是在localhost处监听,也就是127.0.0.1的ip地址上监听,只接受来自本机localhost的连接请求,这会让远程的主机无法登陆这台数据库,如果想从其他的机器上登陆这台数据库,需要把监听地址改为实际网络的地址,一种简单的方法是,将行开头的#去掉,把这个地址改为*,表示在本地的所有地址上监听。

vim pg_hba.confhost    all            all             0.0.0.0/0               trust
#新增这一行

找到最下面这一行,这样局域网的人才能访问

十、设置PostgreSQL开机自启动

PostgreSQL的开机自启动脚本位于PostgreSQL源码目录的contrib/start-scripts路径下。

linux文件即为linux系统上的启动脚本

cd /opt/pgsql/postgresql-12.0/contrib/start-scripts

切换为root用户,修改linux文件属性,添加X属性

su root

chmod a+x linux

复制linux文件到/etc/init.d目录下,更名为postgresql

cp linux /etc/init.d/postgresql

修改/etc/init.d/postgresql文件的两个变量

prefix设置为postgresql的安装路径:/pgsql/postgresql

PGDATA设置为postgresql的数据目录路径:/pgsql/postgresql/data

vim /etc/init.d/postgresql 

设置postgresql服务开机自启动

chkconfig --add postgresql

执行service postgresql start,启动PostgreSQL服务

service postgresql start


http://www.ppmy.cn/embedded/155835.html

相关文章

SparkSQL数据模型综合实践

文章目录 1. 实战概述2. 实战步骤2.1 创建数据集2.2 创建数据模型对象2.2.1 创建常量2.2.2 创建加载数据方法2.2.3 创建过滤年龄方法2.2.4 创建平均薪水方法2.2.5 创建主方法2.2.6 查看完整代码 2.3 运行程序,查看结果 3. 实战小结 1. 实战概述 在本次实战中&#…

使用nginx搭建通用的图片代理服务器,支持http/https/重定向式图片地址

从http切换至https 许多不同ip的图片地址需要统一进行代理 部分图片地址是重定向地址 nginx配置 主站地址:https://192.168.123.100/ 主站nginx配置 server {listen 443 ssl;server_name localhost;#ssl证书ssl_certificate ../ssl/ca.crt; #私钥文件ssl_ce…

【MySQL篇】使用mysqldump导入报错Unknown collation: ‘utf8mb4_0900_ai_ci‘的问题解决

💫《博主介绍》:✨又是一天没白过,我是奈斯,从事IT领域✨ 💫《擅长领域》:✌️擅长阿里云AnalyticDB for MySQL(分布式数据仓库)、Oracle、MySQL、Linux、prometheus监控;并对SQLserver、NoSQL(…

精通Python (10)

一,基于tkinter模块的GUI GUI是图形用户界面的缩写,图形化的用户界面对使用过计算机的人来说应该都不陌生,在此也无需进行赘述。Python默认的GUI开发模块是tkinter(在Python 3以前的版本中名为Tkinter),从这…

Linux:EXT2文件系统

✨✨所属专栏:Linux✨✨ ✨✨作者主页:嶔某✨✨ 理解硬件 磁盘 磁盘,顾名思义就是用磁性来存储信息的。磁盘是一种永久性存储介质,在计算机中,磁盘几乎是唯一的机械设备。与磁盘相对应的就是内存,但是内存…

final修饰的用法

1、final修饰类 被final修饰的类不可以在被继承。 比如在Java中String就是final修饰的不可以被继承 2、final修饰成员变量 同时final也可以修饰局部变量 final int N5; 3、final修饰静态变量 final修饰静态的成员变量,(在方法中不能定义静态的属性…

【Vim Masterclass 笔记16】S07L32 + L33:同步练习09 —— 掌握 Vim 宏操作的六个典型案例(含点评课内容)

文章目录 S07L32 Exercise 09 - Macros1 训练目标2 操作指令2.1. 打开 macros-practice.txt 文件2.2. 练习1:将旧版 Python 代码转换为新版写法2.3. 练习2:根据列表内容批量创建 Shell 脚本2.4. 练习3:对电话号码作格式化处理2.5. 练习4&…

两份PDF文档,如何比对差异,快速定位不同之处?

PDF文档比对是通过专门的工具或软件,自动检测两个PDF文件之间的差异,并以可视化的方式展示出来。这些差异可能包括文本内容的修改、图像的变化、表格数据的调整、格式的改变等。比对工具通常会标记出新增、删除或修改的部分,帮助用户快速定位…