PostgreSql安裝(Centos7)——CentOS7常用軟件

來自那些年我踩過的坑

postgres有些人估計(jì)都沒有聽說過弄企,沒關(guān)系,可以百度自己了解一下固逗,這里說一下Centos7.6_1810版本的安裝(目前的最新版)

查詢有沒有安裝

rpm -qa|grep postgre

查詢postgre的yum源

yum list |grep postgre

下載地址:https://www.postgresql.org/download/linux/redhat/

一浅蚪、yum安裝

點(diǎn)開下載網(wǎng)址藕帜,安裝姿勢有了。直接看(三惜傲、通用操作)
yum安裝已經(jīng)在/usr/bin中添加了鏈接洽故,可以執(zhí)行postgre的命令。
安裝之后的路徑是:/var/lib/pgsql/10/data/

二盗誊、解壓安裝

1 下載源代碼并解壓
wget https://ftp.postgresql.org/pub/source/v11.0/postgresql-11.0.tar.gz
 tar -xvzf postgresql-11.0.tar.gz  #解壓pg包时甚,并到安裝目錄
./configure
 sudo make
sudo make install

如果編譯過程中遇到問題,比如缺少GCC哈踱、readline荒适、zlib等,安裝方式都是:

yum list |grep xxx
yum install -y xxxx
yum install -y xxxx-dev*
2 創(chuàng)建用戶組和用戶
groupadd postgres    #新增用戶組
useradd -g postgres postgres    #新增用戶
 passwd postgres    #為用戶設(shè)置密碼
3 創(chuàng)建數(shù)據(jù)目錄
 mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data    #設(shè)置data文件加屬性
chmod 700 /usr/local/pgsql/data    #設(shè)置data文件夾權(quán)限
4 數(shù)據(jù)庫操作
su postgres
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data    #初始化數(shù)據(jù)庫
cd /usr/local/pgsql/bin/  & ./pg_ctl [start | stop | restart] -D /usr/local/pgsql/data/   #啟動\停止\重啟數(shù)據(jù)庫 
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &  #設(shè)置日志輸出位置
/usr/local/pgsql/bin/createdb test    #創(chuàng)建測試數(shù)據(jù)庫
5. /usr/local/pgsql/bin/psql test    #啟動測試數(shù)據(jù)庫

三开镣、通用操作

修改密碼

yum安裝postgresql刀诬,默認(rèn)會建一個(gè)名為”postgres”的系統(tǒng)賬號,用于執(zhí)行PostgreSQL邪财;

su - postgres

切換用戶后陕壹,提示符變更為“-bash-4.2$”; #同時(shí)數(shù)據(jù)庫中也會生成一個(gè)名為”postgres”的數(shù)據(jù)庫用戶,且密碼已自動生成;
PostgreSQL在數(shù)據(jù)庫用戶同名的系統(tǒng)賬號下登錄免密树埠;進(jìn)入數(shù)據(jù)庫后修改密碼帐要;

 -bash-4.2$  psql -U postgres 
postgres=#  alter user postgres with password 'postgres@123'
配置文件中,添加訪問(/usr/local/pgsql/data/postgresql.conf)

修改listen_addresses = 'localhost'為listen_addresses = '*'弥奸,允許所有遠(yuǎn)程訪問榨惠;
修改配置文件需要重啟服務(wù)。
手動修改的時(shí)候盛霎,可能配置文件會有點(diǎn)長赠橙,在命令行模式下輸入/listen_addresses 回車,就可以找到了愤炸。

[root@p~]# sed -i "s|#listen_addresses = 'localhost'|listen_addresses = '*'|g" /var/lib/pgsql/10/data/postgre
修改data/pg_hba.conf

trust的意思是用賬戶密碼登錄期揪。

# "local" is for Unix domain socket connections only
local   all             all                                  trust
# IPv4 local connections:
host    all             all             0.0.0.0/0            trust

四、防火墻操作

