在 Debian 9/Debian 8 上安装 PostgreSQL 11
在本教程中,我们将介绍如何在 Debian 9/Debian 8 上安装 PostgreSQL 11。PostgreSQL 是一个用 C 编写的功能强大、高度可扩展的数据库服务器。PostgreSQL 的开发由 PostgreSQL Global Development Group 负责。
PostgreSQL 提供了一个对象关系数据库系统,允许您管理大量数据集。 PostgreSQL Server 具有保证容错和数据完整性的功能,因此可以用于大量生产使用。检查 PostgreSQL 11 发布页面以了解新功能。
要在 CentOS/Fedora 上安装 PostgreSQL 11,请使用以下链接:
- 如何在 CentOS 7 上安装 PostgreSQL 11
- 如何在 Fedora 上安装 PostgreSQL 11
以下是在 Debian 9/Debian 8 上安装 PostgreSQL 11 的步骤。
第 1 步:添加 PostgreSQL 11 APT 存储库
导入存储库签名密钥:
sudo apt update
sudo apt install -y vim wget
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
然后将实际的存储库内容添加到您的 Debian 9/Debian 8 系统:
RELEASE=$(lsb_release -cs)
echo "deb http://apt.postgresql.org/pub/repos/apt/ ${RELEASE}"-pgdg main | sudo tee /etc/apt/sources.list.d/pgdg.list
存储库文件内容应如下所示
$ cat /etc/apt/sources.list.d/pgdg.list
deb http://apt.postgresql.org/pub/repos/apt/ stretch-pgdg main
步骤 2:在 Debian 9/Debian 8 上安装 PostgreSQL 11
添加存储库后,继续在 Debian 9/Debian 8 上安装 PostgreSQL 11。
sudo apt update
sudo apt -y install postgresql-11
第 3 步:启用远程访问
默认情况下,只能从本地主机访问 PostgreSQL 数据库服务器。
$ sudo ss -tunelp | grep 5432
tcp LISTEN 0 128 127.0.0.1:5432 0.0.0.0:* users:(("postgres",pid=15785,fd=3)) uid:111 ino:42331 sk:6 <->
编辑 PostgreSQL 11 配置文件以更改监听地址:
sudo vim /etc/postgresql/11/main/postgresql.conf
在连接和身份验证部分下添加以下行。
listen_addresses = '*'
您还可以指定服务器IP地址
listen_addresses = '10.10.1.6'
请参阅下面的屏幕截图。
进行更改后重新启动 postgresql
sudo systemctl restart postgresql
确认新的 PostgreSQL 绑定地址:
$ sudo ss -tunelp | grep 5432
tcp LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* users:(("postgres",pid=16066,fd=3)) uid:111 ino:42972 sk:8 <->
tcp LISTEN 0 128 [::]:5432 [::]:* users:(("postgres",pid=16066,fd=6)) uid:111 ino:42973 sk:9 v6only:1 <->
如果您有活动的 UFW 防火墙,请允许端口 5432
sudo ufw allow 5432/tcp
第 4 步:设置 PostgreSQL 管理员用户密码
为默认的 postgres 管理员用户设置密码
$ sudo su - postgres
postgres@os1:~$ psql -c "alter user postgres with password 'StrongPassword'"
ALTER ROLE
第 5 步:测试 PostgreSQL 11 数据库功能
添加测试数据库用户:
createuser test_user1
添加测试数据库并将所有权授予 test_user1
:
postgres@ubuntu-01:~$ createdb test_db -O test_user1
登录test_db数据库:
~$ psql -l | grep test_db
test_db | test_user1 | LATIN1 | en_US | en_US |
~$ psql test_db
设置用户密码:
testdb=# alter user test_user1 with password 'MyDBpassword';
ALTER ROLE
创建一个表并添加一些虚拟数据:
testdb=# create table test_table ( id int,first_name text, last_name text );
CREATE TABLE
testdb=# insert into test_table (id,first_name,last_name) values (1,'John','Doe');
INSERT 0 1
显示表数据
testdb=# select * from test_table;
id | first_name | last_name
----+------------+-----------
1 | John | Doe
(1 row)
删除测试表
testdb=# DROP TABLE test_table;
DROP TABLE
testdb=# \q
删除测试数据库
postgres@ubuntu-01:~$ dropdb test_db;
就是这样。您现在已经在 Debian 9/Debian 8 上安装了 PostgreSQL 11 数据库服务器。
PostgreSQL 数据库视频课程:
- SQL 和 PostgreSQL:完整的开发人员指南
- 完整的 Python/PostgreSQL 课程 2.0
- SQL 和 PostgreSQL 初学者:成为 SQL 专家
- 使用 PostgreSQL 学习 SQL:从零到英雄
- PostgreSQL 训练营:从初级到高级,60 多个小时
如果您想阅读更多内容,请访问 PostgreSQL 官方文档页面。