欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

docker 搭建單機(jī)PostgreSQL操作詳解

 更新時(shí)間:2025年04月02日 11:08:39   作者:逆風(fēng)飛翔的小叔  
本文通過實(shí)際案例操作演示了如何基于Docker搭建pg的完整過程,并補(bǔ)充了pg數(shù)據(jù)庫(kù)操作的常用命令和授權(quán)命令,感興趣的朋友一起看看吧

一、前言

在實(shí)際項(xiàng)目中,PostgreSQL具有很多使用場(chǎng)景,為了方便應(yīng)用開發(fā)時(shí)快速接入和調(diào)試,需要有PostgreSQL環(huán)境,本文演示如何基于linux環(huán)境搭建單節(jié)點(diǎn)postgresql完整操作過程。

二、前置準(zhǔn)備

2.1 服務(wù)器環(huán)境

基于centos7以上版本的系統(tǒng),虛擬機(jī)或云服務(wù)一臺(tái),配置不低于2C4G。

2.2 docker環(huán)境

提前在服務(wù)器安裝docker環(huán)境,后面需要基于docker安裝PostgreSQL。

三、docker安裝PostgreSQL過程

3.1 獲取PostgreSQL鏡像

使用下面的命令獲取鏡像

docker pull postgres

3.2 啟動(dòng)容器

3.2.1 創(chuàng)建數(shù)據(jù)卷目錄

為了后續(xù)pg數(shù)據(jù)的持久化,需要提前創(chuàng)建一個(gè)數(shù)據(jù)卷映射目錄

mkdir /usr/local/soft/pg/data

3.2.2 啟動(dòng)pg容器

使用下面的命令啟動(dòng)postgresql的容器

docker run -d \
  --name postgres \
  -e POSTGRES_USER=root\
  -e POSTGRES_PASSWORD=123456 \
  -e ALLOW_IP_RANGE=0.0.0.0/0 \
  -e POSTGRES_DB=postgres \
  -v /usr/local/soft/pg/data:/var/lib/postgresql/data \
  -p 54132:5432 \
  postgres:latest

參數(shù)說明:

  • -d ,以后臺(tái)進(jìn)程啟動(dòng);
  • --name ,指定容器的名字為 :root;
  • POSTGRES_USER=postgres ,指定初始化的連接賬戶;
  • POSTGRES_PASSWORD=123456 ,指定初始化的連接密碼;
  • ALLOW_IP_RANGE=0.0.0.0/0 ,指定允許所有的客戶端可以連接;
  • POSTGRES_DB=postgres ,指定默認(rèn)的數(shù)據(jù)庫(kù)名稱;
  • -v /usr/local/soft/pg/data:/var/lib/postgresql/data ,指定pg數(shù)據(jù)庫(kù)的數(shù)據(jù)卷;
  • -p 5432:5432 ,容器與宿主機(jī)的映射端口,默認(rèn)為5432 ;

容器運(yùn)行成功,可以看到啟動(dòng)了一個(gè)pg的容器;

3.3 客戶端測(cè)試連接數(shù)據(jù)庫(kù)

本地使用navicat連接pg數(shù)據(jù)庫(kù),使用上述初始化的連接信息

四、創(chuàng)建數(shù)據(jù)庫(kù)與授權(quán)

和mysql在使用的時(shí)候類似,為了保證操作pg數(shù)據(jù)庫(kù)的安全性,需要進(jìn)行相關(guān)的授權(quán)操作,pg的授權(quán)與mysql數(shù)據(jù)庫(kù)的授權(quán)有所不同,接下來看具體的操作演示過程。

4.1 進(jìn)入PG容器

找到容器ID,使用下面的命令進(jìn)入容器

docker exec -it 容器ID /bin/bash

4.2 PG常用操作命令

4.2.1 進(jìn)入命令行

進(jìn)入容器之后,使用下面的命令進(jìn)入PG的操作命令行,類似于mysql的命令行工具

psql -U postgres -h 服務(wù)器IP -p 54132 postgres

輸入密碼,驗(yàn)證成功后,就來到下面的命令行操作界面:

4.2.2 常用操作命令

1)列出當(dāng)前所有數(shù)據(jù)庫(kù)

\l

2)列出當(dāng)前數(shù)據(jù)庫(kù)的所有表

默認(rèn)情況下,登錄進(jìn)來使用的是postges這個(gè)數(shù)據(jù)庫(kù),使用下面的命令可以查看所有表

3)切換數(shù)據(jù)庫(kù)

使用下面的命令切換到另一個(gè)數(shù)據(jù)庫(kù)

\c 數(shù)據(jù)庫(kù)名稱

