Ubuntu PostgreSQL安裝和配置的介紹
1、安裝
使用如下命令,會(huì)自動(dòng)安裝最新版,這里為9.5
sudo apt-get install postgresql
安裝完成后,默認(rèn)會(huì):
- (1)創(chuàng)建名為"postgres"的Linux用戶(hù)
- (2)創(chuàng)建名為"postgres"、不帶密碼的默認(rèn)數(shù)據(jù)庫(kù)賬號(hào)作為數(shù)據(jù)庫(kù)管理員
- (3)創(chuàng)建名為"postgres"的表
安裝完成后的一些默認(rèn)信息如下:
config /etc/postgresql/9.5/main data /var/lib/postgresql/9.5/main locale en_US.UTF-8 socket /var/run/postgresql port 5432
2、psql命令
安裝完后會(huì)有PostgreSQL的客戶(hù)端psql,通過(guò) sudo -u postgres psql 進(jìn)入,提示符變成: postgres=#
在這里可用執(zhí)行SQL語(yǔ)句和psql的基本命令。可用的基本命令如下:
- \password:設(shè)置密碼
- \q:退出
- \h:查看SQL命令的解釋?zhuān)热鏫h select。
- \?:查看psql命令列表。
- \l:列出所有數(shù)據(jù)庫(kù)。
- \c [database_name]:連接其他數(shù)據(jù)庫(kù)。
- \d:列出當(dāng)前數(shù)據(jù)庫(kù)的所有表格。
- \d [table_name]:列出某一張表格的結(jié)構(gòu)。
- \du:列出所有用戶(hù)。
- \e:打開(kāi)文本編輯器。
- \conninfo:列出當(dāng)前數(shù)據(jù)庫(kù)和連接的信息。
修改數(shù)據(jù)庫(kù)默認(rèn)賬號(hào)的密碼
1、登錄
使用psql命令登錄數(shù)據(jù)庫(kù)的命令為:
psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432
上面命令的參數(shù)含義如下:-U指定用戶(hù),-d指定數(shù)據(jù)庫(kù),-h指定服務(wù)器,-p指定端口。
輸入上面命令以后,系統(tǒng)會(huì)提示輸入dbuser用戶(hù)的密碼。
psql命令存在簡(jiǎn)寫(xiě)形式:
如果當(dāng)前Linux系統(tǒng)用戶(hù),同時(shí)也是PostgreSQL用戶(hù),則可以省略用戶(hù)名(-U參數(shù)的部分)
如果PostgreSQL內(nèi)部還存在與當(dāng)前系統(tǒng)用戶(hù)同名的數(shù)據(jù)庫(kù),則數(shù)據(jù)庫(kù)名也可以省略。
2、修改默認(rèn)管理員賬號(hào)的密碼
以L(fǎng)inux用戶(hù)"postgres"的身份(此時(shí)只有該用戶(hù)有psql命令)執(zhí)行psql客戶(hù)端,進(jìn)入該客戶(hù)端的提示符界面(這里系統(tǒng)用戶(hù)名、數(shù)據(jù)庫(kù)用戶(hù)名、數(shù)據(jù)庫(kù)名都為postgres,故可采用簡(jiǎn)寫(xiě)形式)
sudo -u postgres psql

