PostgreSQL安装

概念

PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的Postgres 4.2版本为基础的对象关系型数据库管理系统。

Postgres的许多领先概念只是在比较迟的时候才出现在商业网站数据库中。

PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等。

PostgreSQL也可以用许多方法扩展,例如通过增加新的数据类型、函数、操作符、聚集函数、索引方法、过程语言等。另外,因为许可证的灵活,任何人都可以以任何目的免费使用、修改和分发PostgreSQL。

特点

PostgreSQL可在所有主要操作系统

PostgreSQL支持文本,图像,声音和视频,并包括用于C/C++,Java,Perl,Python,Ruby,Tcl和开放数据库连接(ODBC)的编程接口

PostgreSQL支持SQL的许多功能,例如复杂SQL查询,SQL子选择,外键,触发器,视图,事务,多进程并发控制(MVCC),流式复制(9.0),热备(9.0)

在PostgreSQL中,表可以设置为从“父”表继承其特征

可以安装多个扩展以向PostgreSQL添加附加功能

实验环境

实验步骤

1、删除自带PostgreSQL客户端软件

rpm -qa | grep postgresql

yum -y remove postgresql

2、安装PostgreSQL

将pgsql14的三个包拖入

yum -y localinstall *.rpm

3、初始化数据库

/usr/pgsql-14/bin/postgresql-14-setup initdb

4、设置允许外部连接

vim /var/lib/pgsql/14/data/pg_hba.conf

添加:

host    all             all             0.0.0.0/0               md5

vim /var/lib/pgsql/14/data/postgresql.conf

修改:

5、设置允许root命令登录

vim /var/lib/pgsql/14/data/pg_hba.conf

修改:

6、给PostgreSQL安装目录授权

chown -R postgres.root /usr/pgsql-14/

7、将PostgreSQL命令软链接到环境变量/usr/bin

-f:强制覆盖,因为自带PostgreSQL9.2版本命令无法全部删除

ln -sf /usr/pgsql-14/bin/* /usr/bin/

8、启动PostgreSQL

systemctl start postgresql-14

netstat -anpt | grep postmaster

查看PostgreSQL版本

psql --version

9、切换postgres用户登录PostgreSQL

su - postgres

psql -U postgres    ——远程访问-W 提示输入密码

10、设置登录数据的密码

alter user postgres with encrypted password '123456';

encrypted:生成加密密码

11、查看所有数据库,创建数据库test

\l

create database test;

12、切换到指定数据库

\c test;

13、创建表t1,查看所有表

create table t1(id int primary key,name varchar(20));

\d

14、向t1表中插入数据

insert into t1 values(1,'zhangsan'),(2,'lisi');

15、查看t1表中内容

select * from t1;

16、查看t1表结构

\d t1;

17、查看索引

\di t1_pkey;

手动添加索引

create index idx_id on t1(id);

18、查看PostgreSQL的发行条款

\copyright

19、查看客户端编码情况

\encoding

20、查看命令帮助

\h

21、退出数据库

\q

22、备份数据库到指定目录并还原

切换到root用户创建备份目录并赋权

mkdir /backup

chown -R postgres.postgres /backup/

备份:

su – postgres

pg_dump test > /backup/test.bak

(注:全备命令pg_dumpall )

删除test数据库:

psql -U postgres

\l

drop database test;

\l

还原:

create database test;

psql -U postgres -d test -f /backup/test.bak

查看数据

psql -U postgres

\l

23、创建普通用户并登录测试

create user test01_user with password 'Test01@123';

create database test01 owner test01_user;

grant all privileges on database test01 to test01_user;

测试:

使用test01_user用户登录

psql -h 192.168.8.5 -p 5432 -U test01_user -d test01

进入test01库创建user1表并插入数据

\c test01

create table user1(id int,name varchar(10));

insert into user1 values(1,'aa'),(2,'bb');

select * from user1;

进入test库查看t1表

\c test

\d

select * from t1;

因为test01_user用户对test01库有所有权限,对test库没有权限,所有无法查看test库中表的数据

24、查看所有用户

\du

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值