postgresql資料庫常規操作管理

來源:互聯網
上載者:User

標籤:postgresql資料庫常用操作

資料庫連接:
方式一:

psql -U test_huishishuju -d test_huishishuju

參數說明: -U 資料庫使用者名稱 -d 資料庫名稱
方式二:

su – postgres
-bash-4.2$ psql       進入postgres資料庫

資料庫使用者管理:
建立使用者
postgres=# create user dev_huishishuju; 或者create role dev_huishishuju; 建立資料庫使用者
postgres=# alter user dev_huishishuju with password ‘123456‘; 修改資料庫使用者的密碼為123456

設定使用者權限
? 基本文法格式
CREATE或者ALTER ROLE role_name WITH optional_permissions(使用者的授權);

執行個體:
postgres=# alter user dev_huishishuju with superuser; 修改使用者的屬性,設定資料庫使用者dev_huishishuju為superuser
postgres=# alter user dev_huishishuju with login; 給資料庫使用者佈建登陸許可權

? 設定使用者權限的文法格式如下:
GRANT permission_type ON table_name TO role_name;

執行個體:
dev_huishishuju=# grant UPDATE ON t_sms TO rd_huishishuju ; 賦予使用者rd_huishishuju對t_sms表的update許可權
postgres=# grant SELECT on ALL tables in schema public to rd_huishishuju ; 賦予rd_huishishuju使用者對所有表有查詢許可權
dev_huishishuju=# grant ALL ON t_admin to rd_huishishuju ; 賦予rd_huishishuju使用者對t_admin資料庫表擁有所有許可權

進入資料庫的常用操作:
test_huishishuju=> \help 協助命令
test_huishishuju=> \l 顯示詳細的資料庫資訊
test_huishishuju=> \c postgres 切換postgres資料庫
test_huishishuju=> \dt 或者\d 列舉所在資料庫的表,相當於show databases
test_huishishuju=> \d t_sms 查看t_sms表的結構
test_huishishuju=> \di 查看資料庫表的索引
test_huishishuju-# \du 列出所有的使用者資訊
test_huishishuju-# \connect 列出當前資料庫的串連資訊
test_huishishuju-# \conninfo 列出當前資料庫和串連的詳細資料
test_huishishuju=# \q 退出當前操作
dev_huishishuju=# \dp或者\z 顯示使用者的對所有資料庫表的詳細存取權限
資料庫管理:
postgres=# create database beiyi; 建立資料庫beiyi
postgres=# drop database beiyi; 刪除資料庫beiyi
postgres=# alter database dev_huishishuju OWNER TO dev_huishishuju ; 修改資料庫的使用者歸屬

表管理:
postgres=# \c beiyi 切換到beiyi資料庫
beiyi=# create table user_beiyi(name VARCHAR(20), signup_date DATE); 建立user_beiyi表
beiyi=# INSERT INTO user_beiyi (name, signup_date) VALUES(‘張三‘, ‘2013-12-22‘); user_beiyi表中插入資料
test_huishishuju-# alter table test_huishishuju add column name character varying(16); 在表test_huishishuju裡添加欄位,說明:name為欄位名,character varying(16)為欄位類型
beiyi-# dorp table user_beiyi 刪除資料庫表user_beiyi

資料庫表的備份與恢複:
#pg_dump -h 192.168.2.242 -U postgres -p 5432 -t t_sms dev_huishishuju > t_sms.db

pg_dump -h 192.168.2.242 -U postgres -p 5432 -c --if-exists -t t_sms dev_huishishuju > t_sms.db 遠程備份

-bash-4.2$ psql -f t_sms.db -d test_huishishuju 切換postgres使用者,還原必須要保證有許可權

資料庫的備份與還原

pg_dump -h 192.168.2.242 -U postgres -p 5432 -c --if-exists dev_huishishuju > dev_huishishuju.sql 備份192.168.2.242資料庫上的dev_huishishuju資料庫

-bash-4.2$ psql -f dev_huishishuju.sql -d dev_huishishuju 還原資料庫,dev_huishishuju.sql為備份檔案,dev_huishishuju為新建立的資料庫

postgresql資料庫常規操作管理

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.