当前位置: 首页 > news >正文

关系型数据库PostgreSQL for Mac 保姆级使用教程

第一部分:安装PostgreSQL

方法一:使用Postgres.app(最简单)

  1. 访问 Postgres.app官网

  2. 下载最新版本,将 Postgres.app 移动到 “Applications” 文件夹。

  3. 双击Postgres.app打开应用,点击"Initialize"初始化数据库

  4. 在菜单栏点击"Postgres"图标可以看到运行状态

方法二:使用Homebrew安装

  1. 打开终端(应用程序 > 实用工具 > 终端)

  2. 安装Homebrew(如果尚未安装):

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

    安装PostgreSQL,运行命令:

    brew install postgresql

    启动PostgreSQL服务:

    brew services start postgresql

    验证安装,运行命令:

    psql --version

    若显示版本号,则安装成功。

第二部分:基本使用

配置 PostgreSQL4

修改配置文件:主配置文件为postgresql.conf,客户端认证文件为pg_hba.conf。若要允许远程访问,修改postgresql.conf中的listen_addresses = '*',并设置port = 5432(默认端口)。若要设置最大连接数,可修改max_connections = 100(可根据硬件调整)。修改pg_hba.conf,添加host all all 0.0.0.0/0 scram - sha - 256,允许所有 IP 通过密码访问。修改后,使用pg_ctl restart -D /usr/local/var/postgres命令重启服务生效。

      连接到数据库

      创建用户与数据库

      • 登录默认账户:使用登录命令
        sudo -u postgres psql
      • 创建新用户:在psql中,执行创建新用户。
        CREATE USER myuser WITH PASSWORD 'user123';
      • 创建数据库
        CREATE DATABASE mydb OWNER myuser;
      • 用户授权
        GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;

      使用 psql 命令行工具

      • 登录数据库:使用命令登录数据库
        psql -U myuser -d mydb -h 127.0.0.1 -p 5432
        -U指定用户名,
        -d指定数据库名,
        -h指定主机地址,
        -p指定端口号

      • 常用元命令
        \l:列出所有数据库。
        \c dbname:切换数据库。
        \dt:列出当前数据库的所有表。
        \d+ tablename:查看表结构详情。
        \q:退出psql。

      数据库与表操作

        1. 查看所有数据库:

          \l
        2. 创建新数据库:

          CREATE DATABASE mydb;
        3. 连接到特定数据库:

          \c mydb
        4. 创建表:

          CREATE TABLE employees (id SERIAL PRIMARY KEY,name VARCHAR(50) NOT NULL,salary NUMERIC(10,2),hire_date DATE
          );
        5. 插入数据:

          INSERT INTO employees (name, salary, hire_date) VALUES ('John Doe', 5000.00, '2025-01-01');
        6. 查询数据:

          SELECT * FROM employees;
        7. 更新数据

          UPDATE employees SET salary = 5500.00 WHERE name = 'John Doe';
        8. 删除数据

          DELETE FROM employees WHERE name = 'John Doe';

        第三部分:图形化管理工具(可选)

        安装pgAdmin(图形化界面)

                pgAdmin 4:它是一个功能丰富的开源 PostgreSQL 客户端。可从官网下载安装。安装完成后,打开 pgAdmin 4,添加服务器,输入服务器名称、主机地址、端口号、用户名和密码等信息,即可连接到 PostgreSQL 数据库进行管理。

        1. 访问 pgAdmin官网

        2. 下载macOS版本并安装。

        3. 打开pgAdmin,设置主密码

        4. 添加服务器:

          • 名称:Local

          • 主机:localhost

          • 端口:5432

          • 用户名:你的mac用户名(Postgres.app)或postgres(Homebrew安装)

          • 密码:通常为空或你的mac用户密码 

        如果你想解锁更多pgAdmin使用,可以参阅:pgAdmin4工具快速使用_pgadmin使用教程-CSDN博客

        第四部分:常见问题解决

        1. 连接被拒绝

          • 确保PostgreSQL服务正在运行

          • 检查连接参数是否正确

        2. 命令未找到

          • 确保PostgreSQL的bin目录在PATH中

          • 对于Homebrew安装,可以运行:

            echo 'export PATH="/usr/local/opt/postgresql@12/bin:$PATH"' >> ~/.zshrc
            source ~/.zshrc

            (将@12替换为你安装的版本)

        3. 忘记密码

          • 对于Postgres.app,通常不需要密码

          • 对于Homebrew安装,默认用户是"postgres",密码通常为空

        第五部分:日常使用小技巧

        1. 查看所有表:

          \dt
        2. 查看表结构:

          \d 表名
        3. 退出psql:

          \q
        4. 导入SQL文件:

          psql -d 数据库名 -f 文件路径.sql
        5. 导出数据库:

          pg_dump 数据库名 > 备份文件.sql

                希望这个教程能帮助你开始使用PostgreSQL!如果有任何问题,可以随时查阅PostgreSQL官方文档或在开发者社区提问。

        如果您想了解关系型数据库PostgreSQL vs MySQL区别 ,可以参阅文章:关系型数据库PostgreSQL vs MySQL 深度对比:专业术语+白话解析+实战案例-CSDN博客

        相关文章:

      • 【三大特性】虚表 内存分布
      • AI应用讲座2025年4月笔记
      • 电镀废水资源化利用的工艺介绍
      • Centos 7.6安装redis-6.2.6
      • 解决新搭建的centos虚拟器,yum下载不了的问题
      • 蓝桥杯 2. 确定字符串是否是另一个的排列
      • LS2K0300龙芯开发板——智能车竞赛
      • 假设检验学习总结
      • 图像预处理-形态学变换
      • React-Native项目矢量图标库(react-native-vector-icons)以及如何使用
      • 强化学习机器人路径规划——Sparrow复现
      • adb常用的20个命令
      • splitchunk(如何将指定文件从主包拆分为单独的js文件)
      • Python+Selenium+Pytest+Allure PO模式UI自动化框架
      • 文章记单词 | 第48篇(六级)
      • 关于Android Studio的Gradle各项配置2
      • 优化无头浏览器流量:使用Puppeteer进行高效数据抓取的成本降低策略
      • 微深节能 平板小车运动监测与控制系统 格雷母线
      • java_基础Java 转义字符学习笔记
      • Kaamel白皮书:IoT设备安全隐私评估实践
      • 黄仁勋访华期间表示希望继续与中国合作,贸促会回应
      • 上海市政府常务会议研究抓好稳就业稳企业稳市场稳预期工作,让企业感受温度
      • 申花四连胜领跑中超,下轮榜首大战对蓉城将是硬仗考验
      • 俄联邦安全局:俄军高级官员汽车爆炸案嫌疑人已被捕
      • 理想汽车副总裁刘杰:不要被竞争牵着鼻子走,也不迷信护城河
      • 特朗普承认“24小时结束俄乌冲突”是玩笑:大家都知道