pgsql常用命令
連線資料庫, 預設的使用者和資料庫是postgres
1 psql -u user -d dbname
切換資料庫,相當於mysql的use dbname
\c dbname
列舉資料庫,相當於mysql的show databases
\l
列舉表,相當於mysql的show tables
\dt檢視表結構,相當於desc tblname,show columns from tbname
\d tblname
\di 檢視索引
建立資料庫:
create database [資料庫名];
刪除資料庫:
刪除關聯
drop schema bugbjyb cascade
drop database [資料庫名];
*重新命名乙個表:
alter table [表名a] rename to [表名b];
*刪除乙個表:
drop table [表名];
*在已有的表裡新增字段:
alter table [表名] add column [欄位名] [型別];
*刪除表中的字段:
alter table [表名] drop column [欄位名];
*重新命名乙個字段:
alter table [表名] rename column [欄位名a] to [欄位名b];
*給乙個字段設定預設值:
alter table [表名] alter column [欄位名] set default [新的預設值];
*去除預設值:
alter table [表名] alter column [欄位名] drop default;
在表中插入資料:
insert into 表名 ([欄位名m],[欄位名n],......) values ([列m的值],[列n的值],......);
修改表中的某行某列的資料:
update [表名] set [目標欄位名]=[目標值] where [該行特徵];
刪除表中某行資料:
delete from [表名] where [該行特徵];
delete from [表名];--刪空整個表
建立表:
create table ([欄位名1] [型別1] ;,[欄位名2] [型別2],......<,primary key (欄位名m,欄位名n,...)>;);
\encoding [字元編碼名稱]
顯示或設定使用者端字元編碼
\h [名稱] sql 命令語法上的說明,用 * 顯示全部命令
\prompt [文字] 名稱
提示使用者設定內部變數
\password [username]
securely change the password for a user
\q 退出 psql
可以使用pg_dump和pg_dumpall來完成。比如備份sales資料庫:
pg_dump drupal>/opt/postgresql/backup/1.bak
PG資料庫常用操作
pg dump h 172.19.235.145 u d 20180704 dbpe.sql首先要修改備份檔案 sql的owner,防止許可權出現錯誤。psql h u d f 20180704 dbpe.sql 注意點 該遷移操作會覆蓋原來的資料庫,所以最好建立乙個新庫。select tablen...
pg資料庫sql優化總結
pg資料庫用近1年多,操作的資料量也越來越大,生產上也多次出現慢查詢現象,系統在高峰時間cpu使用率衝高達到100 經分析罪魁禍首就是慢查詢了。第一 排查,分析索引 因業務量的增大,很多單錶的記錄數已經超1,2千萬,對於查詢而言,沒有索引將會是災難,不僅cpu的壓力很大,應用預設的資料庫連線池也受到...
pg資料庫相關常用操作
1 備份 匯入資料庫 pg dump u 使用者名稱 db.sql 資料庫名 psql u 使用者名稱 f db.sql 資料庫名 2 刪除資料時無視鏈結 對於docker啟動的資料庫,首先進入容器裡面 docker exec it postgres bash使用postgres使用者進入postg...