如何在Ubuntu 20.04上安装和使用PostgreSQL:一步步指南

如何在Ubuntu 20.04上安装和使用PostgreSQL:一步步指南

在Ubuntu 20.04上安装和使用PostgreSQL数据库包括几个明确的步骤:安装、配置、创建用户和数据库、以及基本的数据库操作。下面,我将详细解释每个步骤,并提供具体的命令行示例。

1. 安装PostgreSQL

首先,更新你的Ubuntu系统的包列表,以确保安装最新版本的软件包。

bash 复制代码
sudo apt update

然后,安装PostgreSQL及其附带的软件包。

bash 复制代码
sudo apt install postgresql postgresql-contrib

此命令将安装PostgreSQL数据库服务器以及一些额外的实用程序和功能扩展。

2. 检查PostgreSQL服务

安装完成后,默认情况下,PostgreSQL服务会自动启动。你可以使用以下命令来检查PostgreSQL服务的状态。

bash 复制代码
sudo systemctl status postgresql.service

这个命令会显示服务是否正在运行。

3. 切换到PostgreSQL用户

PostgreSQL安装完成后,会创建一个名为postgres的系统用户,用于管理数据库。要使用这个用户,需要切换到该用户:

bash 复制代码
sudo -i -u postgres

现在,你应该以postgres用户的身份登录,可以开始执行PostgreSQL命令。

4. 创建一个新的数据库用户和数据库

首先,你可以创建一个新的数据库用户。下面的命令创建一个名为example_user的新用户,并提示设置密码:

bash 复制代码
createuser --interactive --pwprompt

按照提示操作,例如:

  • 输入新角色的名字: example_user
  • 是否让新角色成为一个超级用户?n
  • 是否允许新角色创建数据库?y (如果需要的话)
  • 是否允许新角色创建更多新角色?n
  • 输入密码

接着,创建一个名为example_db的数据库,由example_user拥有:

bash 复制代码
createdb -O example_user example_db

5. 使用psql命令行工具

你可以使用psql命令行工具来管理你的数据库。要连接到你刚才创建的数据库:

bash 复制代码
psql -d example_db -U example_user

6. 创建表并执行一些基本的SQL操作

psql提示符下,你可以开始创建表并执行SQL查询。例如,创建一个简单的表:

sql 复制代码
CREATE TABLE employees (
    id SERIAL PRIMARY KEY,
    name VARCHAR(100),
    position VARCHAR(100),
    salary DECIMAL(10, 2)
);

然后,向表中插入数据:

sql 复制代码
INSERT INTO employees (name, position, salary) VALUES ('Alice', 'Manager', 85000.00);

查询表中的数据:

sql 复制代码
SELECT * FROM employees;

7. 退出psql

执行完你的数据库操作后,可以通过输入\q退出psql

8. 配置远程访问(可选)

如果你需要从其他机器远程访问PostgreSQL数据库,你需要修改postgresql.confpg_hba.conf文件。这些文件通常位于/etc/postgresql/12/main/(版本号可能不同)。

postgresql.conf中,找到listen_addresses行,并将其设置为你的服务器IP或'*'(允许从任何地址连接)。

pg_hba.conf中,添加一行来允许远程连接,例如:

conf 复制代码
host    all             all             0.0.0.0/0               md5

之后,重启PostgreSQL服务以应用更改:

bash 复制代码
sudo systemctl restart postgresql

总结

以上就是在Ubuntu 20.04上安装和基本使用PostgreSQL的步骤。根据你的具体需求,你可能还需要进行更多的配置和优化。

相关推荐
jonyleek19 分钟前
低代码平台的数据架构设计:动态表单存储与查询优化
低代码·postgresql·开源·数据架构·动态表单·jvs低代码平台·jvs低代码
青禾8376 小时前
Linux 操作系统入门指南:从目录结构到常用命令
linux·运维·服务器
闖647 小时前
入门Linux操作系统|零基础吃透原理、目录、权限、常用命令
linux
Logintern097 小时前
PostgreSQL 的 ORDER BY 多列排序
数据库·postgresql
bruk_spp8 小时前
linux pinctrl
linux
en.en..9 小时前
Linux系统编程:fcntl 与 ioctl
linux·运维·服务器
自动化监测Learner9 小时前
Navicat Premium 17 中文版安装教程(2026最新版)
java·linux·数据库
pingglala10 小时前
ubuntu-nat模式不能上网解决方法
linux·运维·ubuntu
微软技术分享11 小时前
Ubuntu 本地部署Ollama+OpenWebUI教程
数据库·ubuntu·postgresql
Zixhy11 小时前
多点巡检机器人项目技术总结
linux·c++·机器人·自动驾驶