[转帖]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) ,多半是因为存在匿名用户, ...
随机推荐
- 013_STM32程序移植之_DS18B20
013_STM32程序移植之_DS18B20 1. 测试环境:STM32C8T6 2. 测试模块:DS18B20模块 3. 测试接口: 1. DS18B20模块接口: DS18B20引脚 ...
- Intel Code Challenge Elimination Round (Div.1 + Div.2, combined) C 倒序并查集
C. Destroying Array time limit per test 1 second memory limit per test 256 megabytes input standard ...
- Codevs 2188 最长上升子序列(变式)
2188 最长上升子序列 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 钻石 Diamond 题目描述 Description LIS问题是最经典的动态规划基础问题之一.如果要求一个 ...
- 数据结构实验之链表一:顺序建立链表(SDUT 2116)
Problem Description 输入N个整数,按照输入的顺序建立单链表存储,并遍历所建立的单链表,输出这些数据. Input 第一行输入整数的个数N: 第二行依次输入每个整数. Output ...
- 在docker 安装gitlab
一.Centos 7 上安装 官方文档:https://docs.docker.com/install/linux/docker-ce/centos/ 1.安装环境 yum install ...
- 【MyBatis】【SQL】没有最快,只有更快,从一千万条记录中删除八百万条仅用1分9秒
这次直接使用delete from emp where cdate<'2018-02-02',看看究竟会发生什么. Mapper里写好SQL: <?xml version="1. ...
- [java]取当前平台默认字符集,取字符串长度
public class TimestampLength { public static void main(String[] args) { System.out.println(java.nio. ...
- 提高组刷题营 DAY 1 下午
DFS 深度优先搜索 通过搜索得到一棵树形图 策略:只要能发现没走过的点,就走到它.有多个点可走就随便挑一个,如果无路可走就回退,再看有没有没走过的点可走. 在图上寻找路径[少数可用最短路解决]:最短 ...
- 2.2 Go语言基础之位运算操作
一.位运算符 位运算符对整数在内存中的二进制位进行操作. 运算符 描述 & 参与运算的两数各对应的二进位相与. (两位均为1才为1) | 参与运算的两数各对应的二进位相或. (两位有一个为1就 ...
- tensorflow中一个矩阵和一个向量相加
import tensorflow as tf x=tf.constant([[1,2],[3,4]]) y=tf.constant([[1],[1]])#列向量 z=tf.constant([1,1 ...