如何在 Debian 12 上安装 PostgreSQL?

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: 【4月更文挑战第25天】

PostgreSQL是一种功能强大的开源关系型数据库管理系统,它在安全性、可扩展性和标准兼容性方面都有很好的表现。

更新系统

在安装任何新软件之前,我们强烈建议您更新系统,以确保您安装的软件是最新版本。打开终端并输入以下命令:

sudo apt update && sudo apt upgrade

这个命令将更新软件包列表并安装所有可用的更新。您可能需要输入管理员密码以确认操作。

安装PostgreSQL

一旦系统更新完成,我们可以开始安装PostgreSQL。在终端中输入以下命令:

sudo apt install postgresql postgresql-contrib

这个命令将安装PostgreSQL数据库服务器以及相关的附加组件。

在安装过程中,您可能会看到一些提示信息,询问是否要继续安装。按下Y键并按回车以确认。安装过程可能需要一些时间,具体取决于您的系统和网络速度。

安装完成后,您将会看到一条消息,表明PostgreSQL已经成功安装并已启动。您可以通过以下命令验证它的状态:

sudo systemctl status postgresql

这将显示PostgreSQL服务的当前状态。如果一切正常,您应该看到服务状态为active (running)

访问PostgreSQL

一旦PostgreSQL安装完成,您可以使用以下命令访问PostgreSQL数据库:

sudo -i -u postgres
psql

这两个命令将以postgres用户的身份启动PostgreSQL命令行界面。在命令行界面中,您可以执行各种SQL命令来管理数据库。

例如,您可以尝试使用以下命令列出所有数据库:

\l

这将显示当前数据库服务器上的所有数据库列表。

更改PostgreSQL用户密码(可选)

默认情况下,PostgreSQL用户postgres是没有密码的。为了提高安全性,您可以为postgres用户设置密码。在PostgreSQL命令行界面执行以下命令:

\password postgres

然后输入新密码并确认。从那时起,您将需要使用新密码来登录postgres用户。

创建新的数据库

要在PostgreSQL中创建新的数据库,您可以使用以下命令:

sudo -i -u postgres
createdb mydatabase

这将创建一个名为mydatabase的新数据库。您可以将其替换为您喜欢的任何名称。

创建新的用户

您还可以创建新的用户,并为其分配数据库权限。在PostgreSQL命令行界面执行以下命令:

CREATE USER myuser WITH PASSWORD 'mypassword';

这将创建一个名为myuser的新用户,并为其设置密码为mypassword。您可以根据需要更改用户名和密码。

接下来,您可以为新用户分配数据库权限。例如,要将所有权限授予新用户myuser

GRANT ALL PRIVILEGES ON DATABASE mydatabase TO myuser;

退出PostgreSQL命令行界面

完成数据库和用户的创建后,您可以使用以下命令退出PostgreSQL命令行界面:

\q

备份数据库

要备份数据库,您可以使用pg_dump工具。打开终端并执行以下命令:

sudo -i -u postgres
pg_dump mydatabase > mydatabase_backup.sql

这将使用pg_dump工具将名为mydatabase的数据库备份到名为mydatabase_backup.sql的文件中。您可以将文件名和路径更改为您喜欢的任何位置。

恢复数据库

要恢复数据库,您可以使用psql命令以及备份文件。在终端中执行以下命令:

sudo -i -u postgres
psql mydatabase < mydatabase_backup.sql

这将使用psql命令将备份文件mydatabase_backup.sql中的数据库数据恢复到名为mydatabase的数据库中。

配置文件

PostgreSQL的配置文件位于/etc/postgresql/{version}/main/postgresql.conf。您可以使用任何文本编辑器打开并编辑此文件,以修改各种配置选项。请注意,对配置文件的更改可能需要重新启动PostgreSQL服务才能生效。

重启PostgreSQL服务

要重新启动PostgreSQL服务,您可以使用以下命令:

sudo systemctl restart postgresql

这将重新启动PostgreSQL服务器,并使任何配置更改生效。

常见问题解决

访问被拒绝错误

如果您在尝试连接到PostgreSQL数据库时遇到“访问被拒绝”错误,请确保您使用了正确的用户名和密码,并且该用户具有适当的权限。您还可以检查PostgreSQL的日志文件以获取更多信息,该文件通常位于/var/log/postgresql/postgresql-{version}-main.log

空密码问题

默认情况下,PostgreSQL用户postgres是没有密码的。为了提高安全性,建议您为postgres用户设置密码。您可以使用以下命令为postgres用户设置密码:

sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'newpassword';"

数据库连接问题

如果您无法连接到PostgreSQL数据库,请确保PostgreSQL服务正在运行。您可以使用以下命令检查服务状态:

sudo systemctl status postgresql

如果服务未运行,请尝试重新启动服务并检查错误日志以获取更多信息。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
8天前
|
关系型数据库 Go 网络安全
go语言中PostgreSQL驱动安装
【11月更文挑战第2天】
35 5
|
15天前
|
数据库
|
1月前
|
Oracle Java 关系型数据库
在 Debian 12 上安装 Java 21
在 Debian 12 上安装 Java 21
|
3月前
|
SQL 关系型数据库 Linux
在CentOS 6上安装和使用PostgreSQL的方法
在CentOS 6上安装和使用PostgreSQL的方法
40 2
|
3月前
|
Ubuntu 关系型数据库 数据库
在Ubuntu 18.04上安装和使用PostgreSQL的方法
在Ubuntu 18.04上安装和使用PostgreSQL的方法
62 1
|
3月前
|
Ubuntu 关系型数据库 Linux
在Ubuntu 14.04上安装和使用PostgreSQL的方法
在Ubuntu 14.04上安装和使用PostgreSQL的方法
47 1
|
3月前
|
安全 Ubuntu Shell
深入挖掘Debian系统中安装Docker
【8月更文挑战第21天】在Debian系统中安装Docker需按步骤操作:首先确保软件包更新,执行`sudo apt update`并安装必要软件包支持HTTPS;接着添加Docker官方GPG密钥以验证包的完整性和安全性;然后设置Docker稳定版仓库,通过`tee`命令配置仓库文件;再更新软件包索引;最后安装Docker Engine并通过运行测试容器确认安装成功。此指南适用于多数Debian版本,如遇问题请查阅官方文档。
245 0
|
3月前
|
存储 Linux 开发工具
在Debian 8上安装Git的方法
在Debian 8上安装Git的方法
33 0
|
3月前
|
关系型数据库 Linux 数据库
在CentOS 7上安装和使用PostgreSQL的方法
在CentOS 7上安装和使用PostgreSQL的方法
278 0
|
3月前
|
SQL 关系型数据库 Linux
如何在 Debian 8 上安装和使用 PostgreSQL 9
如何在 Debian 8 上安装和使用 PostgreSQL 9
51 0