如何在 MacOS 上安装 PostgreSQL ?

PostgreSQL 是一个开源的数据库管理系统(DBMS)因其可靠性、性能和可扩展性而被广泛使用。它也被称为第三代 DBMS,因为它将数据保存在二级存储而不是内存,性能下降也不多,也没有与动态内存分配相关问题。在本文中,我们将向您展示如何在 macOS 安装 PostgreSQL 数据库系统。

Installing Homebrew

第一步,安装 Homebrew,这是一个 macOS 的包管理器。

打开终端,执行如下命令:

复制代码
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

你会看到一堆文本飞过,信息停止后,会提示你将 Terminal 的路径添加到 PATH 环境变量。您可以通过输入"export PATH=/usr/local/bin:/usr/local/sbin:$PATH"来完成,然后按回车键。

Installing PostgreSQL

安装 Homebrew 后,首先搜索可用的 PostgreSQL 服务器版本

复制代码
brew search postgresql

选择一个需要安装的 PostgreSQL 版本,例如:安装 PostgreSQL 14,执行如下命令:

复制代码
brew install postgresql@14

如果需要升级已安装的 PostgreSQL(升级到次要版本),使用如下命令:

复制代码
brew upgrade postgresql@14

启动 PostgreSQL 服务,使用如下命令:

复制代码
brew services start postgresql@14

停止 PostgreSQL 服务,使用如下命令:

复制代码
brew services stop postgresql@14

重启 PostgreSQL 服务,使用如下命令:

复制代码
brew services restart postgresql@14

Login to PostgreSQL

psql 是用于管理 Postgres 数据库服务器的命令行实用程序。PostgreSQL 默认自带一个名为"postgres"的数据库,用于登录服务器。登录 Postgres 终端,执行以下命令:

复制代码
psql postgres

登录 Postgres 终端后,你可以用下面的命令检查可用的数据库:

复制代码
\l

默认安装创建一个名为"admin"的超级用户,这是默认的"postgres"数据库的所有者。使用下面的命令列出所有可用的用户。

复制代码
\du

Creating User

可以使用"CREATE ROLE"添加一个新的角色(用户),或者使用"createuser"命令行工具来创建它。

复制代码
createuser --interactive --pwprompt

这将提示输入以下详细信息:

  • 新角色(用户)的名称
  • 为新角色输入密码
  • 重新输入新角色的密码
  • 按"n",不提供超级管理员权限
  • 按"y"键提供创建数据库的权限
  • 按"n"表示不允许创建新角色

添加新用户后,使用以下命令以新用户身份登录。

复制代码
psql postgres -U tecadmin -W

将"tecadmin"更改为您的用户名。当前用户没有任何相关的数据库,因此上面的命令将连接到"postgres"数据库,按Enter 键并输入密码。

Creating Database

使用以下命令创建一个新数据库。

复制代码
CREATE DATABASE tecadmin;

创建数据库后,列出 postgres 服务器中的所有数据库。

复制代码
\du

我的开源项目

相关推荐
北有树7 分钟前
Redis专题面试题总结
数据库·redis·缓存
cjfeii8 分钟前
2025年数据库三大顶会论文与Keynote详细介绍
数据库
rannn_11112 分钟前
【Redis|实战篇7】黑马点评|附近商铺、用户签到、UV签到
java·数据库·redis·后端·uv
Mr.徐大人ゞ15 分钟前
2-5.全文索引与并行查询
postgresql
鬼先生_sir17 分钟前
JWT + Spring Security / OAuth2.0:微服务统一登录、鉴权、单点登录全解析
数据库
云边有个稻草人23 分钟前
KES核心伪列深度解析:OID与ROWID机制、差异及实践
数据库·rowid核心机制·oid 的双重特性
猿小喵24 分钟前
MySQL长时间未提交事务分析
数据库·mysql·性能优化
摆烂z25 分钟前
spEL语法替换sql值
java·数据库·sql
简单点了26 分钟前
mac安装idea
java·macos·intellij-idea
江不清丶27 分钟前
深入剖析 MySQL 日志系统:Redo Log、Undo Log 与 Binlog 的协同工作原理
数据库·mysql·adb