[转帖]postgres 创建新用户并授权-- 非常好的
postgres 创建新用户并授权
https://blog.csdn.net/XuHang666/article/details/81506297 原作者总结的挺好的 可以用来学习一下. grant all on database hcmcloud(databasename) to hcm(username)
postgres 默认用户是postgres,为超级用户。
第一步:先以postgress 登录
1)psql -U '用户名'
2.)创建数据库新用户
CREATE USER 用户名 WITH PASSWORD '*****';
3)授予用户数据库权限
GRANT ALL PRIVILEGES ON DATABASE 数据库名 TO 用户名;
4)授予用户查看刚授权的数据库的里面的表的权限
GRANT ALL PRIVILEGES ON TABLE 表名 TO 用户名;
附带一条:修改的表的类型
alter table 表名 alter 字段名 type 类型;
附带一条:增加表新的字段
alter table 表名 add column 字段名 text(字段类型);
2018-08/22新增:设置主键自增
CREATE SEQUENCE user_id_seq
START WITH
INCREMENT BY
NO MINVALUE
NO MAXVALUE
CACHE ;
alter table sys_user alter COLUMN id set DEFAULT nextval('user_id_seq');
2018-11/14新增:postgres创建B-Tree索引
-- create index '索引名' on '表名' ('需要索引的字段')
CREATE INDEX ip_store_inde on ip_store (ip_network);
添加各种约束
1. 添加主键
alter table goods add primary key(sid);
2. 添加外键
alter table orders add foreign key(goods_id) references goods(sid) on update cascade on delete cascade;
on update cascade: 被引用行更新时,引用行自动更新;
on update restrict: 被引用的行禁止更新;
on delete cascade: 被引用行删除时,引用行也一起删除;
on dellete restrict: 被引用的行禁止删除;
3. 删除外键
alter table orders drop constraint orders_goods_id_fkey;
4. 添加唯一约束
alter table goods add constraint unique_goods_sid unique(sid);
5. 删除默认值
alter table goods alter column sid drop default;
6. 修改字段的数据类型
alter table goods alter column sid type character varying;
7. 重命名字段
alter table goods rename column sid to ssid;
建表SQL示例
CREATE TABLE nginx_server_config ( id serial NOT NULL , listen_port int4 NOT NULL, server_name varchar() not null, location varchar() null, is_ssl int2 null, ssl_session_timeout varchar null, ssl_cert_name varchar() null, ssl_cert_key_name varchar() null, proxy_pass_url varchar() not null, create_date timestamp() not null, update_date timestamp() null, remark varchar() null, client_max_body_size varchar null, constraint PK_nginx_server_config primary key (id) );
8. 表新增列
# 不存在则创建 ALTER TABLE sys_user ADD COLUMN IF NOT EXISTS v6_level int2; # 直接创建 ALTER TABLE sys_user ADD COLUMN v6_level int2;
9. array和jsonb类型操作
-- jsonb 类型数据类型操作
DROP TABLE IF EXISTS public.test_jsonb;
CREATE TABLE public.test_jsonb (
id int4,
data jsonb
);
insert into test_jsonb values(,'{"id":1,"name":"小明", "age":18}');
select * from test_jsonb;
-- array 类型数据类型操作
DROP TABLE IF EXISTS public.test_array;
CREATE TABLE public.test_array (
id int4,
data varchar()[]
);
insert into test_array values(,array['fisrt','second']);
select * from test_array;
10. 判断表是否存在
-- 语法 select count(*) from pg_class where realname = '表名'; select count(*) from pg_class where relname = 'sys_command';
[转帖]postgres 创建新用户并授权-- 非常好的的更多相关文章
- Mysql 5.6创建新用户并授权指定数据库相应权限
一.环境 Centos 6.9 Mysql 5.6.40 二.步骤 1.使用root用户登陆mysql mysql -uroot -p 输入密码: 2.创建新用户 CREATE USER 'user' ...
- vertica创建新用户并授权
1.创建用户,并设置密码: create user user1 identified by 'pwd1'; 2.把角色授权给用户(dbduser是普通角色): grant dbduser to use ...
- oracle 创建新用户,授权dba
1.用有dba权限的用户登录:sys用户 2.创建一个新用户:create user abc identified by 123456; 3.授予DBA权限: grant connect,resour ...
- mysql创建新用户并且授权远程访问
1 修改root用户的密码 linux安装了mysql后,默认情况下,如果是root用户,不需要密码就可以登陆. mysql -u root -p 然后回车就可以登陆了,如果是普通用户,不能登陆. 2 ...
- mysql5.6创建新用户并给授权指定的数据库权限
一.环境: CentOS 6.8 mysql 5.6 二.背景 给外包的工作人员提供我司某台服务器的 mysql 中某个数据库的访问权限. 之所以要做限制,是防止他们对我司其他的数据库非法进行操作. ...
- oracle 非sys用户创建新用户 授权后 plsql看不到视图
问题: oracle 非sys用户创建新用户 授权后 plsql看不到视图 答案: 新用户查询视图时,视图名称前需要添加 视图所属用户. 如user用户新建newUser用户,newUser用户查 ...
- MySQL学习(一)——创建新用户、数据库、授权
一.创建用户 1.登录mysql mysql -u root -p 2.创建本地用户>/font> use mysql; //选择mysql数据库 create user 'test'@' ...
- Ubuntu创建新用户并增加管理员权限(授权有问题)
转自:Ubuntu创建新用户并增加管理员权限 $是普通管员,#是系统管理员,在Ubuntu下,root用户默认是没有密码的,因此也就无法使用(据说是为了安全).想用root的话,得给root用户设置一 ...
- Mysql创建新用户后无法登录,提示 Access denied for user 'username'@'localhost' (using password: YES)
MySQL创建新用户后无法登录,提示 Access denied for user 'username'@'localhost' (using password: YES) ,多半是因为存在匿名用户, ...
随机推荐
- Codevs 2188 最长上升子序列(变式)
2188 最长上升子序列 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 钻石 Diamond 题目描述 Description LIS问题是最经典的动态规划基础问题之一.如果要求一个 ...
- OI程序常见的设计陷阱
宏定义的问题 有时候为了方便,我会大量使用宏定义.但是最近我发现下面这两个宏定义老是出问题: #define SET(x,a) memset(x,a,sizeof(x)) inline void wo ...
- Linux下出现Permission denied解决
今天不想写前言,直接写解决办法 输入命令设置root密码 sudo passwd 得到的答复是 We trust you have received the usual lecture from th ...
- SQL Labs刷题补坑记录(less54-less65)
LESS54: 只有10次尝试,dump处secret key 直接union 查就可以,括号为单引号闭合 LESS55: 尝试出来闭合的方式为)括号,后面操作与54相同 LESS56: 尝试出来括号 ...
- js类型判断:typeof与instanceof
typeof用以获取一个变量或者表达式的类型,typeof一般只能返回如下几个结果: number,boolean,string,function(函数),object(NULL,数组,对象),und ...
- spark MLlib的 pipeline方式
spark mllib的pipeline,是指将多个机器学习的算法串联到一个工作链中,依次执行各种算法. 在Pipeline中的每个算法被称为"PipelineStage",表示其 ...
- ycache中redis主备功能设计及使用说明
方案概述: 对于ycache-client,如下图,在一致性hash环上的每个节点都有一个备用的节点.正常情况下slave节点不参与key的分配(冷备).只有当master挂了,ycache clie ...
- Repeater, DataList, 和GridView的区别及使用
从对象层次图可以看出,Repeater是最轻最小的控件,它仅仅继承了基本控件的功能,包括ID属性.子控件集合等.另一方面,DataList和DataGrid则继承了WebControl功能,包括样式和 ...
- react-native-swiper设定高度的方法(设置rn轮播图所占高度)
效果图: 直接上解决方案: 1.在Swiper标签外套一层View <View style={styles.container}> <Swiper style={styles.wra ...
- Oracle存储过程、游标、函数
SQL99是什么 (1)是操作所有关系型数据库的规则 (2)是第四代语言 (3)是一种结构化查询语言 (4)只需发出合法合理的命令,就有对应的结果显示 SQL的特点 (1)交互性强,非过程化 (2)数 ...