目录
- PG的下载安装
- 1、Windows 上安装
- 2、Linux上安装
- 有root权限的安装
- 无root权限的安装
PG的下载安装
点击这里,了解pg
1、Windows 上安装
(1)下载安装
访问官网下载地址
https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
下载最新发布的PostgreSQL 14。
双击下载安装包,开始安装
你可以修改安装路径
选择安装组件,不懂的选就是全部勾上:
设置数据库路径
设置超级用户的密码
设置端口号,可以直接用默认就行
直接点 Next
点 Next
去掉勾选,直接点 Finish
打开 pgAdmin 4
pgAdmin 主页如下
点击左侧的 Servers > Postgre SQL 10
输入密码,点击 OK 即可
控制面板如下
打开 SQL Shell(psql)
(2)远程访问
\1. 打开postgresql安装目录的data子目录
\2. 修改pg_hba.conf文件:在IPV4部分添加新的一行:host all all 0.0.0.0/0 md5
\3. 控制面板–>系统与安全–>Windows防火墙,关闭防火墙。
4.重启服务
2、Linux上安装
有root权限的安装
(1)下载安装
访问官网下载地址
https://www.postgresql.org/download/
选择相应的版本和平台;
导入yum源
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
安装PostgreSQL服务
sudo yum install -y postgresql14-server
初始化数据库
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
启动PostgreSQL服务
#设置PostgreSQL服务为开机启动
sudo systemctl enable postgresql-14
#启动PostgreSQL服务
sudo systemctl start postgresql-14
(2)修改postgres账号密码
PostgreSQL安装成功之后,会默认创建一个名为postgres的Linux用户,初始化数据库后,会有名为postgres的数据库,来存储数据库的基础信息,例如用户信息等等,相当于MySQL中默认的名为mysql数据库。
postgres数据库中会初始化一名超级用户postgres
为了方便我们使用postgres账号进行管理,我们可以修改该账号的密码
进入PostgreSQL命令行
通过su命令切换linux用户为postgres会自动进入命令行
su - postgres
启动SQL Shell
psql
修改密码
ALTER USER postgres WITH PASSWORD 'NewPassword';
(3)配置远程访问
开放端口
sudo firewall-cmd --add-port=5432/tcp --permanent
sudo firewall-cmd --reload
修改IP绑定
#修改配置文件
vi /var/lib/pgsql/14/data/postgresql.conf
#将监听地址修改为*
#默认listen_addresses配置是注释掉的,所以可以直接在配置文件开头加入该行
listen_addresses='*'
允许所有IP访问
#修改配置文件
vi /var/lib/pgsql/14/data/pg_hba.conf
#在问价尾部加入
host all all 0.0.0.0/0 md5
重启PostgreSQL服务
#重启PostgreSQL服务
sudo systemctl restart postgresql-14
无root权限的安装
基于源码构建
- 准备条件
GUN make 3.80及以上版本(不可使用其他make或旧的GUN make)。查看GUN make版本:make --version
- 下载源码
https://www.postgresql.org/download/
- 解压文件
tar -xzvf postgresql-13.4.tar.gz -C /app/install
-
./configure
如果只进行默认配置,可直接在源码解压路径下(postgresql-13.4)运行命令:./configure
默认配置会安装仅使用C编译器的服务端和其他程序、客户端接口等。
默认会安装到/usr/local/pgsql路径下。#数据库软件安装路径
如果需要重新进行configure,则建议首先执行以下: make distclean #该命令重置源码树至初始状态
–prefix=PREFIX
将所有文件放置到PREFIX指定的路径下(而非默认的/usr/local/pgsql)。
–enable-nls[=LANGUAGES]
启用本地语言支持(NLS)。若不指定LANGUAGE,则会安装所有可用的语言。
需要Gettext API。
–with-perl
创建PL/Perl服务端语言。
–with-python
创建PL/Python服务端语言。
–with-openssl
支持SSL(加密)连接。需要安装OpenSSL。
–with-pgport=NUMBER
为客户端及服务端设置默认端口号。默认为5432。
也可以在此阶段设置块大小、WAL块大小及段大小。
在这里我指定了我的安装路径
./configure -prefix=~/pgsql
-
build构建
开始build
make
如果想同时安装文档以及其他的模块,则使用make world安装PostgreSQL
make install
将相关数据库文件安装到./configure中指定的路径下,默认为/usr/local/pgsql。
该安装会同时安装客户端和服务端相关程序。
如果想同时安装文档以及其他的模块,则使用make install-world
补充(可不看)
仅安装客户端程序及接口库
make -C src/bin install
make -C src/include install
make -C src/interfaces install
make -C doc install
卸载PostgreSQL
make uninstall
如果需要重新进行configure,则建议首先执行以下: make distclean #该命令重置源码树至初始状态
- 环境配置
修改IP绑定
#修改配置文件
vi ~/pgsql/14/data/postgresql.conf
#将监听地址修改为*
#默认listen_addresses配置是注释掉的,所以可以直接在配置文件开头加入该行
listen_addresses='*'
允许所有IP访问
#修改配置文件
vi ~/pgsql/14/data/pg_hba.conf
#在问价尾部加入
host all all 0.0.0.0/0 md5
vi /etc/profile
### 增加配置
LD_LIBRARY_PATH=/home/acm/pgsql/lib
export LD_LIBRARY_PATH
PATH=/home/acm/bin:$PATH
export PATH
source /etc/profile
- 初始化数据库
initdb -E UTF8 -D /home/acm/pgsql/data
- 启动数据库
###启动数据库
pg_ctl start -D ~/pgsql/postgresql-11/data -l /pgsql/postgresql-11/data/logfile
###关闭数据库
pg_ctl stop -D /usr/local/pgsql/data -m f
###查询状态
pg_ctl -D /usr/local/pgsql/data status
关闭数据库服务有三种模式:
SIGTERM,smart shutdown:阻止新连接,保持现有连接,仅当所有会话退出后才会关闭;SIGINT,fast shutdown:阻止新连接,中断事务,断掉会话;SIGQUIT,immediate shutdown:断电;
可使用命令pg_ctl stop -m smart|fast|immediate关闭数据库服务。
- 进入客户端
cd /home/acm/pgsql/bin
./psql -d postgres
#进入客户端后可以更改密码
\password