1. 查看防火墻是否關(guān)閉:firewall-cmd --state
2. 啟動服務(wù):systemctl start firewalld.service
3. 關(guān)閉服務(wù):systemctl stop firewalld.service
4. 重啟服務(wù):systemctl restart firewalld.service
5. 顯示服務(wù)的狀態(tài):systemctl status firewalld.service
6. 在開機(jī)時(shí)啟用服務(wù):systemctl enable firewalld.service
7. 在開機(jī)時(shí)禁用服務(wù):systemctl disable firewalld.service
8. 查看服務(wù)是否開機(jī)啟動:systemctl is-enabled firewalld.service;echo $?
9. 查看已啟動的服務(wù)列表:systemctl list-unit-files|grep enabled
10. 添加開發(fā)端口:firewall-cmd --zone=public --add-port=5432/tcp --permanent
11. 重新加載防火墻:firewall-cmd --reload

http://www.reibang.com/p/ee4ee15d3658

五规个、安裝pgdmin4 web客戶端

(我剛開始裝的時(shí)候找個(gè)資料真的難)
打開下載鏈接:https://www.postgresql.org/ftp/
或者https://www.pgadmin.org/download/pgadmin-4-rpm/
建議直接選擇rpm安裝凤薛,簡單省事。

yum list |grep pgadmin4

因?yàn)槲矣眠^web诞仓,也不知道安裝哪一個(gè)缤苫,干脆裝個(gè)web(然后就裝了好大一堆東西,一大堆pgadmini4的python依賴)墅拭。

yum install -y  pgadmin4-web.noarch

安裝之后的路徑在:/usr/lib/python2.7/site-packages/pgadmin4-web/
打開pgadmin4

cd /usr/lib/python2.7/site-packages/pgadmin4-web/
python pgAdmin4.py

初次配置pgadmin4:設(shè)置郵箱/密碼(登錄用)
訪問pgadmin4:http://localhost:5050

啟動很麻煩活玲?寫個(gè)腳本就好了

(腳本能用!想關(guān)閉的話,ps -ef |grep pgadmin4 kill -9 +上面列出的第一個(gè)數(shù)字)

cd /usr/lib/python2.7/site-packages/pgadmin4-web/
vim pgadmin4.sh
#添加如下內(nèi)容
#執(zhí)行 i
#!/bin/bash
nohup  python /usr/lib/python2.7/site-packages/pgadmin4-web/pgAdmin4.py &
#執(zhí)行esc  
#執(zhí)行:wq!
chmod 777 pgadmin4.sh
ln -s   /usr/lib/python2.7/site-packages/pgadmin4-web/pgadmin4.sh /usr/local/bin/pgadmin4
#執(zhí)行pgadmin4 就會啟動web客戶端

命令行登錄

$ psql -U dbuser -d exampledb

登錄后的權(quán)限操作參考
https://blog.csdn.net/u010166404/article/details/53188882
其實(shí)很多初學(xué)者也不一定看的懂舒憾。镀钓。

-- 連接命令(最后加上<filepath  就是還原命令,最后說)
-- 用戶U大寫
psql -h 127.0.0.1 -p 5432  -U user_name -d db_name 
-- 創(chuàng)建用戶的示例
CREATE USER userName WITH LOGIN NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT REPLICATION CONNECTION LIMIT -1 password 'pwd';
-- 創(chuàng)建超級用戶
CREATE USER userName WITH SUPERMAN password 'pwd';
-- 創(chuàng)建模式,并分配給userName用戶
CREATE SCHEMA schemaName authorization userName;
-- 更改權(quán)限
ALTER ROLE name SET enable_indexscan TO off;

常用的控制臺命令

\password           設(shè)置密碼
\q                  退出
\h                  查看SQL命令的解釋镀迂,比如\h select
\?                  查看psql命令列表
\l                  列出所有數(shù)據(jù)庫
\c [database_name]  連接其他數(shù)據(jù)庫
\d                  列出當(dāng)前數(shù)據(jù)庫的所有表格
\d [table_name]     列出某一張表格的結(jié)構(gòu)
\x                  對數(shù)據(jù)做展開操作
\du                 列出所有用戶

常用的SQL語句

