PostgreSQL17.x创建数据库及数据库信息查看命令

PostgreSQL17.x创建数据库及数据库信息查看命令

文章目录

  • PostgreSQL17.x创建数据库及数据库信息查看命令
  • 1.创建数据库
    • 1. 使用 SQL 命令创建数据库
    • 2. 创建数据库并指定字符集
    • 3. 验证数据库是否创建成功
    • 3. 远程连接
      • 1. 修改 PostgreSQL 配置文件
      • 2. 修改客户端认证配置
      • 4. 指定某个用户
      • 5. 指定某个网段可连接
      • 6. 重启 PostgreSQL 服务
  • 2. 查看数据库及表
    • 1. 查看数据库信息
    • 2. 查看表信息
      • 1. 连接到 PostgreSQL 服务器
      • 2. 切换数据库
      • 3. 查看当前数据库中的所有表
      • 4. 查看特定表的结构
  • 3. 常用命令
    • 1. 查看数据库
    • 2. 切换数据库
    • 3.查看所有模式
    • 4.查看所有函数
  • 3. 常用命令
    • 1. 查看数据库
    • 2. 切换数据库
    • 3.查看所有模式
    • 4.查看所有函数

1.创建数据库

创建数据库前请确保您具有足够的权限。通常,只有超级用户或被授予了 CREATEDB 权限的用户才能创建数据库。

数据库名称必须遵循 PostgreSQL 的标识符命名规则,且不能与已存在的数据库名称重复。

创建数据库时,还可以指定一些额外的选项,如字符集、模板数据库等。例如可以指定使用 UTF8 字符集

1. 使用 SQL 命令创建数据库

已经连接到了 PostgreSQL 服务器,可以直接运行 CREATE DATABASE 命令来创建一个新的数据库。

CREATE DATABASE dbName;

2. 创建数据库并指定字符集

CREATE DATABASE mydatabase WITH ENCODING 'UTF8';

3. 验证数据库是否创建成功

创建数据库后,您可以使用 \l 命令列出所有数据库,检查新创建的数据库是否存在。

\l

3. 远程连接

要允许 PostgreSQL 用户从远程主机连接到数据库,需要进行几个配置步骤。以下是在 PostgreSQL 17 中配置远程连接的详细步骤:

1. 修改 PostgreSQL 配置文件

首先,需要编辑 PostgreSQL 的配置文件 postgresql.conf,以允许监听来自外部网络的连接。

  1. 找到 postgresql.conf 文件
  • Linux系统中,默认情况下这个文件位于 PostgreSQL 的数据目录中,通常是 /etc/postgresql/17/main//var/lib/pgsql/17/data/

  • Windows系统中,默认情况下这个文件位于 PostgreSQL 的数据目录中,如:D:\Programs\PostgreSQL\17\data\

  1. 编辑 postgresql.conf 文件
  • 使用文本编辑器打开 postgresql.conf 文件。
  • 找到 listen_addresses 配置项,并将其设置为 '*',表示允许从任何 IP 地址连接。例如:
listen_addresses = '*'

2. 修改客户端认证配置

接下来,需要编辑 pg_hba.conf 文件,以允许特定的用户从特定的 IP 地址连接到数据库。

  1. 找到 pg_hba.conf 文件

    • 这个文件通常也位于 PostgreSQL 的数据目录中,与 postgresql.conf 文件在同一位置。
  2. 编辑 pg_hba.conf 文件

    使用文本编辑器打开 pg_hba.conf 文件。

    添加或修改一行,允许特定的用户从特定的 IP 地址连接。例如,允许用户 john 从 IP 地址 192.168.1.100 连接:

    # TYPE  DATABASE        USER            ADDRESS                 METHOD
    host    all             john            192.168.1.100/32        md5
    

    解释:

    • TYPE: 连接类型,host 表示 TCP/IP 连接。
    • DATABASE: 允许连接的数据库名称,all 表示所有数据库。
    • USER: 允许连接的用户名。
    • ADDRESS: 允许连接的 IP 地址和子网掩码。192.168.1.100/32 表示单个 IP 地址,192.168.1.0/24 表示整个子网。
    • METHOD: 认证方法,md5 表示使用 MD5 加密的密码认证。

4. 指定某个用户

使用文本编辑器打开 pg_hba.conf 文件。

# TYPE  DATABASE        USER            ADDRESS                 METHOD
...
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             192.168.1.26/32            scram-sha-256
# IPv6 local connections:
....

5. 指定某个网段可连接

# TYPE  DATABASE        USER            ADDRESS                 METHOD
...
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             192.168.1.0/24            scram-sha-256
# IPv6 local connections:
....

添加或修改一行,允许特定网段的主机连接。例如,允许用户 all(所有用户)192.168.1.0/24 网段的主机连接

  • 解释:
    • TYPE: 连接类型,host 表示 TCP/IP 连接。
    • DATABASE: 允许连接的数据库名称,all 表示所有数据库。
    • USER: 允许连接的用户名,all 表示所有用户。
    • ADDRESS: 允许连接的 IP 地址和子网掩码。192.168.1.0/32 表示整个 192.168.1.0192.168.1.255 的网段。
    • METHOD: 认证方法,scram-sha-256 表示使用 scram-sha-256加密的密码认证。

