三亚市网站建设_网站建设公司_搜索功能_seo优化
2026/1/1 19:23:23 网站建设 项目流程

Begin

简单介绍

PostgreSQL的开源协议和Linux内核版本的开源协议是一样的.BDS协议,这个协议基本和MIT开源协议-样,说人话,就是你可以对PostgreSQL进行一些封装,然后商业化是收费。

PostgreSQL之前叫ingres,后面为了解决一些ingres中的一些问题,作为后面的ingres,就起名postgre.

PostgreSQL版本迭代的速度比较快,现在最新的正式的发布版本,已经到了18.RELEASE。PGSQL的版本选择一般有两种:

  • 如果为了稳定的运行,推荐使用12.x版本,
  • 如果想体验新特性,推荐使用14.x版本。

PGSQL允许跨版本升级,而且没有什么大问题,

PGSQL社区特别活跃,基本是三个月一发版。意味着很多常见的BUG都可以得到及时的修复。

中文社区:https://www.postgres.cn/v2/home

与Mysql区别

Mysql劣势:

  • 数据类型不够丰富
  • 序列Sequence不支持
  • 性能监控成本高,工具少
  • 主从复制没有一个官方的同步策略

PostgreSQL优势:

  • 数据类型丰富
  • 有序列的概念
  • 开源,插件丰富
  • 支持主从复制的同步操作,0数据丢失
  • PostgreSQL的MVCC与Mysql不同

安装(Arch为例)

sudo chown -R postgres:postgres /var/lib/postgres sudo -u postgres initdb -D /var/lib/postgres/data --encoding=UTF8 --locale=C.UTF-8  # 初始化数据库sudo systemctl start postgresql # 启动服务

以postgres用户启动

sudo -u postgres psql

为了方便,可以设置alias psql=sudo -u postgres psql

配置远程连接

默认postgre不支持远程连接

# 修改postgres密码
sudo passwd postgres 您的密码
# 进入postgres用户
su postgres

ls 可以看到下面的文件

image-20260101102336002

对于MYSQL需要grand追加用户修改。postgre则基于配置文件修改:

nvim pg_hba.conf# 添加以下配置,允许所有用户远程连接所有数据库
host 	all 		all 		0.0.0.0/0		md5nvim postgresql.conf# 将listen_address改为*
listen_address='*'

其他的参考配置文件的默认注释。

修改配置之后需要重启。

sudo systemctl restart postgresql

配置日志

nvim postgresql.conf

找到PEPORTING AND LOGGING

logging_collector = on # 启动日志log_directory = 'log' # 日志存放在当前的log目录下log_filename = 'postgresql-%a.log' # 命名格式,postgresql-星期,如果跨星期则会覆盖log_truncate_on_rotation = on # 默认重名覆盖log_rotating_age = 1d # 一天一个日志log_rotation_size = 0 # 默认大小无限

image-20260101110336116

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询