PostgreSQL安装及入门

  |   0 评论   |   0 浏览

一、windows系统安装

安装完成后查看 D:\02-ES\PostgreSQL\14\data data文件下有无数据
   没有的话需要命令生成 
   initdb -E UTF-8 -D D:\02-ES\PostgreSQL\14\data
   
   注册为服务
   pg_ctl register -D D:\02-ES\PostgreSQL\14\data
   
   修改配置文件 postgresql.conf
   listen_addresses = '*'
   port = 5432
   其他配置可适当修改
   
   启动服务
   pg_ctl start -D D:\02-ES\PostgreSQL\14\data
   
   有时候借助第三方工具登录发现报错,是因为没创建角色
   createuser -s -r postgres 创建完无需密码即可登录

二、Liunx系统安装

1、创建postgres用户与用户组
--创建postgres用户组
groupadd postgres
--创建postgres用户,其用户组为postgres
useradd postgres -g postgres

2、安装必需依赖
yum install -y gcc gcc-c++
yum install -y readline-devel
yum install -y zlib-devel

3、解压源码包并进行编译
--解压源码包
tar -zxvf postgresql-13.3.tar.gz
--解压出 postgresql-13.3文件夹,移动到指定路径下
mv postgresql-13.3 /opt/
--创建一个路径用于存放编译后的postgresql
mkdir /opt/postgresql
--进入postgresql-13.3路径下,编译源码并将编译后的postgresql存放在/opt/postgresql路径下
cd /opt/postgresql
./configure --prefix=/opt/postgresql
--构建
make
--安装文件
make install
4、创建存放postgresql数据的目录,初始化数据库并启动
--在/opt/postgresql路径下创建数据目录pg_data
mkdir /opt/postgresql/pg_data
--修改数据目录的所属用户与用户组均为postgres
chown -R postgres:postgres /opt/postgresql/pg_data
--切换到postgres用户,并初始化数据库
su postgres
/opt/postgresql/bin/initdb -D /opt/postgresql/pg_data
--启动数据库,并将日志打印到pg.log文件上
/opt/postgresql/bin/pg_ctl -D /opt/postgresql/pg_data -l /opt/postgresql/pg_data/pg.log start
5、创建测试数据库,修改超级管理员postgres的密码
--创建test数据库
/opt/postgresql/bin/createdb test
--访问test数据库
/opt/postgresql/bin/psql test
--修改管理员postgres的密码为postgres
ALTER USER postgres WITH PASSWORD 'postgres';
6、修改配置(远程连接授权)
--修改pg_hba.conf文件
vi /opt/postgresql/pg_data/pg_hba.conf
修改IPV4的连接
# IPv4 local connections:
host    all             all             0.0.0.0/0            trust
--修改postgresql.conf文件
vi /opt/postgresql/pg_data/postgresql.conf
修改listen_address为任意ip
listen_addresses = '*' 
--完成修改后重启数据库
/opt/postgresql/bin/pg_ctl -D /opt/postgresql/pg_data -l /opt/postgresql/pg_data/pg.log restart

psql常用命令

命令行中使用的psql命令

参数参数含义
-h数据库服务器的IP
-p数据库服务器的端口号
-U连接数据库服务器时使用数据库用户
-w连接服务器时不需要输入用户密码(默认不输入用户密码)
-W连接服务器时需要输入用户密码
-d指定要连接的数据库(默认连接postgres数据库)
-c执行单一的SQL命令
-f执行sql脚本文件
-V输出版本信息
--连接本地数据库,端口号为5432,使用postgres用户,连接test数据库
./psql -h 127.0.0.1 -p 5432 -U postgres -d test
--执行sql脚本文件/root/pg.sql
./psql -h 127.0.0.1 -p 5432 -U postgres -d test -f /root/pg.sql
--执行SQL语句
./psql -h 127.0.0.1 -p 5432 -U postgres -d test -c "sql_one;sql_two;"
--查看数据库版本
./psql -V

pg命令行中使用的psql命令

命令含义
\h查看sql语法
\l列出所有数据库
\dn列出所有schema(模式)
\db显示所有表空间(相当于一个目录,表放在表空间中)
\d查看当前schema中所有的表、视图、序列
\dt只显示匹配的表
\di只显示匹配的索引
\ds只显示匹配的序列
\dv只显示匹配的视图
\df只显示匹配的函数
\sf查看指定的函数定义
\du列出数据库中所有用户
\dp显示表的分配情况
\c切换数据库
\q退出pg命令行
--查看所有数据库
postgres=# \l
--显示pg内部的函数acos
postgres=# \df acos
--查询acos函数的函数定义
postgres=# \sf acos
--退出pg命令行
postgres=# \q

标题:PostgreSQL安装及入门
作者:zytops
地址:https://zytops.com/articles/2023/08/27/1693145809549.html