PostgreSQL入門簡介

PostgreSQL簡介

PostgreSQL是一個免費的對象-關系型數據庫服務器(ORDBMS),遵循靈活的開源協議BSD。

PostgreSQL開發者將其念作post-gres-Q-L。

PostgreSQL目前是世界上最先進的開源關系型數據庫,支持豐富的數據類型(如JSON、JSONB、數組類型及二進制大對象)和自定義類型。提供瞭豐富的接口。很容易拓展它的功能,如可以在GIST框架下實現自己的索引類型等。

PostgreSQL是完全的事務安全性數據庫,完整地支持外鍵、視圖、觸發器和存儲過程(函數),並支持多種語言開發存儲過程,如PL/PGSQL、Perl、Python等。

PostgreSQL對很多高級開發語言有原生的編程接口,如C/C++、Java、.Net、Perl、Python、Ruby、Tcl 和ODBC以及其他語言等。

在中國,瀚高數據庫是唯一的PostgreSQL商業發行版公司。

什麼是數據庫?

數據庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫。

每個數據庫都有一個或多個不同的 API 用於創建,訪問,管理,搜索和復制所保存的數據。

我們也可以將數據存儲在文件中,但是在文件中讀寫數據速度相對較慢。

所以,現在我們使用關系型數據庫管理系統(RDBMS)來存儲和管理的大數據量。所謂的關系型數據庫,是建立在關系模型基礎上的數據庫,借助於集合代數等數學概念和方法來處理數據庫中的數據。

RDBMS 是關系數據庫管理系統,是建立實體之間的聯系,最後得到的是關系表。

ORDBMS(對象關系數據庫系統)是面向對象技術與傳統的關系數據庫相結合的產物,查詢處理是 ORDBMS 的重要組成部分,它的性能優劣將直接影響到DBMS 的性能。ORDBMS在原來關系數據庫的基礎上,增加瞭一些新的特性。

OODBMS 面向對象數據庫管理系統,將所有實體都看著對象,並將這些對象類進行封裝,對象之間的通信通過消息 OODBMS 對象關系數據庫在實質上還是關系數據庫 。

一、PostgreSQL數據庫安裝

 1)YUM安裝

* 安裝存儲庫
sudo yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-redhat-repo-42.0-11.noarch.rpm
* 安裝客戶端
sudo yum install postgresql	  
* 安裝服務端
sudo yum install postgresql-server   
* 安裝拓展包
sudo yum install postgresql-devel.x86_64 
* 安裝附加模塊
sudo yum install postgresql-contrib.x86_64 

2)驗證postgresql安裝

# rpm -qa | grep postgresql
postgresql-libs-9.2.23-3.el7_4.x86_64
postgresql-9.2.23-3.el7_4.x86_64
postgresql-server-9.2.23-3.el7_4.x86_64

3)配置數據庫

* 初始化數據庫
sudo /usr/bin/postgresql-setup initdb
 
* 啟動postgresql服務
sudo systemctl start postgresql
  
* 設置開機自啟動
sudo systemctl enable postgresql

* 登錄postgresql
su - postgres
psql -U postgres

* 修改postgres用戶密碼
ALTER USER postgres with encrypted password 'postgres';

4)遠程配置 開啟遠程訪問
sudo vi /var/lib/pgsql/data/postgresql.conf

listen_addresses = '*'     # what IP address(es) to listen on;

信任遠程連接
sudo vi /var/lib/pgsql/data/pg_hba.conf

# IPv4 local connections:
host  all       all       127.0.0.1/32      trust
host  all       all       192.168.9.139/32    trust

重啟postgresql服務
systemctl restart postgresql 5)psql連接 連接命令

psql -d postgres -h 192.168.9.139 -p 5432 -U postgres

6)用戶管理

-- 創建用戶
CREATE USER admin WITH PASSWORD '123456';	
-- 修改密碼
ALTER USER admin with encrypted password 'admin';

連接驗證
psql -d postgres -h 192.168.9.139 -p 5432 -U admin

二、數據庫操作

1)創建數據庫

* 普通創建
  CREATE DATABASE pgdb;

* 創建指定用戶數據庫
  CREATE DATABASE pgadmindb OWNER admin;	
  GRANT ALL PRIVILEGES ON DATABASE pgadmindb TO admin;

2)刪除數據庫

* 普通刪除
  DROP DATABASE pgdb;

* 判斷數據庫存在後再刪除
  DROP DATABASE IF EXISTS pgdb;

3)其它操作

* 切換數據庫
  \c pgdb;

* 退出數據庫
  \q

三、數據表操作

1)創建表

CREATE TABLE numerical (
 "a" int4,
 "b" int4
);

2)刪除表

DROP TABLE IF EXISTS numerical;

3)加載數據

INSERT INTO numerical (SELECT i, i + 1 FROM generate_series(1, 10000) AS i);

4)清空數據表

truncate table numerical;

5)查詢

* 統計查詢
SELECT COUNT(1) FROM numerical;

* 累計查詢
SELECT SUM(a) FROM numerical;

* 平均查詢
SELECT SUM(a)/COUNT(1) FROM numerical;

到此這篇關於PostgreSQL入門簡介的文章就介紹到這瞭,更多相關PostgreSQL入門內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: