在CentOS 7上安装PostgreSQL

介绍

PostgreSQL是世界上最先进的开源关系数据库管理系统(RDBMS)。它符合ANSI SQL:2008标准,并具有其规范中定义的大多数数据类型,包括INTEGER,NUMERIC,BOOLEAN,CHAR,VARCHAR,DATE,INTERVAL和TIMESTAMP。

它已经进行了超过15年的积极开发,并且由于添加了JSON和JSONB本机数据类型而引起了越来越多的关注,这使其被视为解决NoSQL传统上用来解决问题的可行解决方案。

安装

更新yum存储库:

sudo yum install update

获取适用于CentOS 7的最新PostgreSQL软件包:

  • 访问官方存储库并找到适用于CentOS 7的PostgreSQL的最新稳定版本(撰写本文时,最新版本为9.3)。
  • 右键单击下载链接,然后复制其地址。
  • 通过运行以下命令在VPS上下载:(curl -O http://yum.postgresql.org/9.3/redhat/rhel-7-x86_64/pgdg-centos93-9.3-1.noarch.rpm将URL替换为repo包)。

安装下载的PostgreSQL软件包:

sudo rpm -ivh pgdg-centos93-9.3-1.noarch.rpm

安装PostgreSQL:

sudo yum -y install postgresql93-server postgresql93-contrib

配置并启动数据库

初始化数据库:

sudo service postgresql-9.3 initdb

如果前面的命令失败,请直接调用安装程序二进制文件:

sudo /usr/pgsql-9.3/bin/postgresql93-setup initdb

发出以下命令以编辑/etc/sysconfig/pgsql/postgresql-9.3文件。如果文件不存在,它将为空白,这很好。

nano /etc/sysconfig/pgsql/postgresql-9.3

添加或修改PGPORT和PGDATA选项,使其与下面的示例匹配。编辑后按CTRL + X,然后按Y。

PGPORT=5438
PGDATA=/pgdata93

启动数据库并将其配置为在服务器启动时运行:

sudo service postgresql-9.3 start
sudo chkconfig postgresql-9.3 on

访问数据库

PostgreSQL在postgres没有密码的系统上创建一个默认用户。切换到postgres用户并访问PostgreSQL提示符。

su postgres
psql 

在PosgreSQL提示符下时,您可以键入help以查看帮助访问数据库的命令列表。请注意,您可能需要输入q:跟随q以退出帮助屏幕。

使用范例

列出系统上的所有数据库并连接到默认数据库postgres

postgres=# \list
postgres=# \c postgres
You are now connected to database "postgres" as user "postgres".

列出Postgres数据库中存在的表(应该没有):

postgres=# \d
No relations found.

创建一个简单的表并检查以确保其创建正确:

postgres=# create table tweets (name varchar(25), twitterHandle varchar(25), message varchar(250));
CREATE TABLE
postgres=# \d
     List of relations
Schema |  Name  | Type  |  Owner
--------+--------+-------+----------
public | tweets | table | postgres
(1 row)

在表中插入一些记录:

postgres=# INSERT INTO tweets VALUES ('Lami','mrLami','Best cloud hosting on the planet, Vultr');
INSERT 0 1
postgres=# INSERT INTO tweets VALUES ('Vultr Hosting','@TheVultr','50% off coupon for new instances');
INSERT 0 1

查询表以查看结果:

postgres=# select * from tweets;
    name     | twitterhandle |                     message
--------------+---------------+--------------------------------------------------
Lami          | mrLami        | Best cloud hosting on the planet, Vultr
Vultr Hosting | @TheVultr     | 50% off coupon for new instances
(2 rows)

从PosgreSQL提示符退出:

postgres=# \q

控制PostgreSQL服务:

sudo service postgresql-9.3 start
sudo service postgresql-9.3 stop
sudo service postgresql-9.3 restart

结论

PosgreSQL是一个高度高级的数据库,它不仅可以完成本文概述的功能,还可以完成更多的工作。请访问PostgreSQL文档以进一步阅读更具体的功能,例如:多版本并发控制(MVCC),时间点恢复,表空间,异步复制,嵌套事务(保存点),在线/热备份,查询计划程序/优化程序以及提前写日志以提高容错能力。

其他版本

的Ubuntu

CentOS的7

由Lami Adabonyan撰写

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息