mac安装postgresql

1. 安装

brew install postgresql

2. 查看当前版本

psql -V

3. 初始化(如果存在该目录会提示该目录已存在不用管)

initdb -E UTF-8 /usr/local/var/postgres

4. 启动服务

pg_ctl -D /usr/local/var/postgres  start

5. 关闭服务

pg_ctl -D /usr/local/var/postgres  stop

6. 连接数据库前可查看psql有哪些库表

psql -l  (简洁登录?)

7. 连接数据库(默认会有个名为postgres的数据库,用当前机器登录的用户名登录即可)

psql -U username -d dbname -h 127.0.0.1

8. 权限控制

创建用户testUser:

CREATE USER testUser WITH PASSWORD '*****';

将数据库 testDB 权限授权于 testUser:

GRANT ALL PRIVILEGES ON DATABASE testDB TO testUser;

(GRANT connect on DATABASE testDB to testUser;  -- 将连接数据库权限授权给testUser,详细可看权限设置文档https://www.postgresql.org/docs/11/sql-grant.html)

此时用户还是没有读写表权限,需要继续授权表权限(特别注意,该sql语句必须在所要操作的数据库里执行,先选择或切换数据库:\c 操作的数据库名):

GRANT ALL PRIVILEGES ON all tables in schema public TO testUser; (-- 将当前数据库下 public schema 的表都授权于 testUser)

(GRANT select on all tables in schema public to testUser;  -- 授权只读权限

如果要单独授权一个表: GRANT SELECT ON TABLE mytable TO testUser;

9. 其他常用命令:

查看当前已有数据库:\list
选择或切换数据库:\c 数据库名
查看当前数据库的表: \d
查看当前表结构: \d 表名
创建/添加数据库新用户,如 dbuser:
CREATE USER dbuser WITH PASSWORD '*****'; (语句要以分号结尾,密码要用单引号括起来)
查看已注册用户的列表以及每个用户拥有的特权类型:\du
为用户添加创建数据库权限:ALTER USER testUser createdb; (需先退出新用户登录,用有权限的用户登录进来修改权限)
切换用户:\c - 用户名
查看当前登录的用户:select user; 或 select * from current_user;
创建数据库:create database xxx;   默认创建的数据库Owner为当前登录的用户
数据横纵显示切换:\x 

  

参考:

https://www.jianshu.com/p/66882d556240

https://www.postgresql.org/docs/11/sql-grant.html

https://www.jianshu.com/p/10ced5145d39

https://blog.csdn.net/mouday/article/details/113808724

https://blog.csdn.net/zhangzeyuaaa/article/details/77941039

https://www.cnblogs.com/yasmi/articles/5238994.html

https://blog.csdn.net/warrior_0319/article/details/78091949 

posted @ 2022-01-23 11:04  lmh2072005  阅读(653)  评论(0编辑  收藏  举报