1、安裝
使用如下命令,會(huì)自動(dòng)安裝最新版,這里為9.5
sudo apt-get install postgresql
安裝完成后,默認(rèn)會(huì):
- (1)創(chuàng)建名為"postgres"的Linux用戶
- (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的客戶端psql,通過(guò) sudo -u postgres psql
進(jìn)入,提示符變成: postgres=#
在這里可用執(zhí)行SQL語(yǔ)句和psql的基本命令。可用的基本命令如下:
- \password:設(shè)置密碼
- \q:退出
- \h:查看SQL命令的解釋,比如\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:列出所有用戶。
- \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指定用戶,-d指定數(shù)據(jù)庫(kù),-h指定服務(wù)器,-p指定端口。
輸入上面命令以后,系統(tǒng)會(huì)提示輸入dbuser用戶的密碼。
psql命令存在簡(jiǎn)寫(xiě)形式:
如果當(dāng)前Linux系統(tǒng)用戶,同時(shí)也是PostgreSQL用戶,則可以省略用戶名(-U參數(shù)的部分)
如果PostgreSQL內(nèi)部還存在與當(dāng)前系統(tǒng)用戶同名的數(shù)據(jù)庫(kù),則數(shù)據(jù)庫(kù)名也可以省略。
2、修改默認(rèn)管理員賬號(hào)的密碼
以Linux用戶"postgres"的身份(此時(shí)只有該用戶有psql命令)執(zhí)行psql客戶端,進(jìn)入該客戶端的提示符界面(這里系統(tǒng)用戶名、數(shù)據(jù)庫(kù)用戶名、數(shù)據(jù)庫(kù)名都為postgres,故可采用簡(jiǎn)寫(xiě)形式)

postgres=# alter user postgres with password '123456';
這樣,管理員"postgres"的密碼就為"123456"。
退出psql客戶端命令:\q
若要?jiǎng)h除該管理員的密碼,則可用命令:sudo -u postgres psql -d postgres
修改Linux用戶的密碼
以Linux用戶"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)程連接訪問(wèn)
安裝完成后,默認(rèn)只能本地才能連接數(shù)據(jù)庫(kù),其他機(jī)子訪問(wèn)不了,需要進(jìn)行配置。
1、修改監(jiān)聽(tīng)地址
sudo gedit /etc/postgresql/9.5/main/postgresql.conf
將 #listen_addresses = 'localhost'
的注釋去掉并改為 listen_addresses = '*'
2、修改可訪問(wèn)用戶的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
添加新用戶和新數(shù)據(jù)庫(kù)
1、使用PostgreSQL客戶端psql
運(yùn)行系統(tǒng)用戶"postgres"的psql命令,進(jìn)入客戶端:
創(chuàng)建用戶"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ù)用戶"codetc",并指定為超級(jí)用戶:
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)鏈接
您可能感興趣的文章:- 詳解CentOS7下PostgreSQL 11的安裝和配置教程
- Windows上PostgreSQL安裝配置教程
- PostgreSQL安裝、配置及簡(jiǎn)單使用方法
- CentOS7 PostgreSQL安裝、配置、使用詳解
- Debian中PostgreSQL數(shù)據(jù)庫(kù)安裝配置實(shí)例
- postgresql安裝及配置超詳細(xì)教程