Ubuntu 安装PostgreSQL

  1. 安装 PostgreSQL 包:

    • 使用 apt-get 命令安装 PostgreSQL 客户端和服务器包:

      sh 复制代码
      sudo apt update
      sudo apt install postgresql postgresql-client
  2. 启动 PostgreSQL 服务:

    • 在 Ubuntu 中,PostgreSQL 服务默认会自动启动。你可以使用以下命令来启动服务:

      sh 复制代码
      sudo systemctl start postgresql
    • 设置 PostgreSQL 服务开机自启:

      sh 复制代码
      sudo systemctl enable postgresql
  3. 配置 PostgreSQL:

    • 在 Ubuntu 中,PostgreSQL 的配置文件通常位于 /etc/postgresql/{version}/main/ 目录下。
  4. 创建用户和数据库:

    • 切换到 PostgreSQL 用户 :
      通常,PostgreSQL 服务以 postgres 系统用户运行。你需要切换到这个用户来执行数据库创建操作:
    sh 复制代码
    sudo -u postgres psql

    或者直接创建用户

    sh 复制代码
    sudo -u postgres createuser --username postgres X
    • 创建数据库 :
      在 psql 命令行界面中,使用 CREATE DATABASE 命令创建新的数据库。例如,如果你想创建名为 Y 的数据库,可以执行以下命令:
    sql 复制代码
    CREATE DATABASE Y;
    • 授权给特定用户 :
      如果你想让操作系统用户 X 能够访问或拥有数据库 Y,你需要确保 X 有一个对应的 PostgreSQL 角色,并且给予相应的权限。首先,你需要创建一个角色(如果尚未创建):
    sql 复制代码
    CREATE ROLE X LOGIN;

    然后,你可以将这个角色设置为数据库 Y 的所有者:

    sql 复制代码
    ALTER DATABASE Y OWNER TO X;

    或者,你可以在创建数据库时直接指定所有者:

    sql 复制代码
    CREATE DATABASE Y OWNER X;
    • 退出 psql :
      完成创建数据库后,使用以下命令退出 psql 命令行界面:
    sql 复制代码
    \q
  5. 创建表:

    • 连接到 PostgreSQL 数据库:

      sh 复制代码
      sudo -u postgres psql your_database_name
    • 在 psql 命令行中创建表:

      sql 复制代码
      CREATE TABLE incoming_test (
        recorded_on TIMESTAMP WITH TIME ZONE NOT NULL,
        "Accounting-Record-Type" INTEGER,
        "Session-Id" BYTEA,
        "Accounting-Record-Number" INTEGER,
        "Route-Record1" BYTEA,
        "Route-Record2" BYTEA,
        "Route-Record3" BYTEA,
        "Route-Record4" BYTEA
      );
    • 退出 psql:

      sql 复制代码
      \q
  6. 查询数据库:

  • 查看数据库:执行命令 \l #效果类似mysql的show databases;
  • 选择数据库:执行命令 \c database #效果类似mysql的use database;
  • 查询该数据库的表:与mysql一致的select语句
  • postgres 查看全部数据库

请注意,上述命令中的 your_username 和 your_database_name 需要替换为你自己的用户名和数据库名。另外,root 用户在 PostgreSQL 中通常已经存在,你可能需要使用其他用户名。

在执行这些操作时,确保你有足够的权限,通常需要 sudo 来获取超级用户权限。如果你在执行过程中遇到任何问题,可以参考 PostgreSQL 的官方文档或查看 PostgreSQL 的日志文件来获取更多信息。

相关推荐
丰色木夕26 分钟前
Ubuntu22.04下源码编译安装USD-Brep
c++·ubuntu·nvidia·usd-brep
吹什么轩39 分钟前
linux系统复习:僵尸进程与孤儿进程
linux·运维·php
殷忆枫1 小时前
告别依赖地狱!在 Ubuntu 上用 Docker 极速部署 Home Assistant 与 MQTT,并接入 Siri 与嵌入式 C 终端
linux·ubuntu·docker
第404号工位1 小时前
手机到底有没有偷听我们?我抓包了 72 小时,抓到了真凶
linux·人工智能·架构
字节跳动开源1 小时前
ByteDance 2026 上半年 Linux 内核贡献回顾
linux·开源
小此方2 小时前
Linux网络(二十八):从NAT转换到正反向代理:图解内网通信、NAPT端口映射
linux·运维·网络
刚入门的大一新生2 小时前
Linux-进程池
linux·运维·服务器
qq_白羊座3 小时前
:: 符号(Postgres / Hologres)
postgresql
鱼很腾apoc3 小时前
【MySQL】第4期 用户管理与 C 语言连接编程详解
linux·服务器·c语言·mysql·connector/c
刚入门的大一新生3 小时前
Linux-进程间通信1
linux·运维·服务器