0%

Ubuntu安装PostgreSQL数据库

PostgreSQL简介

PostgreSQL(简称 Postgres)是一款开源、企业级、稳定且功能非常强大的关系型数据库系统。

它始于 1986 年加州大学伯克利分校的 POSTGRES 项目,至今已经发展为:

最先进、最强大的开源关系数据库。

MySQLSQLite 是同等级别的数据库产品,但定位更偏向企业级和高端应用。

Mysql不同的是,Postgredatabasetable之间还有一个schema层。默认的情况下,创建好database后会自动创建并应用一个public schema

安装与基本使用

软件安装

首先更新Ubuntu系统软件包

1
sudo apt install

然后开始安装PostgreSQL

1
sudo apt install postgresql postgresql-contrib

检查是否安装成功

1
sudo systemctl status postgresql

image-20251122143904354

显示active说明安装成功。

设置开机自启动

1
sudo systemctl enable postgresql

image-20251122144018865

用户创建

安装后系统会创建一个系统用户:postgres。切换到该用户

1
sudo su postgres

image-20251122144231021

然后进入postgresql控制台

1
psql

image-20251122144315639

接下来在postgresql控制台中创建数据库用户 + 设置密码。

创建用户ming,设置密码为123456

1
CREATE USER ming WITH PASSWORD '123456';

image-20251122144420296

赋予ming用户,创建数据库的权限

1
ALTER USER ming CREATEDB;

image-20251122144745644

查看用户

1
\du

image-20251122144906460

创建数据库

1
CREATE DATABASE mydb OWNER ming;

image-20251122145103689

列出当前所有数据库

1
\l

image-20251122145143909

创建schema

默认的情况下,创建好database后会自动创建并应用一个public schema

通过以下命令,查看当前数据库下所有的schema

1
\dn

查看当前数据库正在使用的schema

1
SHOW search_path;

image-20251122152743606

如果这个世界你直接创建表的话,默认会把所有的表放入public中。

你也可以创建新的schema,将表创建到新的schema中。

1
CREATE SCHEMA myschema AUTHORIZATION ming;

查看是否创建成功。

image-20251122153125911

可以看到此时输入\dn,在数据库中已经有2个schema了。

切换当前使用的schema

1
SET search_path TO myschema;

查看是否切换成功。

1
SHOW search_path;

image-20251122153454120

切换成功。

退出postgresql

1
\q

此时会自动返回终端

image-20251122145251318

从系统命令行连接数据库

此时先在终端输入exit退出postgres用户

image-20251122145426041

然后使用ming用户连接到postgresqlmydb数据库

1
psql -U ming -d mydb

image-20251122145534362

一样可以输入\l查看当前数据库列表

image-20251122145617045

配置远程登陆

经过前面的一些配置,我们已经可以在自己的本地登陆PostgreSQL,但是无法让其他机器远程访问我们的数据库,如果有这个需求,就需要继续完成以下配置。

首先退出postgresql数据库

1
\q

然后编辑配置文件:/etc/postgresql/*/main/postgresql.conf

1
sudo vim /etc/postgresql/*/main/postgresql.conf

找到#listen_addresses = 'localhost',约在第60

将其修改为:listen_addresses = '*'

image-20251122150137198

保存并推出。

然后编辑第二个配置文件/etc/postgresql/*/main/pg_hba.conf

1
sudo vim /etc/postgresql/*/main/pg_hba.conf

在该文件的最下方插入

1
host    all             all             0.0.0.0/0               md5

image-20251122150330041

至此,配置完成。

-------------本文结束感谢您的阅读-------------