Postgresql 常见数据库操作命令记录

在此记录一些Postgresql中,经常用到的创建数据库,用户角色及表,授权等命令的使用示例,方便用到时的快捷参考!


数据库的初始化与创建

1 . 初始化一个数据库簇

这里指对对一个文件系统目录进行初始化操作,然后一个单体数据库服务便会管理这个目录,之后我们连接到这个单体数据库服务上进行建库,建表等操作所产生的一切数据都会放到这个目录下面!

1>(方式一): pg_ctl -D /usr/local/pgsql/data initdb 详情
2>(方式二): initdb -D /usr/local/pgsql/data 详情
3> 具体操作:

mkdir /usr/local/pgsql
chown postgres /usr/local/pgsql
su postgres
initdb -D /usr/local/pgsql/data

2 . 创建角色, 并且赋予该角色创建数据库, 创建角色, 并且可以登陆的权限 详情

CREATE ROLE admin with LOGIN CREATEDB CREATEROLE PASSWORD 'welcome';

3 . 创建用户, 并设置对应用户密码

CREATE USER hello_user PASSWORD 'welcome';

4 . 创建数据库, 并使该数据库属于上面创建的用户

CREATE DATABASE hello_db owner hello_user ENCODING = 'UTF-8';

5 . 使用对应的用户切换到要操作的数据库上面, 然后再设置所要操作的schema(默认每个数据库初始都有一个名为public的schema);

\c hello_db hello_user
SET search_path TO public;

6 . 创建自己的业务schema, 并在其上面建立自己的一张新表, 插入数据 ;

CREATE schema test;

SET search_path TO test;

CREATE TABLE tb_test
(
  id serial,
  t_name character varying(24) NOT NULL,
  CONSTRAINT tb_score_id PRIMARY KEY (id),
  CONSTRAINT tb_score_unq_name UNIQUE (t_name)
);

\dt 

\d tb_test

insert into tb_test (t_name) values ('hinsteny'), ('hisoka');

select * from tb_test;

explain analyse select count(id) from tb_test;

备注: 在PG中, 可以简单的使用user就可以操作database了, 然后role的作用既可以当user用也可以用作group, 它有角色权限继承的功能;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值