前言
本文介绍如何在本地环境安装PG
Windows安装
1. 官网下载安装包,我选择当前最新版本14.1
2. 下载完成后打开按提示完成安装,其中下图是让你设置超级管理员账户postgres的密码,设置后请牢记。
3. 安装完成后打开psql
4. 一路按回车直到提示输入用户postgres的口令,输入你安装时设置的密码,然后就成功以超级管理员postgres的身份登录了
5. 实战中我们通常会创建不同数据库和用户,只有DBA才会使用超级管理员,所以我们还会创建一个demo数据库,和新用户bingwei,然后把demo数据库授权给用户bingwei
CREATE USER bingwei WITH PASSWORD 'password';
CREATE DATABASE demo;
GRANT ALL PRIVILEGES ON DATABASE demo to bingwei;
6. 关掉psql的窗口再次打开,然后以bingwei用户登录数据库demo,注意下图红色划线部分
到此Postgres安装完毕且创建了新的用户和数据库。
注意,电脑重启后运行psql会报错
psql: 错误: 连接到"localhost" (::1)上的服务器,端口5432失败:FATAL: password authentication failed for user "postgres"
这是因为PG数据库没有启动,启动PG数据库的方法如下:
1. 打开Bash窗口,cd到PG安装路径的bin目录下
cd D:\sandbox\devtools\PostgreSQL\14\bin
2. 运行pg_ctl命令启动数据库
pg_Ctl.exe restart -D datadir
datadir是你安装PG时指定的数据存放路径,如:
D:\sandbox\devtools\PostgreSQL\14\bin>pg_Ctl.exe restart -D "D:\sandbox\devtools\PostgreSQL\14\data"
pg_Ctl: 原有的进程(PID: 14836)可能已经不存在了
正在启动服务器进程
等待服务器进程启动 ....2021-11-19 22:22:27.233 CST [15168] LOG: redirecting log output to logging collector process
2021-11-19 22:22:27.233 CST [15168] HINT: Future log output will appear in directory "log".
完成
服务器进程已经启动
3. 这是重新运行psql就不会报错了
CentOS安装
参考在CentOS 7上安装&配置PostgreSQL 12 - Ken的杂谈
相关代码我已上传github,欢迎试玩!
https://github.com/bin9wei/vagrant-postgres-14
参考
https://www.postgresqltutorial.com/postgresql-getting-started/
https://www.postgresqltutorial.com/install-postgresql/