# 創(chuàng)建新表
CREATE TABLE table_name(name VARCHAR(20), birth DATE);
# 插入數(shù)據(jù)
INSERT INTO table_name(name, birth) VALUES('歐文', '1994-08-23');
# 查詢記錄
SELECT * FROM table_name;
# 更新數(shù)據(jù)
UPDATE table_name set name = '勒夫' WHERE name = '歐文';
# 刪除記錄
DELETE FROM table_name WHERE name = '歐文' ;
# 添加字段
ALTER TABLE table_name ADD email VARCHAR(40);
# 更改字段類型
ALTER TABLE table_name ALTER COLUMN birth SET NOT NULL;
# 設(shè)置字段默認(rèn)值(注意字符串使用單引號)
ALTER TABLE table_name ALTER COLUMN email SET DEFAULT 'example@example.com';
# 去除字段默認(rèn)值
ALTER TABLE table_name ALTER email DROP DEFAULT;
# 重命名字段
ALTER TABLE table_name RENAME COLUMN birth TO birthday;
# 刪除字段
ALTER TABLE table_name DROP COLUMN email;
# 表重命名
ALTER TABLE table_name RENAME TO backup_table;
# 刪除表
DROP TABLE IF EXISTS backup_table;
# 刪除庫
\c postgres;
DROP DATABASE IF EXISTS hello;

備份和恢復(fù)

$ pg_dump --format=t -d db_name -U user_name -h 127.0.0.1 -O -W  > dump.sql
$ psql -h 127.0.0.1 -U user_name -d db_name < dump.sql

分布式事物

XA是open group提出的分布式事務(wù)處理規(guī)范丁溅,JTA支持XA規(guī)范,JTA只規(guī)定了接口探遵,有些應(yīng)用容器提供實(shí)現(xiàn)窟赏,也有一些三方的開源實(shí)現(xiàn)可用,比如Atomikos别凤。

如果PostgreSQL參與分布式事務(wù)(XA)處理,則需要在配置文件postgres.conf中設(shè)置參數(shù)领虹,此參數(shù)用于指定分布式事務(wù)中兩步提交準(zhǔn)備事務(wù)的最大數(shù)量规哪。默認(rèn)值為0,此時(shí)不支持分布式事務(wù)塌衰。

max_prepared_transactions參數(shù)值不應(yīng)該小于max_connections參數(shù)值诉稍,這樣每一個(gè)session都可以至少有一個(gè)可用的準(zhǔn)備事務(wù)。

max_connections = 100
max_prepared_transactions = 100

本文地址:http://www.reibang.com/p/80b690597541

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末最疆,一起剝皮案震驚了整個(gè)濱河市杯巨,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌努酸,老刑警劉巖服爷,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異获诈,居然都是意外死亡仍源,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進(jìn)店門舔涎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來笼踩,“玉大人,你說我怎么就攤上這事亡嫌『坑冢” “怎么了?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵挟冠,是天一觀的道長于购。 經(jīng)常有香客問我,道長知染,這世上最難降的妖魔是什么价涝? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮持舆,結(jié)果婚禮上色瘩,老公的妹妹穿的比我還像新娘伪窖。我一直安慰自己,他們只是感情好居兆,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布覆山。 她就那樣靜靜地躺著,像睡著了一般泥栖。 火紅的嫁衣襯著肌膚如雪簇宽。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天吧享,我揣著相機(jī)與錄音魏割,去河邊找鬼。 笑死钢颂,一個(gè)胖子當(dāng)著我的面吹牛钞它,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播殊鞭,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼遭垛,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了操灿?” 一聲冷哼從身側(cè)響起锯仪,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎趾盐,沒想到半個(gè)月后庶喜,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡救鲤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年溃卡,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蜒简。...
    茶點(diǎn)故事閱讀 40,117評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡瘸羡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出搓茬,到底是詐尸還是另有隱情犹赖,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布卷仑,位于F島的核電站峻村,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏锡凝。R本人自食惡果不足惜粘昨,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧张肾,春花似錦芭析、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至芍秆,卻和暖如春惯疙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背妖啥。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工霉颠, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人荆虱。 一個(gè)月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓蒿偎,卻偏偏與公主長得像,于是被迫代替她去往敵國和親克伊。 傳聞我的和親對象是個(gè)殘疾皇子酥郭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,060評論 2 355

推薦閱讀更多精彩內(nèi)容