Postgres和MySQL创建用户并授予db权限

Postgresql和MySQL还是有很多不同的。就比如授权来说。当下有个业务场景,我们的报表数据库需要根据业务划分不同的db,然后创建对应的user。

如果是MySQL, 可以这样做

mysql> create database mydb;
mysql> create user a_user identified by 'ThePassword'
    -> ;
Query OK, 0 rows affected (0.04 sec)

mysql> grant all privileges on mydb.* to [email protected]'%';
Query OK, 0 rows affected (0.02 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

对于Postgres9.0以上

创建一个用户etl_user,允许登陆,永不过期

create role etl_user login password 'ThePassowrd' valid until 'infinity';

将db权限授予user

grant all privileges on database mydb to etl_user ;

或者,分别授权

GRANT CONNECT ON DATABASE mydb TO etl_user;
GRANT USAGE ON SCHEMA public TO etl_user;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO etl_user;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO etl_user;

这时候,如果你要删除这个role,则必须先要删除关联的privileges

REVOKE CONNECT ON DATABASE mydb FROM etl_user;
REVOKE ALL PRIVILEGES ON ALL TABLES IN SCHEMA public FROM etl_user;
REVOKE ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public FROM etl_user;
REVOKE ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public FROM etl_user;
DROP USER etl_user;

原文地址:https://www.cnblogs.com/woshimrf/p/postgres-grant-user-to-db.html

时间: 2024-10-06 15:30:22

Postgres和MySQL创建用户并授予db权限的相关文章

mysql创建用户、赋予指定权限命令

1.远程登录mysql mysql -h ip -u root -p 密码 2.创建用户 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"; 例1:增加一个test1用户,密码为123456,可以在任何主机上登录,并对所有数据库有查询,增加,修改和删除的功能.需要在mysql的root用户下进行 mysql>grant select,insert,update,delete on *.* to [email protected

mysql创建用户并设置所有权限

1.创建用户:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; username:用户名:host:指定在哪个主机上可以登录,本机可用localhost,%通配所有远程主机:password:用户登录密码: 2.授权:GRANT ALL PRIVILEGES ON  *.* TO 'username'@'%' IDENTIFIED BY 'password': 刷新权限:FLUSH PRIVILEGES; 格式:grant 权限 on

oracle 建立视图,创建用户并授予查询权限

一.需求 数据库有个表car,需要为这个表建立一个视图view_car,并新建一个用户user01,赋予查询这个视图的权限 二.实施步骤 1.以管理员clgl登陆数据库,新建视图view_car: create or replace view view_car as select * from CAR; 2.新建用户user01 create user user01 identified by "123456"; 3.授予用户user01权限 grant select on view_

MySQL创建用户与授权方法

MySQL创建用户与授权方法 作者: 字体:[增加 减小] 类型:转载 时间:2012-11-10我要评论 MySQL中创建用户与授权的实现方法,对于刚开始接触mysql的朋友可以参考下 注:我的运行环境是widnows xp professional + MySQL5.0 一, 创建用户: 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以

MySQL创建用户与授权方法实例精讲

MySQL中创建用户与授权的实现方法. 运行环境:widnows xp professional + MySQL5.0 一, 创建用户: 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host - 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password - 该用户的登陆密码,密码可以为空

MySQL 创建用户 与 授权

例,需要给 121.52.215.100 连接添加一个用户 dee,密码是 123456,他只能对数据库 vshop 有 select 权限: CREATE USER 'dee'@'%' IDENTIFIED BY '123456'; GRANT SELECT ON vshop.* TO 'dee'@'%'; 创建用户: 命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明:username - 你将创建的用户名, host

mysql 创建用户及授权(2)

一. MySQL初始密码 新安装的MySQL默认是没有密码的,设置初始密码可以用以下命 mysqladmin -u root password 'new-password' mysqladmin -u root password 'password' -S /data/3306/mysql.sock #socket多实例 设置初始密码后,可在当前用户家目录下创建.my.cnf文件,配置好用户名和密码后,该用户可以免密码登录,要注意设置文件权限,不要让其他用户看到密码信息 vi ~/.my.cnf

mysql 创建用户以及备份

mysql 创建用户以及授权授权用户 grant 授权 all 所有权限 指定来源IP grant all on . (所以表) to 'user1'@'1.1.1.1'(%通配所以IP ) identified by '123456a'登录验证报错 默认使用的授权是souck 加-h 授权本地 使用locahost链接验证登录指定特定的权限 特定的表用户权限查询常用sql 语句查看表的行数查看表的内容select * from mysql.db 非常耗费资源数据库的引擎 myisam use

Mysql 创建用户授权

MySQL创建用户与授权 一. 创建用户 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明: username:你将创建的用户名 host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符% password:该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器 例子: CREATE USER 'dog'@'localhost'