postgresql 常用命令

(1)用戶實(shí)用程序:
createdb 創(chuàng)建一個(gè)新的PostgreSQL的數(shù)據(jù)庫(kù)(和SQL語(yǔ)句:CREATE DATABASE 相同)
createuser 創(chuàng)建一個(gè)新的PostgreSQL的用戶(和SQL語(yǔ)句:CREATE USER 相同)
dropdb 刪除數(shù)據(jù)庫(kù)
dropuser 刪除用戶
pg_dump 將PostgreSQL數(shù)據(jù)庫(kù)導(dǎo)出到一個(gè)腳本文件
pg_dumpall 將所有的PostgreSQL數(shù)據(jù)庫(kù)導(dǎo)出到一個(gè)腳本文件
pg_restore 從一個(gè)由pg_dump或pg_dumpall程序?qū)С龅哪_本文件中恢復(fù)PostgreSQL數(shù)據(jù)庫(kù)
psql 一個(gè)基于命令行的PostgreSQL交互式客戶端程序
vacuumdb 清理和分析一個(gè)PostgreSQL數(shù)據(jù)庫(kù),它是客戶端程序psql環(huán)境下SQL語(yǔ)句VACUUM的shell腳本封裝畸写,二者功能完全相同

(2)系統(tǒng)實(shí)用程序

  1. pg_ctl 啟動(dòng)驮瞧、停止、重啟PostgreSQL服務(wù)(比如:pg_ctl start 啟動(dòng)PostgreSQL服務(wù)艺糜,它和service postgresql start相同)
  2. pg_controldata 顯示PostgreSQL服務(wù)的內(nèi)部控制信息
  3. psql 切換到PostgreSQL預(yù)定義的數(shù)據(jù)庫(kù)超級(jí)用戶postgres剧董,啟用客戶端程序psql,并連接到自己想要的數(shù)據(jù)庫(kù)破停,比如說(shuō):
    psql template1
    出現(xiàn)以下界面翅楼,說(shuō)明已經(jīng)進(jìn)入到想要的數(shù)據(jù)庫(kù),可以進(jìn)行想要的操作了真慢。
    template1=#

(3).在數(shù)據(jù)庫(kù)中的一些命令:
template1=# \l 查看系統(tǒng)中現(xiàn)存的數(shù)據(jù)庫(kù)
template1=# \q 退出客戶端程序psql
template1=# \c 從一個(gè)數(shù)據(jù)庫(kù)中轉(zhuǎn)到另一個(gè)數(shù)據(jù)庫(kù)中毅臊,如template1=# \c sales 從template1轉(zhuǎn)到sales
template1=# \dt 查看表
template1=# \d 查看表結(jié)構(gòu)
template1=# \di 查看索引

[基本數(shù)據(jù)庫(kù)操作]========================

  1. *創(chuàng)建數(shù)據(jù)庫(kù): create database [數(shù)據(jù)庫(kù)名];
  2. *查看數(shù)據(jù)庫(kù)列表: \d
  3. *刪除數(shù)據(jù)庫(kù): . drop database [數(shù)據(jù)庫(kù)名];
    創(chuàng)建表: create table ([字段名1] [類型1] <references 關(guān)聯(lián)表名(關(guān)聯(lián)的字段名)>;,[字段名2] [類型2],......<,primary key (字段名m,字段名n,...)>;);
    *查看表名列表: \d
    *查看某個(gè)表的狀況: \d [表名]
    *重命名一個(gè)表: alter table [表名A] rename to [表名B];
    *刪除一個(gè)表: drop table [表名]; ========================================

[表內(nèi)基本操作]==========================

*在已有的表里添加字段: alter table [表名] add column [字段名] [類型];
*刪除表中的字段: alter table [表名] drop column [字段名];
*重命名一個(gè)字段: alter table [表名] rename column [字段名A] to [字段名B];
*給一個(gè)字段設(shè)置缺省值: alter table [表名] alter column [字段名] set default [新的默認(rèn)值];
*去除缺省值: alter table [表名] alter column [字段名] drop default;
在表中插入數(shù)據(jù): insert into 表名 ([字段名m],[字段名n],......) values ([列m的值],[列n的值],......);
修改表中的某行某列的數(shù)據(jù): update [表名] set [目標(biāo)字段名]=[目標(biāo)值] where [該行特征];
刪除表中某行數(shù)據(jù): delete from [表名] where [該行特征];
delete from [表名];--刪空整個(gè)表 ========================== ==========================

