自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

PostgreSQL新手入門

開發(fā) 前端 PostgreSQL
自從MySQL被Oracle收購以后,PostgreSQL逐漸成為開源關(guān)系型數(shù)據(jù)庫的首選。

自從MySQL被Oracle收購以后,PostgreSQL逐漸成為開源關(guān)系型數(shù)據(jù)庫的***。

本文介紹PostgreSQL的安裝和基本用法,供初次使用者上手。以下內(nèi)容基于Debian操作系統(tǒng),其他操作系統(tǒng)實在沒有精力兼顧,但是大部分內(nèi)容應(yīng)該普遍適用。

[[92741]]

一、安裝

首先,安裝PostgreSQL客戶端。

  1. sudo apt-get install postgresql-client 

然后,安裝PostgreSQL服務(wù)器。

  1. sudo apt-get install postgresql 

正常情況下,安裝完成后,PostgreSQL服務(wù)器會自動在本機的5432端口開啟。

如果還想安裝圖形管理界面,可以運行下面命令,但是本文不涉及這方面內(nèi)容。

  1. sudo apt-get install pgadmin3 

二、添加新用戶和新數(shù)據(jù)庫

初次安裝后,默認(rèn)生成一個名為postgres的數(shù)據(jù)庫和一個名為postgres的數(shù)據(jù)庫用戶。這里需要注意的是,同時還生成了一個名為postgres的Linux系統(tǒng)用戶。

下面,我們使用postgres用戶,來生成其他用戶和新數(shù)據(jù)庫。好幾種方法可以達(dá)到這個目的,這里介紹兩種。

***種方法,使用PostgreSQL控制臺。

首先,新建一個Linux新用戶,可以取你想要的名字,這里為dbuser。

  1. sudo adduser dbuser 

然后,切換到postgres用戶。

  1. sudo su - postgres 

下一步,使用psql命令登錄PostgreSQL控制臺。

  1. psql 

這時相當(dāng)于系統(tǒng)用戶postgres以同名數(shù)據(jù)庫用戶的身份,登錄數(shù)據(jù)庫,這是不用輸入密碼的。如果一切正常,系統(tǒng)提示符會變?yōu)?rdquo;postgres=#”,表示這時已經(jīng)進(jìn)入了數(shù)據(jù)庫控制臺。以下的命令都在控制臺內(nèi)完成。

***件事是使用\password命令,為postgres用戶設(shè)置一個密碼。

  1. \password postgres 

第二件事是創(chuàng)建數(shù)據(jù)庫用戶dbuser(剛才創(chuàng)建的是Linux系統(tǒng)用戶),并設(shè)置密碼。

  1. CREATE USER dbuser WITH PASSWORD 'password'

第三件事是創(chuàng)建用戶數(shù)據(jù)庫,這里為exampledb,并指定所有者為dbuser。

  1. CREATE DATABASE exampledb OWNER dbuser; 

第四件事是將exampledb數(shù)據(jù)庫的所有權(quán)限都賦予dbuser,否則dbuser只能登錄控制臺,沒有任何數(shù)據(jù)庫操作權(quán)限。

  1. GRANT ALL PRIVILEGES ON DATABASE exampledb to dbuser; 

***,使用\q命令退出控制臺(也可以直接按ctrl+D)。

第二種方法,使用shell命令行。

添加新用戶和新數(shù)據(jù)庫,除了在PostgreSQL控制臺內(nèi),還可以在shell命令行下完成。這是因為PostgreSQL提供了命令行程序createuser和createdb。還是以新建用戶dbuser和數(shù)據(jù)庫exampledb為例。

首先,創(chuàng)建數(shù)據(jù)庫用戶dbuser,并指定其為超級用戶。

  1. sudo -u postgres createuser --superuser dbuser 

然后,登錄數(shù)據(jù)庫控制臺,設(shè)置dbuser用戶的密碼,完成后退出控制臺。

  1. sudo -u postgres psql 
  2.   
  3.    \password dbuser 
  4.   
  5.    \q 

接著,在shell命令行下,創(chuàng)建數(shù)據(jù)庫exampledb,并指定所有者為dbuser。

三、登錄數(shù)據(jù)庫

