MacOS下对postgresql的简单管理操作

如何安装在另一篇blog中有述,这里不再赘述.本篇简单说一下安装完postgresql之后的一些管理和查询操作.

首先安装完postgresql之后需要初始化数据库:

initdb /usr/local/var/postgres -E utf8

如果你不初始化,那么db的路径就是上面的/usr/local/var/postgres(在MacOS 10.11上),数据库编码类型就是utf8.

我们可以设置开机启动postgresql服务:

ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents

launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

第一句将postgresql的配置plist文件做软连接至系统的对应路径下,第二句加载其中的一个plist文件.有可能你的postgresql不是通过homebrew安装的,你的plist文件名会略有不同,你只需要自行到/usr/local/opt/postgresql/中找到正确的文件名就可以了.

下面是启动和停止postgresql服务的指令:

pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

pg_ctl -D /usr/local/var/postgres stop -s -m fast

这里有一点就是往往我们用上面的停止命令会等待一会,然后提示无法停止服务:

pg_ctl -D /usr/local/var/postgres stop -s -m fast

pg_ctl: server does not shut down

这时你可以先卸载掉之前自动加载的服务,然后再尝试停止即可:

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist

在搞定了postgresql服务的启动和停止后,我们可以尝试添加postgresql用户:

createuser your_username -P
#Enter password for new role:
#Enter it again:

然后我们可以用刚创建的用户建立一个数据库:

createdb database_name -O username -E UTF8 -e

上面创建了一个名为database_name的数据库,数据库的所有者为username用户,数据库的编码utf7,最后一个-e参数表示把数据库执行操作的命令显示出来.更多信息你可以通过 createdb –help查看.

在MacOS中管理postgresql的数据库有2种方法,一种是console,另一种是通过gui,看个人喜好了.

我们先来看看console方式,你可以用psql之类来连接数据库:

psql -U username -d database_name -h 122.0.0.1

进入之后你可以用\h显示SQL的各种命令,用\?来显示psql客户端自身的一些命令,比如\d是显示数据库中的表,\c database_name是连接到指定数据库等等.

如果你不连接postgresql的情况下,也可以看到已创建数据库的列表:

psql -l

如果你从windows转行过来,那么可能跟倾向于使用gui的方式管理postgresql数据库,pgadmin同样不会让你失望,大家可以到官网下载:

https://www.pgadmin.org

安装之后,我们需要创建一个到某个数据库的连接,右键点击Browser下的Servers,选择创建服务:

这里写图片描述

然后和控制台中用psql连接方法类似我们要设置数据库所在地址,名称,用户名等等内容,然后点击保存.

这里写图片描述

当多个客户端连接到同一个数据库时,我们还可以一揽全局,看到它们的状态:

这里写图片描述

我们可以进入数据库中的表中去看看表结构,以及表内容:

这里写图片描述

postgresql不像sqlite3,它需要服务器才能正常工作,这就是为什么你在rails中用rake创建数据库时sqlite3可以在db目录中看到生成的数据库而postgresql下啥也看不到的原因,所有创建的postgresql数据库都放在一起,你得通过上面讲述的方法来操作哦.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: PostgreSQL 是一种开源的关系型数据库管理系统(RDBMS)。它支持大多数的 SQL 标准,并且在许多平台上运行,包括 Linux、Unix 和 Windows。PostgreSQL 在性能、可靠性和安全性方面都有很高的评价,因此常用来作为企业级应用的数据库。 ### 回答2: PostgreSQL是一种开源的关系型数据库管理系统,也是目前最先进和功能强大的数据库之一。它具备了高度的可靠性、可扩展性和稳定性,被广泛地用于各种规模和复杂度的应用中。 PostgreSQL以其ACID(原子性、一致性、隔离性和持久性)特性而闻名。这意味着它在处理并发操作和事务时非常可靠。它通过多版本并发控制(MVCC)技术实现了高度的隔离性,确保每个事务在一个独立的视图中运行,从而避免了数据争用和冲突。此外,PostgreSQL还支持完整的崩溃恢复机制,可以保证数据的持久性和一致性。 PostgreSQL还提供了丰富的功能集,包括复杂的查询、触发器、视图、存储过程和自定义函数等。它支持多种数据类型,包括基本的数字、字符串和日期类型,以及复杂的几何、网络地址和JSON等类型。此外,它还具有强大的索引和查询优化器,可以高效地处理大量数据和复杂查询。 PostgreSQL是一个高度可扩展的数据库系统。它支持水平和垂直扩展,可以在多台服务器上分布和并行处理数据。它还具有丰富的插件和扩展功能,可以根据需求进行自定义和扩展。 作为一个开源项目,PostgreSQL具有一个庞大和活跃的社区,不断地开发新的功能和修复错误。它还拥有完善的文档和教程,为用户和开发者提供了丰富的资源。 总之,PostgreSQL是一个功能强大、可靠性高和可扩展性好的关系型数据库管理系统,它适用于各种规模和复杂度的应用,是许多企业和组织的首选数据库解决方案。 ### 回答3: PostgreSQL是一种开源的关系型数据库管理系统(RDBMS),可以在多个操作系统上运行,如Windows,Linux和macOS等。它提供了高度可靠性和可扩展性的解决方案,广泛用于各种应用程序的数据存储和管理PostgreSQL具有许多强大的功能,使其成为一种受欢迎的数据库选择。首先,它支持ACID事务,这意味着数据的一致性和可靠性得到保证。其次,它具有丰富的数据类型,包括整数,浮点数,字符串,日期和时间等,以及存储和查询复杂数据类型的能力。此外,PostgreSQL支持高级的数据查询功能,包括复杂的联接,子查询和聚合。 此外,PostgreSQL还具有良好的扩展性和可定制性。它支持多种编程语言的接口,如Python,Java和C ++等,使开发人员可以轻松地与数据库进行交互。此外,PostgreSQL还支持存储过程,触发器和自定义函数等高级功能,使其能够适应各种应用程序的需求。 PostgreSQL还提供了一套完善的安全性措施,包括用户身份验证,访问控制和数据加密等,确保数据的安全性和保密性。此外,它还具有备份和恢复的功能,以便在发生故障或意外情况时能够迅速恢复数据。 总的来说,PostgreSQL是一种功能强大,可靠性高且可扩展的数据库管理系统。它在各种应用程序中被广泛使用,包括网站,企业级应用程序和科学研究等。它的开源性质使得它具有强大的社区支持和持续的改进,确保了它的稳定性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大熊猫侯佩

赏点钱让我买杯可乐好吗 ;)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值