在Ubuntu 20.04/18.04/16.04上安装PostgreSQL 11
此简短教程将在Ubuntu 20.04/18.04/16.04上安装PostgreSQL 11.
PostgreSQL Server是一个强大的开源和高度可扩展的数据库服务器。
PostgreSQL提供对象关系数据库系统,允许我们管理广泛的SQL数据集。
关键PostgreSQL 11增强功能:
分区功能的改进,支持嵌入的交易到并行性的交易管理程序的过程现在支持SQL:2011 Standardoptional即时(JIT)编译中所示的所有帧选项,用于一些SQL代码,加快对表现形式改进的评估,包括避免的能力表格重写用于alter table ...添加具有非空列的列,现在可以使用Create Index的include子句创建一个非空列DefaultCovering索引
按照下一节中提供的步骤在Ubuntu 20.04/18.04/16.04上安装PostgreSQL 11.
第1步:更新系统并安装依赖项
如果是新服务器实例,建议更新当前系统包。
sudo apt update && sudo apt -y upgrade sudo reboot
重新启动系统后,安装 vim
和 wget
如果尚未安装。
sudo apt install -y wget vim
步骤2:添加PostgreSQL 11 APT存储库
在向Ubuntu 20.04/18.04/16.04系统添加存储库内容之前,我们需要导入存储库签名密钥:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add
导入GPG密钥后,将存储库内容添加到Ubuntu 20.04/18.04/16.04系统:
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/bionic-pgdg main
第3步:在Ubuntu 20.04/18.04/16.04上安装PostgreSQL 11
最后一个安装步骤适用于PostgreSQL 11 Packages。
运行以下命令以在Ubuntu 20.04/18.04/16.04上安装PostgreSQL 11.
sudo apt update sudo apt -y install postgresql-11
第4步:允许从远程主机访问PostgreSQL
默认情况下,对PostgreSQL数据库服务器的访问仅是来自localhost的。
$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 <->
要允许网络访问,请编辑配置文件:
sudo vim /etc/postgresql/11/main/postgresql.conf
在"连接"和"身份验证"部分下添加以下行。
listen_addresses = '*'
我们还可以指定服务器IP地址
listen_addresses = '192.168.17.12'
请参阅下面的屏幕截图。
别忘了重启 postgresql
改变后的服务
sudo systemctl restart postgresql
确认PostgreSQL的BIND地址:
$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 <->
如果我们有一个Active UFW防火墙,请允许端口5432
sudo ufw allow 5432/tcp
第5步:设置PostgreSQL管理员用户的密码并进行测试
为默认管理员用户设置密码
$sudo su - postgres Hyman@theitroad:~$psql -c "alter user postgres with password 'StrongPassword'" ALTER ROLE
我们还可以添加其他数据库用户:
createuser dbuser1
添加测试数据库:
Hyman@theitroad:~$createdb testdb -O dbuser1
通过登录DBUSER1并在TestDB上进行操作进行测试操作
~$psql -l | grep testdb testdb | dbuser1 | LATIN1 | en_US | en_US |
设置用户密码:
$psql psql (11.2 (Ubuntu 11.2-1.pgdg18.04+1)) Type "help" for help. postgres=# alter user dbuser1 with password 'DBPassword'; 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
删除测试数据库
Hyman@theitroad:~$dropdb testdb;
步骤6:安装Web管理工具(可选)
为了轻松管理,考虑将PGADMIN 4安装到Ubuntu系统上。