關系型數據庫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博客

        本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
        如若轉載,請注明出處:http://www.pswp.cn/bicheng/78642.shtml
        繁體地址,請注明出處:http://hk.pswp.cn/bicheng/78642.shtml
        英文地址,請注明出處:http://en.pswp.cn/bicheng/78642.shtml

        如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

        相關文章

        Redis超詳細入門教程(基礎篇)

        一:Redis 簡介 (1)Mysql: 將數據通過數據文件存在磁盤上 通過二維表存儲數據 (2)Redis 定義: 優點: 熱點數據:短時間內有大量用戶訪問 二:Redis下載與安裝 Windows系統安…

        【JS-Leetcode】2621睡眠函數|2629復合函數|2665計數器||

        文章目錄 2621睡眠函數2629復合函數2665計數器|| 這三個題目涉及setTimeout、promise、數組reduce方法,閉包。 2621睡眠函數 請你編寫一個異步函數,它接收一個正整數參數 millis ,并休眠 millis 毫秒。要求此函數可以解析任何值。 原理&am…

        重塑編程體驗邊界:明基RD280U顯示器深度體驗

        重塑編程體驗邊界:明基RD280U顯示器深度體驗 寫在前面 本文將以明基RD280U為核心,通過技術解析、實戰體驗與創新案例,揭示專業顯示器如何重構開發者的數字工作臺。 前言:當像素成為生產力的催化劑 在GitHub的年度開發者調查中&…

        如何通過挖掘需求、SEO優化及流量變現成功出海?探索互聯網產品的盈利之道

        挖掘需求,優化流量,實現變現:互聯網出海產品的成功之路 在當今全球化的數字時代,越來越多的企業和個人選擇將業務擴展到國際市場。這一趨勢不僅為企業帶來了新的增長機會,也為個人提供了通過互聯網產品實現盈利的途徑…

        cuda學習2:cuda編程基本概念

        CUDA基本概念 主機(host) 通常將起控制作用的CPU稱為主機(host) 設備(device) 將起加速作用的 GPU 稱為設備(device) 流處理器(streaming processor) 物…

        AVL樹的介紹與學習

        目錄 1.前言 2.AVL樹 3.AVL樹的插入 平衡因子的更新 更新停止的條件 旋轉 1.前言 在學習了二叉搜索樹,set和map之后,我們接下來趁熱打鐵,繼續學習AVL樹。 2.AVL樹 1.AVL樹具有二叉搜索樹的性質,但是它的左右子樹的高度差不…

        數字人接大模型第二步:實時語音同步

        接上例第一步,還是dh_live項目,增加了一個完整的實時對話樣例,包含vad-asr-llm-tts-數字人全流程,以彌補之前的只有固定的問答的不足。 VAD(Voice Activity Detection,語音活動檢測)VAD用于檢測用戶是否正在說話,從而觸發后續的語音處理流程。 ASR(Automatic Speech R…

        01_Long比較值 類型相同值不同

        問題描述: 看如下代碼: Long a 128L; Long b 128L;System.out.println(a b);運行結果如下: 明明 a 和 b 的值一樣,但是結果卻為 False,為什么同樣的類型,同樣的值,卻不相等,這是…

        EKS環境下服務重啟50X錯誤

        EKS中,當使用AWS Load Balancer Controller時,ALB有兩種模式,Internet-facing和Internet,當使用Internet模式時,ALB注冊的是NodeIP;使用Internet-facing模式時,ALB注冊的則是Pod IP。從模式上來…

        Android項目升級插件到kotlin 2.1.0后混淆網絡請求異常

        背景 項目kt插件1.9.24升級到2.1.0后打包編譯release網絡請求失敗了。 retrofit版本2.9.0 錯誤詳情 java.lang.ClassCastException: java.lang.Class cannot be cast to java.lang.reflect.ParameterizedTypeat retrofit2.m.a(Unknown Source:2477)at retrofit2.K.invoke(U…

        Vue中Axios實戰指南:高效網絡請求的藝術

        Axios作為Vue生態中最流行的HTTP客戶端,以其簡潔的API和強大的功能成為前后端交互的首選方案。本文將帶你深入掌握Axios在Vue項目中的核心用法和高級技巧。 一、基礎配置 1. 安裝與引入 npm install axios 2. 全局掛載(main.js) import …

        Flink維表深度解析

        一、維表的概念與作用 維表(Dimension Table) 是數據倉庫中的核心概念,通常用于存儲靜態或緩慢變化的業務實體信息(如用戶資料、商品信息、地理位置等)。在實時流處理場景中,維表的作用是為主數據流&#…

        SKLearn - Biclustering

        文章目錄 Biclustering (雙聚類)譜二分聚類算法演示生成樣本數據擬合 SpectralBiclustering繪制結果 Spectral Co-Clustering 算法演示使用光譜協同聚類算法進行文檔的二分聚類 Biclustering (雙聚類) 關于雙聚類技術的示例。 譜…

        PostSwigger Web 安全學習:CSRF漏洞2

        CSRF 漏洞學習網站:What is CSRF (Cross-site request forgery)? Tutorial & Examples | Web Security Academy CSRF 漏洞:SameSite相關繞過 當瀏覽器訪問服務器時,服務器會在 Cookie 中添加 SameSite 屬性來告訴瀏覽器是否在來自其他…

        從基礎到實戰的量化交易全流程學習:1.3 數學與統計學基礎——概率與統計基礎 | 數字特征

        從基礎到實戰的量化交易全流程學習:1.3 數學與統計學基礎——概率與統計基礎 | 數字特征 第一部分:概率與統計基礎 第2節:數字特征:期望值、方差、協方差與相關系數 一、期望值(Expected Value)&#xff1a…

        MySQL(聚合函數)

        單行函數 對每一條記錄輸入值進行計算,得到相應的計算結果,返回給用戶,也就是說,每條記錄作為一個輸入參數,經過函數計算得到每條記錄的計算結果。 每一個函數中都有一些常用的函數(方法) 在學…

        babel核心知識點

        Babel 是一個 JavaScript 編譯器,主要用于將 ECMAScript 2015 版本的代碼轉換為向后兼容的 JavaScript 代碼,以便在舊版本的瀏覽器或環境中運行。以下是 Babel 的核心知識點: 1. 基本概念 編譯器:Babel 本質上是一個編譯器&…

        javaScript--數據結構和算法

        在 JavaScript 里,數據結構和算法是十分關鍵的部分,下面介紹幾種常見的數據結構和對應的算法。 數組(Array) 數組是最基礎的數據結構,用于存儲一系列有序的數據。 // 創建數組 const arr [1, 2, 3, 4, 5];// 訪問元素…

        π0.5:帶開放世界泛化的視覺-語言-動作模型

        25年4月來自具身機器人創業公司 PI 公司的論文“π0.5: a Vision-Language-Action Model with Open-World Generalization”。 為了使機器人發揮作用,它們必須在實驗室之外的現實世界中執行實際相關的任務。雖然視覺-語言-動作 (VLA) 模型在端到端機器人控制方面已…

        使用 OpenCV 和 dlib 進行人臉檢測

        文章目錄 1. 什么是 dlib2. 前期準備介紹2.1 環境準備2.2 dlib 的人臉檢測器 3. 代碼實現3.1 導入庫3.2 加載檢測器3.3 讀取并調整圖像大小3.4 檢測人臉3.5 繪制檢測框3.6 顯示結果 4. 完整代碼5. 優化與改進5.1 提高檢測率5.2 處理 BGR 與 RGB 問題 6. 總結 人臉檢測是計算機視…