Ubuntu PostgreSQL安裝和配置的介紹

今天小編就爲大家分享一篇關於Ubuntu PostgreSQL安裝和配置的介紹,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

1、安裝

使用如下命令,會自動安裝最新版,這裏爲9.5

sudo apt-get install postgresql

安裝完成後,默認會:

  • (1)創建名爲"postgres"的Linux用戶
  • (2)創建名爲"postgres"、不帶密碼的默認數據庫賬號作爲數據庫管理員
  • (3)創建名爲"postgres"的表

安裝完成後的一些默認信息如下:

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命令

安裝完後會有PostgreSQL的客戶端psql,通過 sudo -u postgres psql 進入,提示符變成: postgres=# 

在這裏可用執行SQL語句和psql的基本命令。可用的基本命令如下:

  • \password:設置密碼
  • \q:退出
  • \h:查看SQL命令的解釋,比如\h select。
  • \?:查看psql命令列表。
  • \l:列出所有數據庫。
  • \c [database_name]:連接其他數據庫。
  • \d:列出當前數據庫的所有表格。
  • \d [table_name]:列出某一張表格的結構。
  • \du:列出所有用戶。
  • \e:打開文本編輯器。
  • \conninfo:列出當前數據庫和連接的信息。

修改數據庫默認賬號的密碼

1、登錄

使用psql命令登錄數據庫的命令爲:

psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432

上面命令的參數含義如下:-U指定用戶,-d指定數據庫,-h指定服務器,-p指定端口。

輸入上面命令以後,系統會提示輸入dbuser用戶的密碼。

psql命令存在簡寫形式:

如果當前Linux系統用戶,同時也是PostgreSQL用戶,則可以省略用戶名(-U參數的部分)

如果PostgreSQL內部還存在與當前系統用戶同名的數據庫,則數據庫名也可以省略。

2、修改默認管理員賬號的密碼

以Linux用戶"postgres"的身份(此時只有該用戶有psql命令)執行psql客戶端,進入該客戶端的提示符界面(這裏系統用戶名、數據庫用戶名、數據庫名都爲postgres,故可採用簡寫形式)

sudo -u postgres psql

postgres=# alter user postgres with password '123456';

這樣,管理員"postgres"的密碼就爲"123456"。

退出psql客戶端命令:\q

若要刪除該管理員的密碼,則可用命令:sudo -u postgres psql -d postgres

修改Linux用戶的密碼

以Linux用戶"postgres"爲例,對其運行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

配置數據庫以允許遠程連接訪問

安裝完成後,默認只能本地才能連接數據庫,其他機子訪問不了,需要進行配置。

1、修改監聽地址

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 ,表示運行任何IP連接

3、重啓數據庫

sudo /etc/init.d/postgresql restart

添加新用戶和新數據庫

1、使用PostgreSQL客戶端psql

運行系統用戶"postgres"的psql命令,進入客戶端:

sudo -u postgres psql

創建用戶"xiaozhang"並設置密碼:

postgres=# create user xiaozhang with password '123456';

創建數據庫exampledb,所有者爲xiaozhang:

postgres=# create database exampledb owner xiaozhang;

將exampledb數據庫的所有權限賦予xiaozhang,否則xiaozhang只能登錄psql,沒有任何數據庫操作權限:

grant all privileges on database exampledb to xiaozhang;

2、使用shell命令行

安裝PostgreSQL後提供了createuser和createdb命令行程序。

首先創建數據庫用戶"codetc",並指定爲超級用戶:

sudo -u postgres createuser --superuser codetc;

接着登錄psql控制檯設置其密碼後退出:

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命令行下創建數據庫並指定所有者:

sudo -u postgres createdb -O codetc exampledb1;

基本數據庫操作命令

# 創建新表 
CREATE TABLE user_tbl(name VARCHAR(20), signup_date DATE);
# 插入數據 
INSERT INTO user_tbl(name, signup_date) VALUES('張三', '2013-12-22');
# 選擇記錄 
SELECT * FROM user_tbl;
# 更新數據 
UPDATE user_tbl set name = '李四' WHERE name = '張三';
# 刪除記錄 
DELETE FROM user_tbl WHERE name = '李四' ;
# 添加欄位 
ALTER TABLE user_tbl ADD email VARCHAR(40);
# 更新結構 
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;

重啓服務

/etc/init.d/postgresql restart
或者
service postgresql restart

卸載

sudo apt-get purge 'postgresql-*'
sudo apt-get autoremove 'postgresql-*'

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對神馬文庫的支持。如果你想了解更多相關內容請查看下面相關鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章