美文网首页
Mac 配置PostgreSQL的填坑之路

Mac 配置PostgreSQL的填坑之路

作者: AgoniNemo | 来源:发表于2017-07-28 11:56 被阅读608次

推荐brew安装,如果还你还没有安装brew,点这里

# 在安装之前,最好确认下是不是安装过了
brew list

# 开始安装
brew install postgresql

# 验证是否安装成功了
psql --version

创建数据库

  • createdb testDB(也可以这样:createdb -h localhost -p 5432 -U user testDB意思在本地给用户user创建一个数据库testDB,如果提示说找不到user,可以用psql --help命令来查看用户,在Connection options模块里)
如果出现下面的错误
psql :could not connect to server: No such file or directory    Is the server running locally and accepting     connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

解决方法:
这意味着该服务器没有启动,或者没有在 createdb 预期的地方启动
# 开启,与之相反的是 brew services stop postgresql
brew services start postgresql

出现错误:
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

运行以下命令:
rm /usr/local/var/postgres/postmaster.pid

# 在stack overflow还看到下面的解决方式,可能是之前有创建过一个文件(postmaster.pid)引起的
rm /usr/local/var/postgres/postmaster.pid

# 删除postgresql
brew uninstall postgresql

# 删除postgres文件
rm -rf /usr/local/var/postgres

# 删除pg
gem uninstall pg

# 重新安装
brew install postgres

# 如果出现这样的情况
could not connect to database postgres: FATAL:  role "用户名" does not exist
没有创建 PostgreSQL 用户账号就会出现这个情况(解决方法就是到创建用户)

  • createdb(这样创建的数据库,是以用户名为数据库名来创建出来的)
  • dropdb testDB(删除数据库)
  • psql testDB(进入数据库)
psql (版本号)
Type "help" for help.

testDB=>
  • 如果上面的testDB=>是testDB=#这意味着你是数据库的超级用户

数据库操作

 create user 用户名 with password '密码';(创建数据库用户,这里有一点要注意的,就是分号要记得打上,还有就是与这个命令相同的 "create role" ,这两个命令几乎是完全相同的,唯一的区别是"create user" 命令创建的用户默认带有login属性,而"create role" 命令创建的用户默认不带login属性)

 alter user 用户名 with password '密码';(修改密码,注意:密码要用单引号包含)

 \du (查看数据库用户列表)

 drop user 用户名;(删除数据库用户)

 \l (查看数据库列表)

 \c 数据库名称 (切换数据库)

 create database 数据库名称;(创建数据库)

 drop database 数据库名称;(删除数据库)

 create table 表名称;(创建表)

 drop table 表名称;(删除表)

alter role 用户名 login;(给用户添加login属性)

alter命令

ALTER ROLE name [ [ WITH ] option [ ... ] ]

where option can be:

      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
    | CREATEUSER | NOCREATEUSER
    | INHERIT | NOINHERIT
    | LOGIN | NOLOGIN
    | REPLICATION | NOREPLICATION
    | CONNECTION LIMIT connlimit
    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
    | VALID UNTIL 'timestamp'

ALTER ROLE name RENAME TO new_name

ALTER ROLE name [ IN DATABASE database_name ] SET configuration_parameter { TO | = } { value | DEFAULT }
ALTER ROLE name [ IN DATABASE database_name ] SET configuration_parameter FROM CURRENT
ALTER ROLE name [ IN DATABASE database_name ] RESET configuration_parameter
ALTER ROLE name [ IN DATABASE database_name ] RESET ALL

相关文章

  • Mac 配置PostgreSQL的填坑之路

    推荐brew安装,如果还你还没有安装brew,点这里 创建数据库 createdb testDB(也可以这样:cr...

  • 填坑之路

    总有一点东西,用一次查一次,查一次忘一次 IE 11不兼容VUE Babel 默认只转换新的 JavaScript...

  • Lesson-41 PostgreSQL新手入门

    MAC 安装 postgresql brew install postgresql 创建postgreSql数据...

  • MAC 10.15.3 (19D76) apache 本地服务无

    由于各种原因需要升级mac版本,每次升级本地apache服务都无法使用,总有新坑要填,接下来简单记录一下。以前配置...

  • Mac填坑录

    更改用户名后conda运行报错,找了各种bash配置文件修改path,但仍不见效。 发现是conda本身是个脚本,...

  • mac电脑安装windows系统填坑之路

    背景: 手里有一台mac mini,几年前换了一块128G固态硬盘,安装了windows系统。今年内存和固态硬盘白...

  • 记录Android studio 配置 Flutter填坑之路

    什么是Flutter? Flutter是谷歌的移动应用SDK,用于在创纪录的时间内在iOS和Android上制作高...

  • Mac安装PostgreSQL

    Mac首次安装postgresql 1 参考这篇博文 Mac安装PostgreSQL 1)这里使用homebrew...

  • ReactNative填坑之路

    一.ViewPagerAndroid之坑 举个栗子, 然而在HotSaleLis这个Component里面就不能超...

  • 填坑之路:JSTL

    一、什么是JSTL JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能,它是apa...

网友评论

      本文标题:Mac 配置PostgreSQL的填坑之路

      本文链接:https://www.haomeiwen.com/subject/ejqtlxtx.html