6. 重启 PostgreSQL 服务

修改配置文件后,需要重启 PostgreSQL 服务以使更改生效。

# Windows下先停止在启动
# 停止服务
net stop postgresql-x64-17
# 启动服务
net start postgresql-x64-17

2. 查看数据库及表

1. 查看数据库信息

\l

2. 查看表信息

在 PostgreSQL 17 中,使用 psql 命令行工具可以方便地切换数据库和查看表结构。以下是详细的步骤和命令:

1. 连接到 PostgreSQL 服务器

首先,使用 psql 命令连接到 PostgreSQL 服务器。假设您要以 john 用户连接到 localhost 上的 PostgreSQL 服务器:

psql -h localhost -U john
  • -h localhost: 指定服务器地址,如果是本地连接,可以省略。
  • -U john: 指定连接的用户名。

连接成功后,您会看到 psql 提示符,类似于 john=#

2. 切换数据库

如果您已经连接到某个数据库,但需要切换到另一个数据库,可以使用 \c 命令。假设您要切换到 mydatabase 数据库:

\c mydatabase

3. 查看当前数据库中的所有表

要查看当前数据库中的所有表,可以使用 \dt 命令:

\dt

这个命令会列出当前数据库中的所有表。

# 切换到 syson-db数据库
postgres-# \c "syson-db"
您现在已经连接到数据库 "syson-db",用户 "postgres".
# 查看当前数据库下的表
syson-db-# \dt关联列表架构模式 |          名称           |  类型  | 拥有者
----------+-------------------------+--------+--------public   | databasechangelog       | 数据表 | dbuserpublic   | databasechangeloglock   | 数据表 | dbuserpublic   | document                | 数据表 | dbuserpublic   | image                   | 数据表 | dbuserpublic   | nature                  | 数据表 | dbuserpublic   | project                 | 数据表 | dbuserpublic   | project_image           | 数据表 | dbuserpublic   | representation_content  | 数据表 | dbuserpublic   | representation_metadata | 数据表 | dbuserpublic   | semantic_data           | 数据表 | dbuserpublic   | semantic_data_domain    | 数据表 | dbuser
(11 行记录)

4. 查看特定表的结构

如果您想查看某个表的详细结构,可以使用 \d 命令加上表名。例如,查看 users 表的结构:

\d users

3. 常用命令

1. 查看数据库

\l

2. 切换数据库

\c dbName

3.查看所有模式

\dn

4.查看所有函数

\df

想查看某个表的详细结构,可以使用 \d 命令加上表名。例如,查看 users 表的结构:

\d users

3. 常用命令

1. 查看数据库

\l

2. 切换数据库

\c dbName

3.查看所有模式

\dn

4.查看所有函数

\df

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++之异常智能指针其他