(4).PostgreSQL用戶認(rèn)證
PostgreSQL數(shù)據(jù)目錄中的pg_hba.conf的作用就是用戶認(rèn)證,可以在/usr/local/pgsql/data中找到黑界。
有以下幾個(gè)例子可以看看:
(1)允許在本機(jī)上的任何身份連接任何數(shù)據(jù)庫(kù)
TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD
local all all trust(無(wú)條件進(jìn)行連接)
(2)允許IP地址為192.168.1.x的任何主機(jī)與數(shù)據(jù)庫(kù)sales連接
TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD
host sales all 192.168.1.0 255.255.255.0 ident sameuser(表明任何操作系統(tǒng)用戶都能夠以同名數(shù)據(jù)庫(kù)用戶進(jìn)行連接)

(5).看了那么多管嬉,來(lái)一個(gè)完整的創(chuàng)建PostgreSQL數(shù)據(jù)庫(kù)用戶的示例吧
(1)進(jìn)入PostgreSQL高級(jí)用戶
(2)啟用客戶端程序皂林,并進(jìn)入template1數(shù)據(jù)庫(kù)
psql template1
(3)創(chuàng)建用戶
template1=# CREATE USER hellen WITH ENCRYPED PASSWORD'zhenzhen'
(4)因?yàn)樵O(shè)置了密碼,所以要編輯pg_hba.conf蚯撩,使用戶和配置文件同步础倍。
在原有記錄上面添加md5
local all hellen md5
(4)使用新用戶登錄數(shù)據(jù)庫(kù)
template1=# \q
psql -U hellen -d template1
PS:在一個(gè)數(shù)據(jù)庫(kù)中如果要切換用戶,要使用如下命令:
template1=# !psql -U tk -d template1

(6).設(shè)定用戶特定的權(quán)限
還是要用例子來(lái)說(shuō)明:
創(chuàng)建一個(gè)用戶組:
sales=# CREATE GROUP sale;
添加幾個(gè)用戶進(jìn)入該組
sales=# ALTER GROUP sale ADD USER sale1,sale2,sale3;
授予用戶級(jí)sale針對(duì)表employee和products的SELECT權(quán)限
sales=# GRANT SELECT ON employee,products TO GROUP sale;
在sale中將用戶user2刪除
sales=# ALTER GROUP sale DROP USER sale2;

(7).備份數(shù)據(jù)庫(kù)
可以使用pg_dump和pg_dumpall來(lái)完成胎挎。比如備份sales數(shù)據(jù)庫(kù):

pg_dump sales>/home/tk/pgsql/backup/1.bak

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末沟启,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子犹菇,更是在濱河造成了極大的恐慌德迹,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,743評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件揭芍,死亡現(xiàn)場(chǎng)離奇詭異胳搞,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)称杨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門肌毅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人列另,你說(shuō)我怎么就攤上這事芽腾〉┳埃” “怎么了页衙?”我有些...
    開封第一講書人閱讀 157,285評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)阴绢。 經(jīng)常有香客問(wèn)我店乐,道長(zhǎng),這世上最難降的妖魔是什么呻袭? 我笑而不...
    開封第一講書人閱讀 56,485評(píng)論 1 283
  • 正文 為了忘掉前任眨八,我火速辦了婚禮,結(jié)果婚禮上左电,老公的妹妹穿的比我還像新娘廉侧。我一直安慰自己,他們只是感情好篓足,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,581評(píng)論 6 386
  • 文/花漫 我一把揭開白布段誊。 她就那樣靜靜地躺著,像睡著了一般栈拖。 火紅的嫁衣襯著肌膚如雪连舍。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,821評(píng)論 1 290
  • 那天涩哟,我揣著相機(jī)與錄音索赏,去河邊找鬼盼玄。 笑死,一個(gè)胖子當(dāng)著我的面吹牛潜腻,可吹牛的內(nèi)容都是我干的埃儿。 我是一名探鬼主播,決...
    沈念sama閱讀 38,960評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼融涣,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蝌箍!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起暴心,我...
    開封第一講書人閱讀 37,719評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤妓盲,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后专普,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體悯衬,經(jīng)...
    沈念sama閱讀 44,186評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,516評(píng)論 2 327
  • 正文 我和宋清朗相戀三年檀夹,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了筋粗。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,650評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡炸渡,死狀恐怖娜亿,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蚌堵,我是刑警寧澤买决,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布,位于F島的核電站吼畏,受9級(jí)特大地震影響督赤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜泻蚊,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,936評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望性雄。 院中可真熱鬧没卸,春花似錦、人聲如沸约计。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春铺然,著一層夾襖步出監(jiān)牢的瞬間俗孝,已是汗流浹背魄健。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留沽瘦,地道東北人革骨。 一個(gè)月前我還...
    沈念sama閱讀 46,370評(píng)論 2 360
  • 正文 我出身青樓析恋,卻偏偏與公主長(zhǎng)得像良哲,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子助隧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,527評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容