PostgreSQL 常用命令以及問(wèn)題整理


命令

  1. 重置主鍵id列的開(kāi)始值

alter SEQUENCE tableName_columnName_seq restart 1;

  1. pg_dump導(dǎo)出數(shù)據(jù)庫(kù)數(shù)據(jù)
pg_dump db_name -a --inserts  > dump.sql

-a 表示僅僅備份數(shù)據(jù) 不包含schema
--inserts 表示導(dǎo)出insert語(yǔ)句的形式
  1. createuser
createuser [connection-option...] [option...] [username]

創(chuàng)建一個(gè)新的PostgreSQL用戶(hù)更確切的說(shuō)是role, 超級(jí)用戶(hù)或者有CREATEROLE 權(quán)限的用戶(hù)才能執(zhí)行該操作

4 創(chuàng)建role 創(chuàng)建db 以及為 用戶(hù)分配權(quán)限
以下命令在mac 下執(zhí)行
如果在zsh線(xiàn)出現(xiàn) dyld: Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib
解決辦法 安裝 bash
然后 ln -s /usr/local/opt/readline/lib/libreadline.7.dylib /usr/local/opt/readline/lib/libreadline.6.dylib

 createuser user_name
 createdb db_name
 psql postgres
 alter user user_name with password 'xxxxxx';
 grant all privileges on database db_name to user_name;
 alter user user_name with superuser;
  1. 將column 類(lèi)型修改為 jsonb
ALTER TABLE table_name ALTER COLUMN col_name
SET DATA TYPE jsonb USING  col_name:: jsonb;


json和 jsonb的區(qū)別

  1. 添加類(lèi)型為jsonb的列
ALTER TABLE table_name ADD  COLUMN  col_name jsonb;

問(wèn)題

  1. centos 7 下 pg_hba.conf 位置
    /var/lib/pgsql/9.6/data/pg_hba.conf
  2. 連接本機(jī)posgresql 數(shù)據(jù)庫(kù)出現(xiàn) peer 認(rèn)證失敗
    mac 下homebrew 默認(rèn)在/usr/local/var下
    找到pg_hba.conf文件
    將peer 改為trust 或者md5
# TYPE  DATABASE        USER    ADDRESS             METHOD

# "local" is for Unix domain socket connections only
local    all             all                        peer

改后

# TYPE  DATABASE        USER    ADDRESS             METHOD

# "local" is for Unix domain socket connections only
local    all             all                        trust
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容