docker安装pg数据库及pg数据库基本操作

news/2023/6/7 1:16:58

一、首先准备pg数据库的docker镜像

二、先创建一个文件作为pg数据库数据文件、配置文件等的外部挂载文件

三、创建镜像

docker run -it -d --name postgres14 --restart=always --privileged=true -p 5432:5432 -e POSTGRES_PASSWORD=postgres -v /home/fengyang/pg_data:/var/lib/postgresql 9f3ec01f884d

这样就创建好容器了,先看一下我们挂载的目录,已经有了一个data目录

参数解释:

-p:端口映射,物理机的5432端口映射到容器内部5432端口

-e:设置密码,就是登录数据库的密码(这里要注意两点,一是设置密码时候,不用加引号,二是postgre数据库有一个默认用户名就是postgres)

-v:文件挂载,把容器内的文件挂载到容器外,这样需要修改东西的话就不用再进入到容器里了

--restart=always:开机自启

--privileged=true: 给自己容器内部一些操作的权限,其实这里并不需要,只是个人习惯

三、开始操作数据库

进入容器内部:

进入数据库:psql -U 用户名 数据库(这里的数据库可以省略,不写默认进入postgres库) -W 按回车输入密码,密码就是创建容器时候,-e设置的

四、数据库基本操作

  1. 创建数据库:create database 数据库名;

  1. 查看所有数据库:SELECT * FROM pg_database ORDER BY datname

进入数据库:\c 数据库; 密码同理是创建容器时 -e 设置的。

  1. 创建用户: create user 用户名 with password '密码';

  1. 查看所有用户: SELECT * FROM pg_roles;

  1. 创建模块: create schema 模块名;

  1. 查看所有模块: SELECT * FROM information_schema.schemata;

  1. 给操作某模块的用户赋权限:GRANT ALL PRIVILEGES ON schema 模块名 TO 用户;

  1. 通过备份文件导入数据:

1) exit; 退出数据库

2)docker cp将备份文件复制到容器中

3)pg_restore -d 数据库 -U 用户名 备份文件; 导入备份文件(注意 如果这里不写-U 用户名 会默认到root用户名下,一般容易报错)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4565273.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

[转载]微服务实战(二):使用API Gateway

【编者的话】本系列的第一篇介绍了微服务架构模式。它讨论了采用微服务的优点和缺点,除了一些复杂的微服务,这种模式还是复杂应用的理想选择。 当你决定将应用作为一组微服务时,需要决定应用客户端如何与微服务交互。在单体式程序中&#xf…

微服务实战(二):使用API Gateway

微服务实战(二):使用API Gateway 【编者的话】本系列的第一篇介绍了微服务架构模式。它讨论了采用微服务的优点和缺点,除了一些复杂的微服务,这种模式还是复杂应用的理想选择。 当你决定将应用作为一组微服务时&…

LabVIEW使用VI脚本重新排列对象

LabVIEW使用VI脚本重新排列对象VI脚本可用来重新排列前面板和程序框图的对象。该教程以程序框图对象重新排列为例。按照下列步骤,使用VI脚本重新排列程序框图对象。创建VI前,需先了解VI脚本的基本内容。必须启用VI脚本,才能显示VI脚本选板&am…

Java TCP Daytime 客户端

import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; import java.net.Socket;/*** Title: TcpDaytimeTestClient Description: TCP daytime server testing class for* Network Programming (LA01) course Author: William Chanrico Date

ubuntu 20.04开启echo和daytime服务,亲测可用

ubuntu 20.04开启echo和daytime服务,亲测可用 1、echo服务给予TCP端口号7,可以通过netstat –ant查看,如下图没有开启 2、启动步骤 (1)安装xinetd服务 sudo apt-get install xinetd (2)修改…

关于《Java网络编程实例中无法从daytime服务器获得日期和具体时间》的解决方案

清华大学出版社教材《面向对象与java程序设计》中,第十章网络编程一例10.6:从服务器获得日期和具体时间,该例为创建一个程序,使其连接到Internet的daytime服务器,并打印从服务器那里收到的日期和具体时间,其…

daytime协议的服务器和客户端程序,用socket套接字实现daytime协议的服务器和客户端程序精编版.doc...

用socket套接字实现daytime协议的服务器和客户端程序精编版.doc还剩11页未读,继续阅读下载文档到电脑,马上远离加班熬夜!亲,喜欢就下载吧,价低环保!内容要点:………………………………………………

分布式计算——Daytime协议的实现(TCP版)

分布式计算课程的第一个作业是写Daytime协议。 问:什么是Daytime协议? 答:Daytime是一个有用的调试和测量工具。无论输入请求是什么,daytime只是简单地以字符串形式返回当前的日期和时间。 问:Daytime协议返回格式…