postgres=# alter user postgres with password '123456';
這樣,管理員"postgres"的密碼就為"123456"。
退出psql客戶(hù)端命令:\q
若要?jiǎng)h除該管理員的密碼,則可用命令:sudo -u postgres psql -d postgres
修改Linux用戶(hù)的密碼
以L(fǎng)inux用戶(hù)"postgres"為例,對(duì)其運(yùn)行passwd命令:
codetc@ubuntu:/etc/postgresql/9.5/main$ sudo -u postgres passwd //也可以 sudo passwd postgres Changing password for postgres. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
配置數(shù)據(jù)庫(kù)以允許遠(yuǎn)程連接訪(fǎng)問(wèn)
安裝完成后,默認(rèn)只能本地才能連接數(shù)據(jù)庫(kù),其他機(jī)子訪(fǎng)問(wèn)不了,需要進(jìn)行配置。
1、修改監(jiān)聽(tīng)地址
sudo gedit /etc/postgresql/9.5/main/postgresql.conf
將 #listen_addresses = 'localhost' 的注釋去掉并改為 listen_addresses = '*'
2、修改可訪(fǎng)問(wèn)用戶(hù)的IP段
sudo gedit /etc/postgresql/9.5/main/pg_hba.conf
在文件末尾添加: host all all 0.0.0.0 0.0.0.0 md5 ,表示運(yùn)行任何IP連接
3、重啟數(shù)據(jù)庫(kù)
sudo /etc/init.d/postgresql restart
添加新用戶(hù)和新數(shù)據(jù)庫(kù)
1、使用PostgreSQL客戶(hù)端psql
運(yùn)行系統(tǒng)用戶(hù)"postgres"的psql命令,進(jìn)入客戶(hù)端:
sudo -u postgres psql
創(chuàng)建用戶(hù)"xiaozhang"并設(shè)置密碼:
postgres=# create user xiaozhang with password '123456';
創(chuàng)建數(shù)據(jù)庫(kù)exampledb,所有者為xiaozhang:
postgres=# create database exampledb owner xiaozhang;
將exampledb數(shù)據(jù)庫(kù)的所有權(quán)限賦予xiaozhang,否則xiaozhang只能登錄psql,沒(méi)有任何數(shù)據(jù)庫(kù)操作權(quán)限:
grant all privileges on database exampledb to xiaozhang;
2、使用shell命令行
安裝PostgreSQL后提供了createuser和createdb命令行程序。
首先創(chuàng)建數(shù)據(jù)庫(kù)用戶(hù)"codetc",并指定為超級(jí)用戶(hù):
sudo -u postgres createuser --superuser codetc;
接著登錄psql控制臺(tái)設(shè)置其密碼后退出:
codetc@ubuntu:~$ sudo -u postgres psql psql (9.5.3) Type "help" for help. postgres=# \password codetc; Enter new password: Enter it again: postgres=# \q
然后在shell命令行下創(chuàng)建數(shù)據(jù)庫(kù)并指定所有者:
sudo -u postgres createdb -O codetc exampledb1;
基本數(shù)據(jù)庫(kù)操作命令
# 創(chuàng)建新表
CREATE TABLE user_tbl(name VARCHAR(20), signup_date DATE);
# 插入數(shù)據(jù)
INSERT INTO user_tbl(name, signup_date) VALUES('張三', '2013-12-22');
# 選擇記錄
SELECT * FROM user_tbl;
# 更新數(shù)據(jù)
UPDATE user_tbl set name = '李四' WHERE name = '張三';
# 刪除記錄
DELETE FROM user_tbl WHERE name = '李四' ;
# 添加欄位
ALTER TABLE user_tbl ADD email VARCHAR(40);
# 更新結(jié)構(gòu)
ALTER TABLE user_tbl ALTER COLUMN signup_date SET NOT NULL;
# 更名欄位
ALTER TABLE user_tbl RENAME COLUMN signup_date TO signup;
# 刪除欄位
ALTER TABLE user_tbl DROP COLUMN email;
# 表格更名
ALTER TABLE user_tbl RENAME TO backup_tbl;
# 刪除表格
DROP TABLE IF EXISTS backup_tbl;
重啟服務(wù)
/etc/init.d/postgresql restart 或者 service postgresql restart
卸載
sudo apt-get purge 'postgresql-*' sudo apt-get autoremove 'postgresql-*'
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
postgresql 計(jì)算距離的實(shí)例(單位直接生成米)
這篇文章主要介紹了postgresql 計(jì)算距離的實(shí)例(單位直接生成米),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01
PostgreSQL實(shí)現(xiàn)透視表查詢(xún)的方法詳解
PostgreSQL 8.3版本發(fā)布時(shí),引入了一個(gè)名為tablefunc的新擴(kuò)展,這個(gè)擴(kuò)展提供了一組非常有趣的函數(shù),其中之一是交叉表函數(shù),用于創(chuàng)建數(shù)據(jù)透視表,這就是我們將在本文中討論的內(nèi)容,本文給大家介紹了PostgreSQL實(shí)現(xiàn)透視表查詢(xún)的方法,需要的朋友可以參考下2024-12-12
Windows?環(huán)境搭建?PostgreSQL?邏輯復(fù)制高可用架構(gòu)數(shù)據(jù)庫(kù)服務(wù)
本文主要介紹Windows下搭建PostgreSQL的主從邏輯復(fù)制,關(guān)于PostgreSQl的相關(guān)運(yùn)維文章,網(wǎng)絡(luò)上大多都是?Linux?環(huán)境下的操作,鮮有在?Windows?環(huán)境下配置的教程,所以本文采用?Windows?環(huán)境作為演示系統(tǒng)來(lái)進(jìn)行?PostgreSQL?高可用數(shù)據(jù)庫(kù)服務(wù)的搭建,感興趣的朋友一起看看吧2023-05-05
PostgreSQL中使用數(shù)組改進(jìn)性能實(shí)例代碼
這篇文章主要給大家介紹了關(guān)于PostgreSQL中使用數(shù)組改進(jìn)性能的相關(guān)資料,文中通過(guò)示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12
PostgreSQL ROW_NUMBER() OVER()的用法說(shuō)明
這篇文章主要介紹了PostgreSQL ROW_NUMBER() OVER()的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02
Postgresql 解決pg掉電后無(wú)法重啟的問(wèn)題
這篇文章主要介紹了Postgresql 解決pg掉電后無(wú)法重啟的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01
如何修改Postgresql默認(rèn)賬號(hào)postgres的密碼
PostgreSQL數(shù)據(jù)庫(kù)創(chuàng)建一個(gè)postgres用戶(hù)作為數(shù)據(jù)庫(kù)的管理員,密碼隨機(jī),所以需要修改密碼,這篇文章主要給大家介紹了關(guān)于如何修改Postgresql默認(rèn)賬號(hào)postgres的密碼,需要的朋友可以參考下2023-10-10
如何查看postgres數(shù)據(jù)庫(kù)端口
這篇文章主要介紹了如何查看postgres數(shù)據(jù)庫(kù)端口操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-01-01

