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

news2024/12/31 6:29:12

一、首先准备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.coloradmin.cn/o/172767.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot+VUE前后端分离项目学习笔记 - 【25 SpringBoot实现1对1、1对多、多对多关联查询】

新增课程Course页面,实现学生选课功能、课程教授老师选择等功能 1. 课程与授课老师是一对一关系 因为course表仅记录了teacherid,而页面需要的是老师的名字 select course.*,sys_user.id from course left join sys_user **on ** course.teacher_id sys…

第六章SpringFramework之声明事务

文章目录JdbcTemplate准备工作导入依赖创建jdbc.properties配置Spring的配置文件配置测试类的环境实例声明式事务概念先看看对应的编程式事务声明式事务通过一个案例了解声明式事务前提准备三层架构的构建模拟场景的情况添加事务Spring声明式事务的属性事务注解标识的位置事务属…

手把手教你学51单片机-点亮你的LED

单片机内部资源 Flash——程序存储空间。对于单片机来说 Flash 最大的意义是断电后数据 不丢失。 RAM——数据存储空间。RAM 是单片机的数据存储空间,用来存储程序运行过程中产生的和需要的数据,关电后数据丢失 SFR——特殊功能寄存器。通过对特殊工程寄存器读写操作,可以…

循环语句(循环结构)——“C”

各位CSDN的uu们好呀,我又来啦,今天,小雅兰给大家介绍的是一个知识点,就是循环语句啦,包括while循环、do-while循环、for循环,话不多说,让我们一起进入循环结构的世界吧 首先,我们先来…

利用Python暴力破解邻居家WiFi密码

如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀!关注、点赞、收藏、评论。 文章目录一、编写代码二、展示测试结果三、测试四、生成密码本(建议自己找一个密码本)一、编写代码 在桌面新建一个文件 如果你新建的文…

如何实现everything的http外网访问

Everything是voidtools开发的一款文件搜索工具,官网描述为“基于名称快速定位文件和文件夹。”可以实现快速文件索引、快速搜索、最小资源使用、便于文件分享等功能。 everything部署本地后,可以开启配置Http访问功能,这样在局域网内就可以直…

【自用】Git日常开发教程

因为经常容易忘记指令(年纪大了),所以打算记录一下将一堆文件从vscode上传到GitHub仓库 目录软件下载初始化状态过程可能出现的错误其他操作参考资料软件下载 https://gitforwindows.org/ https://code.visualstudio.com/ 初始化状态 过程 …

上海亚商投顾:两市缩量微涨,数字经济概念全线走强

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。市场情绪三大指数今日缩量震荡,黄白二线有所分化,题材概念表现活跃。数字经济概念全线走强&#xff0…

8、MariaDB11数据库安装初始化密码

MariaDB11安装 安装前准备 下载安装包 点我去MariaDB官网下载安装包 查看相关文档 Mariadb Server官方文档 使用zip安装 解压缩zip 将下载到的zip解压缩到想安装的位置。 生成data目录 打开cmd并进入到刚才解压后的bin目录, 执行mysql_install_db.exe程序生…

Flowable进阶学习(二)流程部署的深入解析

文章目录一、流程部署涉及表及其结构1. 部署流程代码示例:2. 流程部署所涉及表:3. 流程部署涉及表的结构、字段解析二、流程部署中数据的存储的过程一、流程部署涉及表及其结构 1. 部署流程代码示例: 设计俩个流程,并压缩成zip包…

项目引入多类数据源依赖,MyBatisPlus 是如何确定使用哪种数据源的?

背景 壬寅年腊月廿八,坚守在工作岗位。看了一下项目的 pom.xml 依赖,发现了好几个数据库连接相关的包,有 commons-dbcp2、c3p0、hikaricp、druid-spring-boot-starter,这可是四种不同的数据库连接池呢,一个项目中引入…

Github访问办法

GitHub GitHub是为开发者提供Git仓库的托管服务。这是一个让开发者与朋友、同事、同学及陌生人共享代码的完美场所。 GitHub除提供Git仓库的托管服务外,还为开发者或团队提供了一系列功能,帮助其高效率、高品质地进行代码编写。 GitHub的创始人之一Chr…

使用GPIO模拟I2C的驱动程序分析

使用GPIO模拟I2C的驱动程序分析 文章目录使用GPIO模拟I2C的驱动程序分析参考资料:一、回顾I2C协议1.1 硬件连接1.3 协议细节二、 使用GPIO模拟I2C的要点三、 驱动程序分析3.1 平台总线设备驱动模型3.2 设备树3.3 驱动程序分析1. I2C-GPIO驱动层次2. 传输函数分析四、…

SQL注入简介与原理

数据来源 本文仅用于信息安全学习,请遵守相关法律法规,严禁用于非法途径。若观众因此作出任何危害网络安全的行为,后果自负,与本人无关。 SQL注入 首先从SQL注入存在的代码来看 假如这里的id没有过滤,我们就可以输入…

JDK7-hashmap源码

解决冲突的方法 提高效率 特殊情况扰动算法 当冲突大于一定量时需要扩容 在JDK1.7中,HashMap是由数组单向链表实现的,原理图如下: HashMap基本用法 public static void main(String[] args) {//key-value, 数组存储头指针的引用地址&#xf…

SpringCloud项目日志接入ELK实战

写作背景 前面我对SpringCloud Netflix相关的组件,Eureka、Ribbon、OpenFeign、Hystrix和Zuul都进行了复习,后面随着代码越写越多就想着,要不就慢慢完善这个项目代码,把工作里用到的东西慢慢在这个Demo级别的项目里用起来&#x…

idea高效实用优化技巧

文章目录IDEA介绍配置优化注释模板快捷键硬件升级IDEA介绍 IDEA,全称IntelliJ IDEA,是Java语言的集成开发环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、C…

gdb使用简介

目录 编译时,加入-g选项 不加-g选项,将不能加断点 加入-g选项,才能加断点 run与start start run break continue 编译时,加入-g选项 不加-g选项,将不能加断点 加入-g选项,才能加断点 run与start …

经典的 海量数据面试题 —— 送你一套僻邪剑谱~

目录 前言 一、哈希切割 题目一 解法一:哈希切割 二、位图的应用 题目一: 解法一:哈希切割 解法二:双位图 解法三:单位图(进阶版) 题目二 解法一:哈希切割 解法二&#xff…

ChatGPT踩坑(too many signups from the same IP)

ChatGPT踩坑 首先是去OpenAI的官网注册,点击API 进去注册一个账号 然后就会发现注册不成功,继续尝试就会出现下面的情况 后来我发现比较靠谱的方法是,通过google账号注册(或许微软账号也行),后面会有一步让…