4)創(chuàng)建數(shù)據(jù)庫(kù)

CREATE DATABASE 數(shù)據(jù)庫(kù)名稱;

5)創(chuàng)建賬戶

CREATE USER 用戶名 WITH PASSWORD '密碼';

6)賬戶授權(quán)

pg數(shù)據(jù)庫(kù)中對(duì)于連接的賬戶需要進(jìn)行授權(quán),有數(shù)據(jù)庫(kù)授權(quán),表授權(quán)等,下面分別是數(shù)據(jù)庫(kù)授權(quán),表授權(quán)的命令

一般下面這兩個(gè)命令是連起來用的,即先對(duì)數(shù)據(jù)庫(kù)的連接賬戶授權(quán),僅僅授權(quán)數(shù)據(jù)庫(kù)還不夠,還需要對(duì)數(shù)據(jù)庫(kù)下面的所有表授權(quán)才可正常使用;

GRANT CONNECT, CREATE, TEMPORARY ON DATABASE "數(shù)據(jù)庫(kù)名稱" TO 用戶名;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO 用戶名;

補(bǔ)充說明

設(shè)置默認(rèn)權(quán)限,使某個(gè)用戶對(duì)未來在 public 模式下創(chuàng)建的表也擁有全部權(quán)限

ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL PRIVILEGES ON TABLES TO 用戶名;

四、寫在文末

本文通過實(shí)際案例操作演示了如何基于Docker搭建pg的完整過程,并補(bǔ)充了pg數(shù)據(jù)庫(kù)操作的常用命令和授權(quán)命令,希望對(duì)看到的同學(xué)有用,本篇到此結(jié)束,感謝觀看。

到此這篇關(guān)于docker 搭建單機(jī)PostgreSQL操作詳解的文章就介紹到這了,更多相關(guān)docker 單機(jī)PostgreSQL內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker部署Rancher的方法(無坑)

    Docker部署Rancher的方法(無坑)

    這篇文章主要介紹了Docker部署Rancher的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Docker如何添加自定義網(wǎng)橋

    Docker如何添加自定義網(wǎng)橋

    本篇文章主要介紹了Docker如何添加自定義網(wǎng)橋,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • Windows下Docker安裝各種軟件的詳細(xì)過程

    Windows下Docker安裝各種軟件的詳細(xì)過程

    這篇文章主要介紹了Windows下Docker安裝各種軟件的詳細(xì)過程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-07-07
  • docker容器啟動(dòng)失敗如何查看日志

    docker容器啟動(dòng)失敗如何查看日志

    這篇文章主要介紹了docker容器啟動(dòng)失敗如何查看日志問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Docker?創(chuàng)建centos容器集群并實(shí)現(xiàn)遠(yuǎn)程登錄功能

    Docker?創(chuàng)建centos容器集群并實(shí)現(xiàn)遠(yuǎn)程登錄功能

    這篇文章主要介紹了Docker?創(chuàng)建centos容器集群并實(shí)現(xiàn)遠(yuǎn)程登錄,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • jenkins構(gòu)建Docker 鏡像實(shí)例詳解

    jenkins構(gòu)建Docker 鏡像實(shí)例詳解

    這篇文章主要介紹了 jenkins構(gòu)建Docker 鏡像實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • docker搭建php+nginx+swoole+mysql+redis環(huán)境的方法

    docker搭建php+nginx+swoole+mysql+redis環(huán)境的方法

    這篇文章主要介紹了docker搭建php+nginx+swoole+mysql+redis環(huán)境的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2019-03-03
  • docker下遷移elasticsearch問題以及解決方案

    docker下遷移elasticsearch問題以及解決方案

    文章描述了如何將Elasticsearch數(shù)據(jù)從一個(gè)服務(wù)器遷移到另一個(gè)服務(wù)器,包括數(shù)據(jù)掛載、版本一致性、啟動(dòng)命令的匹配以及可能遇到的權(quán)限和節(jié)點(diǎn)故障問題的解決方法
    2024-11-11
  • Docker部署Django+Mysql+Redis+Gunicorn+Nginx的實(shí)現(xiàn)

    Docker部署Django+Mysql+Redis+Gunicorn+Nginx的實(shí)現(xiàn)

    這篇文章主要介紹了Docker 部署 Django+Mysql+Redis+Gunicorn+Nginx,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • win7環(huán)境下Docker快速構(gòu)建及阿里云容器加速配置詳解

    win7環(huán)境下Docker快速構(gòu)建及阿里云容器加速配置詳解

    這篇文章主要介紹了win7環(huán)境下Docker快速構(gòu)建及阿里云容器加速配置詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09

最新評(píng)論