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ù)庫賬號(hào)作為數(shù)據(jù)庫管理員
- (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,通過 sudo -u postgres psql
進(jìn)入,提示符變成: postgres=#
在這里可用執(zhí)行SQL語句和psql的基本命令。可用的基本命令如下:
- \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)。
- \du:列出所有用戶。
- \e:打開文本編輯器。
- \conninfo:列出當(dāng)前數(shù)據(jù)庫和連接的信息。
修改數(shù)據(jù)庫默認(rèn)賬號(hào)的密碼
1、登錄
使用psql命令登錄數(shù)據(jù)庫的命令為:
psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432
上面命令的參數(shù)含義如下:-U指定用戶,-d指定數(shù)據(jù)庫,-h指定服務(wù)器,-p指定端口。
輸入上面命令以后,系統(tǒng)會(huì)提示輸入dbuser用戶的密碼。
psql命令存在簡寫形式:
如果當(dāng)前Linux系統(tǒng)用戶,同時(shí)也是PostgreSQL用戶,則可以省略用戶名(-U參數(shù)的部分)
如果PostgreSQL內(nèi)部還存在與當(dāng)前系統(tǒng)用戶同名的數(shù)據(jù)庫,則數(shù)據(jù)庫名也可以省略。
2、修改默認(rèn)管理員賬號(hào)的密碼
以Linux用戶"postgres"的身份(此時(shí)只有該用戶有psql命令)執(zhí)行psql客戶端,進(jìn)入該客戶端的提示符界面(這里系統(tǒng)用戶名、數(shù)據(jù)庫用戶名、數(shù)據(jù)庫名都為postgres,故可采用簡寫形式)
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ù)庫以允許遠(yuǎn)程連接訪問
安裝完成后,默認(rèn)只能本地才能連接數(shù)據(jù)庫,其他機(jī)子訪問不了,需要進(jìn)行配置。
1、修改監(jiān)聽地址
sudo gedit /etc/postgresql/9.5/main/postgresql.conf
將 #listen_addresses = 'localhost'
的注釋去掉并改為 listen_addresses = '*'
2、修改可訪問用戶的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ù)庫
sudo /etc/init.d/postgresql restart
添加新用戶和新數(shù)據(jù)庫
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ù)庫exampledb,所有者為xiaozhang:
postgres=# create database exampledb owner xiaozhang;
將exampledb數(shù)據(jù)庫的所有權(quán)限賦予xiaozhang,否則xiaozhang只能登錄psql,沒有任何數(shù)據(jù)庫操作權(quán)限:
grant all privileges on database exampledb to xiaozhang;
2、使用shell命令行
安裝PostgreSQL后提供了createuser和createdb命令行程序。
首先創(chuàng)建數(shù)據(jù)庫用戶"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ù)庫并指定所有者:
sudo -u postgres createdb -O codetc exampledb1;
基本數(shù)據(jù)庫操作命令
# 創(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é)
以上就是這篇文章的全部內(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安裝、配置及簡單使用方法
- CentOS7 PostgreSQL安裝、配置、使用詳解
- Debian中PostgreSQL數(shù)據(jù)庫安裝配置實(shí)例
- postgresql安裝及配置超詳細(xì)教程