添加新用戶和新數(shù)據(jù)庫以后,就要以新用戶的名義登錄數(shù)據(jù)庫,這時使用的是psql命令。

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

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

輸入上面命令以后,系統(tǒng)會提示輸入dbuser用戶的密碼。輸入正確,就可以登錄控制臺了。

psql命令存在簡寫形式。如果當(dāng)前Linux系統(tǒng)用戶,同時也是PostgreSQL用戶,則可以省略用戶名(-U參數(shù)的部分)。舉例來說,我的 Linux系統(tǒng)用戶名為ruanyf,且PostgreSQL數(shù)據(jù)庫存在同名用戶,則我以ruanyf身份登錄Linux系統(tǒng)后,可以直接使用下面的命令 登錄數(shù)據(jù)庫,且不需要密碼。

  1. psql exampledb 

此時,如果PostgreSQL內(nèi)部還存在與當(dāng)前系統(tǒng)用戶同名的數(shù)據(jù)庫,則連數(shù)據(jù)庫名都可以省略。比如,假定存在一個叫做ruanyf的數(shù)據(jù)庫,則直接鍵入psql就可以登錄該數(shù)據(jù)庫。

  1. psql 

另外,如果要恢復(fù)外部數(shù)據(jù),可以使用下面的命令。

  1. psql exampledb < exampledb.sql 

#p#

四、控制臺命令

除了前面已經(jīng)用到的\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ù)庫操作

基本的數(shù)據(jù)庫操作,就是使用一般的SQL語言。

# 創(chuàng)建新表

  1. CREATE TABLE usertbl(name VARCHAR(20), signupdate DATE); 

# 插入數(shù)據(jù)

  1. INSERT INTO usertbl(name, signupdate) VALUES('張三', '2013-12-22'); 

# 選擇記錄

  1. SELECT * FROM user_tbl; 

# 更新數(shù)據(jù)

  1. UPDATE user_tbl set name = '李四' WHERE name = '張三'

# 刪除記錄

  1. DELETE FROM user_tbl WHERE name = '李四' ; 

# 添加欄位

  1. ALTER TABLE user_tbl ADD email VARCHAR(40); 

# 更新結(jié)構(gòu)

  1. ALTER TABLE usertbl ALTER COLUMN signupdate SET NOT NULL

# 更名欄位

  1. ALTER TABLE usertbl RENAME COLUMN signupdate TO signup; 

# 刪除欄位

  1. ALTER TABLE user_tbl DROP COLUMN email; 

# 表格更名

  1. ALTER TABLE usertbl RENAME TO backuptbl; 

# 刪除表格

  1. DROP TABLE IF EXISTS backup_tbl; 

原文鏈接:http://www.ruanyifeng.com/blog/2013/12/getting_started_with_postgresql.html

 

責(zé)任編輯:陳四芳 來源: 阮一峰的網(wǎng)絡(luò)日志
相關(guān)推薦

2011-02-21 17:51:39

Zimbra入門新手

2011-01-10 14:36:00

新手linux基礎(chǔ)

2011-05-31 16:47:47

SEO

2010-09-09 13:40:19

XML DOM

2010-06-23 15:00:50

Fix協(xié)議

2011-03-22 11:06:52

Nagios安裝

2010-05-28 18:22:51

MySQL基本操作

2009-07-16 09:07:46

Linux使用技巧Linux入門Linux開發(fā)

2010-05-14 18:31:17

MySQL 定時數(shù)據(jù)備

2010-05-17 09:52:55

虛擬化VMware Play

2010-06-10 10:31:36

MySQL出錯代碼列表

2010-06-21 15:27:38

Linux apt-g

2011-06-30 17:41:46

SEO

2010-06-19 13:47:39

AMF協(xié)議

2009-08-03 13:29:14

SearchServe操作系統(tǒng)微軟

2011-04-01 10:18:22

NoSQLCouchDB

2018-04-17 11:00:13

數(shù)據(jù)庫MySQL命令大全

2009-01-22 10:31:28

2021-08-13 14:16:05

Linux操作系統(tǒng)管理

2015-07-30 09:53:57

新手入門
點贊
收藏

51CTO技術(shù)棧公眾號