新公司需要用PostgreSQL数据库,而且网上的资料比较少,先自己整理一下;
一、PostgreSQL是什么?
PostgreSQL是一个功能强大的开源对象关系数据库管理系统(ORDBMS)。 用于安全地存储数据; 支持最佳做法,并允许在处理请求时检索它们。
PostgreSQL(也称为Post-gress-Q-L
)由PostgreSQL全球开发集团(全球志愿者团队)开发。 它不受任何公司或其他私人实体控制。 它是开源的,其源代码是免费提供的。
PostgreSQL是跨平台的,可以在许多操作系统上运行,如Linux,OS X和Microsoft Windows等。
二、优势?
跨平台
支持文本、图像、视频、声音等
并提供C/C++、Java、Perl、Python、Ruby放数据库连接(ODBC)的编程接口。
支持SQL的许多功能,例如复杂的SQL查询,子查询,外键,触发器,视图,视图,多进程并发控制(MVCC)、异步复制。
在PostgreSQL中,表可以设置为从“父”表继承其特征。
PostgreSQL是第一个实现多版本并发控制(MVCC)功能的数据库管理系统,甚至在Oracle之前。MVCC功能在Oracle中称为快照隔离。
PostgreSQL是一个通用的对象 - 关系数据库管理系统。它允许您添加使用不同编程语言(如C / C ++,Java等)开发的自定义函数。
PostgreSQL旨在实现可扩展性。在PostgreSQL中,您可以定义自己的数据类型,索引类型,函数语言等。如果您不喜欢系统的任何部分,您可以随时开发自定义插件以增强它以满足您的要求,例如,添加新的优化。
如果您需要任何支持,可以使用活跃的社区来提供帮助。您可以随时找到PostgreSQL社区的答案,以了解使用PostgreSQL时可能遇到的问题。许多公司在您需要时提供商业支持服务。
三、常用工具
psql:命令行工具,也是管理PostgreSQL的主要工具
pgAdmin:是PostgreSQL免费开源的图形化界面管理工具
四、安装
安装的过程比较简单,一路默认就可以了,安装过程中会让输入用户名&密码 ,自己输入就可以
五、连接
连接的过程就比较坑了,我这里使用的是Navicat 12 for PostgreSQL;开始连接的时候,输入用户名和密码,总是提示密码错误;
这里就是个大坑了(以下解决方法也适用于密码忘记的情况),不过在此之前,我更希望你先试一下默认账户postgres,密码是你刚才设置的密码,postgres是默认的超级账户,如果不行的话请再尝试如下方法
解决方法如下:
1,修改验证方式,打开pg_hba.conf
将
# TYPE DATABASE USER ADDRESS METHOD # IPv4 local connections: host all all 127.0.0.1/32 md5
改成
# TYPE DATABASE USER ADDRESS METHOD # IPv4 local connections: host all all 127.0.0.1/32 trust
然后再用Navicat 12 for PostgreSQL去连接,提示,role root does not exist;就是说这个数据库没有这个用户角色;
我们运行pgAdmin4.exe,这个是postgreSQL的自带的管理工具,然后选择数据库,创建用户名初始化密码就可以了;
然后再次用navicat连接,Bingo