C之异常&智能指针&其他 异常关于函数异常声明异常的优劣 智能指针auto_ptrunique_ptrshared_ptrweak_ptr定制删除器 智能指针的历史与boost库 特殊类单例模式饿汉和懒汉的优缺点 C四种类型转换CIO流结语 异常 try括起来的的代码块中可能有throw一个异常(可…

混沌工程/混沌测试/云原生测试/云平台测试

背景 私有云/公有云/混合云等具有复杂,分布式,环境多样性等特点,许多特殊场景引发的线上问题很难被有效发现。所以需要引入混沌工程,建立对系统抵御生产环境中失控条件的能力以及信心,提高系统面对未知风险得能力。 …

Hive学习基本概念

基本概念 hive是什么? Facebook 开源,用于解决海量结构化日志的数据统计。 基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能 本质是将HQL转化为MapReduce程序。 Hive处理的数据存储在H…

数据分析流程中的Lambda架构,以及数据湖基于Hadoop、Spark的实现

文章目录 一、Lambda架构1、Lambda的三层架构2、简单解释:3、Lambda架构的优缺点 二、数据湖基于Hadoop、Spark的实现1、架构2、数据管理(存储层的辅助功能) 一、Lambda架构 1、Lambda的三层架构 Batch View(批处理视图层&#…

算法笔记:力扣142.环形链表返回链表入口

该题目通俗来说就是需要返回节点的入口,这点与判断是否有环不同,有环是通过快慢指针的形式来判断,但当快慢指针相等的时候,此时的节点不一定是环的入口节点。所以这题需要注意。 关键API: map.putIfAbsent(key,value)…

医院管理系统

私信我获取源码和万字论文,制作不易,感谢点赞支持。 医院管理系统 摘要 随着信息互联网信息的飞速发展,医院也在创建着属于自己的管理系统。本文介绍了医院管理系统的开发全过程。通过分析企业对于医院管理系统的需求,创建了一个计…

说说Elasticsearch查询语句如何提升权重?

大家好,我是锋哥。今天分享关于【说说Elasticsearch查询语句如何提升权重?】面试题。希望对大家有帮助; 说说Elasticsearch查询语句如何提升权重? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 在 Elasticsearch 中&…

【Spring Security框架解析】

文章目录 Spring-security介绍Spring-security认证授权流程认证流程Security流程认证过滤器实现获取UserDetail信息 配置Security Spring-security介绍 Spring Security是一个功能强大且高度可定制的Java安全框架,用于保护基于Spring的应用程序。它提供了全面的安全…

[CISCN 2019华东南]Web11

[CISCN 2019华东南]Web11 给了两个链接但是都无法访问 这里我们直接抓包试一下 我们插入X-Forwarded-For:127.0.0.1 发现可以修改了右上角的IP地址,从而可以进行注入 {$smarty.version} 查看版本号 if标签执行PHP命令 {if phpinfo()}{/if} 查看协议 {if system(…

使用SpringBoot实现邮件发送(QQ邮箱为例)

使用SpringBoot实现邮件发送(QQ邮箱为例) 一、获取授权码 1.首先进入qq邮箱找到设置 2、账号栏目,找到POP3/SMTP服务 并开启服务 3、获取授权码 二、SpringBoot集成邮件发送 1.创建邮件发送服务类 package com.example.demo.service;import org.springframework…

hint: Updates were rejected because the tip of your current branch is behind!

问题 本地仓库往远段仓库推代码时候提示: error: failed to push some refs to 192.168.2.1:java-base/java-cloud.git hint: Updates were rejected because the tip of your current branch is behind! refs/heads/master:refs/heads/master [rejected] (…

基于BM1684的AI边缘服务器-模型转换,大模型一体机(二)

目标追踪 注:所有模型转换都是在docker环境中的 先进入docker 这里我们是要在docker环境里编译的,所以先进入docker :~/tpu-nntc# docker run -v $PWD/:/workspace -it sophgo/tpuc_dev:latest初始化环境 root2bb02a2e27d5:/workspace/tpu-nntc# s…

ROS基本框架2——在ROS开发中创建并使用自定义消息(C++版本)

ROS基本框架2——在ROS开发中创建并使用自定义消息(C++版本) code review! 参考笔记 1.ROS基本框架1——编写简单的发布者和订阅者(C++和Python版本) 2.ROS基本框架2——在ROS开发中创建并使用自定义消息(C++版本) 文章目录 ROS基本框架2——在ROS开发中创建并使用自定义…

实例讲解MATLAB绘图坐标轴标签旋转

在进行绘图时需要在图片上添加上做标轴的标签,但是当数据量比较多时,例如一天24小时的数据,这时把每个小时显示在左边轴的标签上,文字内容放不下,因此需要将坐标轴标签旋转一定的角度,这样可以更好在图形上…

Spark 内存管理机制

Spark 内存管理 堆内内存和堆外内存 作为一个 JVM 进程,Executor 的内存管理建立在 JVM(最小为六十四分之一,最大为四分之一)的内存管理之上,此外spark还引入了堆外内存(不在JVM中的内存),在spark中是指不…

为什么爱用低秩矩阵

目录 为什么爱用低秩矩阵 一、定义与性质 二、区别与例子 为什么爱用低秩矩阵 我们更多地提及低秩分解而非满秩分解,主要是因为低秩分解在数据压缩、噪声去除、模型简化和特征提取等方面具有显著的优势。而满秩分解虽然能够保持数据的完整性,但在实际应用中的场景较为有限…

Dify+Docker

1. 获取代码 直接下载 (1)访问 langgenius/dify: Dify is an open-source LLM app development platform. Difys intuitive interface combines AI workflow, RAG pipeline, agent capabilities, model management, observability features and more, …

Android Studio的AI工具插件使用介绍

Android Studio的AI工具插件使用介绍 一、前言 Android Studio 的 AI 工具插件具有诸多重要作用,以下是一些常见的方面: 代码生成与自动补全 代码优化与重构 代码解读 学习与知识获取 智能搜索与资源推荐实际使用中可以添加注释,解读某段代…

DOCKER学习总结

这里写目录标题 一、Docker安装1.1 在线安装1.2 离线安装安装配置启动服务 1.3 配置镜像1.4 Docker启动相关命令 二、Docker三大核心概念2.1 镜像2.2 容器2.3 仓库2.3.1 公有仓库2.3.2 私有仓库 二、容器与虚拟机比较 一、Docker安装 1.1 在线安装 查看是否安装dockeryum lis…

深入浅出体验AI生图产品Dall-E

DALL-E是由OpenAI开发的一种革命性的AI图像生成工具,能够根据文本描述生成图像。它的名字灵感来源于著名画家萨尔瓦多达利(Salvador Dal)和皮克斯动画电影中的角色瓦力(WALL-E),这暗示了其在艺术创造力与技…