1,安装PostgreSQL
官网说PostgreSQL is available in all Ubuntu versions by default。因此去Ubuntu的官方repository(https://packages.ubuntu.com/)中搜索,确定存在后直接安装。
例如此时PostgreSQL12已经发布,但在我用的Ubuntu18.04的repository中还只有PostgreSQL10:
(bionic (18.04LTS) (database): object-relational SQL database (supported version)
10+190ubuntu0.1 [security]: all )
因此还可以按官网步骤手动安装:https://www.postgresql.org/download/linux/ubuntu/
2,Startup或shutdown PostgreSQL
安装后即可start或stopPostgreSQL:
sudo pg_ctlcluster 12 main start
sudo pg_ctlcluster 12 main stop
启动或停止PostgreSQL都会在log中记录下来。因此每次执行了start或stop命令后,查看log文件以确定服务是否正常
tail /var/log/postgresql/postgresql-12-main.log
3,连接PostgreSQL
有多种方式可以连接到PostgreSQL:使用默认安装的PostgreSQL Shell,使用pgadmin或第三方客户端如HeidiSQL。
a,PostgreSQL Shell的文件名为psql。安装PostgreSQL会自动产生一个postgres用户,首先需要切换到postgres用户然后运行psql:
sudo su postgres
/usr/lib/postgresql/12/bin/psql
进入shell之后就可以执行各种任务了:
postgres=# select version();
PostgreSQL 12.4 (Ubuntu 12.4-1.pgdg18.04+1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0, 64-bit
(1 row)
b,pgadmin有客户端和网页版,需要单独安装。这里我没有尝试。
c,我选择在windows环境使用客户端HeidiSQL远程连接PostgreSQL。需要注意的是,PostgreSQL默认配置仅监听127.0.0.1,因此如果想远程连接PostgreSQL,需要修改配置文件。
/etc/postgresql/12/main/pg_hba.conf
打开该文件,找到# IPv4 local connections,将其改为:
host all all 127.0.0.1/32 md5 – 将原本的配置注释掉
host all all 0.0.0.0/0 trust – 加入一行新的配置
配置文件修改后需要重启PostgreSQL,然后可使用netstat查看网络连接。
HeidiSQL的安装很简单不再累述。安装完毕后新建一个新session,连接数据库配置信息为(若是其他第三方工具,配置信息也类似):
network type: postgresql(TCP/IP)
Hostname: 填入postgresql所在机器IP地址,在postgresql机器上用ifconfig命令确认。
用户名: postgres
密码: 不填
端口:5432(默认端口)
Database: 选择你要连接的数据库
HeidiSQL连接上PostgreSQL后即可开始运行SQL:
SELECT * FROM pg_database;
也可以自行在PostgreSQL新建数据库用户,用自建的用户连接数据库。
4,新建数据库
有两种方式新建数据库:
a, 找到/usr/lib/postgresql/12/bin/createdb文件,并运行:
./createdb mydb
b, 或者用psql/第三方客户端连接到PostgreSQL后通过SQL建立:
CREATE DATABASE ‘mydb’;
SELECT * FROM pg_database; – 查看已有数据库
PostgreSQL属于广为人知的关系型数据库管理系统,因此它也使用了我们熟知的table,row,column等概念。但与其他关系型数据库管理系统不同的是,PostgreSQL使用面向对象的思想来组织数据库结构,称为object-oriented database。
在PostgreSQL中,一个由单独的PostgreSQL服务器实例管理的多个数据库称为一个数据库cluster。
5,连接到数据库
a, 进入shell时同时指定连接的数据库
postgres@ubuntu:/usr/lib/postgresql/12/bin$ psql test
psql (12.4 (Ubuntu 12.4-1.pgdg18.04+1))
Type “help” for help.
test=# select * from table; – 数据库名是test,注意此时prompt已经是test了。
test=# \h – 查询SQL命令帮助
test=# \q – 退出psql
test=# SELECT datname FROM pg_database; – 查看现有数据库。
本文详细介绍了如何在Ubuntu 18.04上安装PostgreSQL,包括从官方repository安装,启动/关闭服务,使用PostgreSQL Shell,修改配置以允许远程连接,以及创建数据库。此外,还提到了使用HeidiSQL作为Windows下的客户端工具进行连接。
1365

被折叠的 条评论
为什么被折叠?



