PostgreSQL16安装Mac(brew)

问题

最近需要从MySQL切换到PostgreSQL。我得在本地准备一个PostgreSQL。

步骤

使用brew安装postgresql16:

bash 复制代码
arch -arm64 brew install postgresql@16

启动postgresql16:

bash 复制代码
brew services start postgresql@16

配置postgresql环境变量,打开环境变量文件:

bash 复制代码
open ~/.zshrc

配置如下内容:

bash 复制代码
export PG_HOME=/opt/homebrew/opt/postgresql@16
export PATH=$PG_HOME/bin:$PATH

重载环境变量:

bash 复制代码
source ~/.zshrc

查看postgresql版本:

bash 复制代码
psql --version

查询数据库管理员用户名:

bash 复制代码
id -un

登录数据库:

bash 复制代码
psql -U <管理用户名> postgres

修改管理用户密码:

sql 复制代码
ALTER USER <管理用户名> PASSWORD '<密码>';

使用\q退出psql客户端。查看登录设置配置文件:

bash 复制代码
sudo -u <管理员用户名> psql postgres -c "SHOW hba_file;"

结果:

bash 复制代码
                  hba_file
---------------------------------------------
 /opt/homebrew/var/postgresql@16/pg_hba.conf
(1 行记录)

打开pg_hba.conf文件,设置需要使用密码方式登录postgresql,将trust改成scram-sha-256,如下图:

注意,这里的trust是不需要验证用户就可以直接使用;passwords是明文传用户密码给postgresql服务器;md5和scram-sha-256密码加密给postgresql服务器进行登录。

重启服务:

bash 复制代码
brew services restart postgresql@16

再次验证使用登录:

bash 复制代码
psql -U <管理员用户> postgres

总结

postgresql还是很简单的,只要需要注意postgresql默认表名和字段名是小写的,默认也不支持反引号(`)。需要注意下与mysql区别的这些注意点。还有就是写sql使用函数的时候,尽可能使用大家这几个数据库都支持的sql函数。

参考

相关推荐
余槐i4 小时前
EXPLAIN 显示走了索引查询仍慢:回表与选择性在 500 万行表上拉开 10 倍耗时
数据库·postgresql·性能优化·vacuum·explain
Mininglamp_271813 小时前
Cider量化配置与性能调优:在M系列Mac上压榨Mano-P的每一点推理性能
macos
梦在远山后13 小时前
PostgreSQL 锁与死锁:结合 DevMind 讲清楚
python·postgresql·agent
浪潮IT馆13 小时前
Windows 10 安装 PostgreSQL 9.6.24 完整教程
数据库·windows·postgresql
岳麓丹枫00114 小时前
PG 孤儿物理复制槽残留导致 pg_wal 膨胀 19G 故障分析
postgresql
xuefuhe15 小时前
MacOS EAGAIN无法打开terminal
macos
haerapi1 天前
把 PostgreSQL 复制巡检做成可审计闭环:确定性采集、阈值判定与受控模型归纳
数据库·postgresql
传奇开心果编程1 天前
【SwiftUI入门练中学】第7课 动画与手势:让界面更灵动
学习·macos·ui·ios·swiftui·swift
如果'\'真能转义说1 天前
Docker Desktop | 本地化挂载 Postgresql
docker·postgresql·容器
the3clipse2 天前
MacOS、Linux 与 Windows 视频编解码对比:AV1、HEVC、ProRes 与硬件加速优劣势
linux·windows·macos·hevc·av1·视频解码·硬件解码