postgresql安装和基本 *** 作

postgresql安装和基本 *** 作,第1张

概述之前试过macports,但是看网上的评价不怎么样,主要是说会安装一些其他的包,对于我这样有洁癖的来说当然不行了。另外看到HomeBrew,便试了下,果然很爽,尤其是对于用惯了apt-get的来说。主页上有很方便的安装方法,但是蛋疼的是,在天朝常常会没法连接,没关系,可以打开这个地址,将网页另存为以.rb结尾的文件,然后终端中使用ruby 文件.rb就可以了。但是,有时候就是打开这个raw页面也需

之前试过macports,但是看网上的评价不怎么样,主要是说会安装一些其他的包,对于我这样有洁癖的来说当然不行了。另外看到HomeBrew,便试了下,果然很爽,尤其是对于用惯了apt-get的来说。主页上有很方便的安装方法,但是蛋疼的是,在天朝常常会没法连接,没关系,可以打开这个地址,将网页另存为以.rb结尾的文件,然后终端中使用ruby 文件.rb就可以了。但是,有时候就是打开这个raw页面也需要爬墙,唉,无奈。好在爬墙总不是什么困难的事情。

安装好HomeBrew之后,使用

brew update&brew upgrade

更新后,便可以开始postgresql了。

brew install postgresql

创建postgresql数据库:

initdb /usr/local/var/postgres

启动服务:

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

自动启动服务:

mkdir -p ~/library/LaunchAgents
cp /usr/local/Cellar/postgresql/9.2.4/homebrew.mxcl.postgresql.pList ~/library/LaunchAgents/launchctl load -w ~/library/LaunchAgents/homebrew.mxcl.postgresql.pList

删除自动启动服务:

launchctl unload -w ~/library/LaunchAgents/homebrew.mxcl.postgresql.pList

好了,现在基本就算完成了,很简单。这时候下载pgadmin3,安装之后会出现role 'postgres' does not exist的错误,原因你是没有创建postgres用户。

createuser -d -a -P postgres

执行完这行命令后,postgresl角色就创建好了,再连接就不会报错。

导入sql文件,如导入back.sql:

psql -d database_name -f back.sql

在linux下需要首先切换到postgres用户再执行该命令:

su postgres

导出数据库到文件:

pg_dump database_name > back.sql

卸载postgresql,如果是使用homebrew安装的话,就和简单了:

brew uninstall postgresql

如果是下载安装包安装的,有两种方法。
1. 自动卸载,在安装目录下,mac下是/Applications/Postgresql下有个uninstall-postgresql.app,双击执行就可以了。
2. 手动删除。

停止服务

sudo /sbin/SystemStarter stop postgresql-9.2

移除菜单图标

sudo rm -rf /Applications/Postgresql 9.2

移除ini文件

sudo rm -rf /etc/postgres-reg.ini

移除startup items

sudo rm -rf /library/StartupItems/postgresql-9.2

移除数据和安装文件

sudo rm -rf /library/Postgresql/9.2

移除postgres用户

sudo dscl . delete /users/postgres

PS:
可参考这两篇blog
1. http://nextmarvel.net/blog/2011/09/brew-install-postgresql-on-os-x-lion/
2. http://kIDsreturn.org/2012/03/install-postgresql-on-mac-lion-via-homebrew/

基本 *** 作

Postgresql安装好后,其会自动以本机当前登录用户名创建三个数据库(Schema),你可以运行以下命令查看:psql -l

psql是Postgresql的交互式命令行工具

连接数据库

psql -d DBname -h Hostname -p Port -U Username=> 指定参数连接

psql postgres=> 连接当前用户名下的postgres数据库

创建用户

连接数据库psql postgres

创建用户CREATE USER username [WITH PASSWORD 'password'];

创建数据库

CREATE DATABASE dbname;

授权

授予所有权限GRANT ALL PRIVILEGES ON DATABASE dbname to username;

授予查询权限GRANT SELECT ON DATABASE dbname to username;

权限列表SELECTINSERTUPDATEDELETERulEREFERENCESTRIGGERCREATETEMPORARYEXECUTEUSAGE

常用命令

连接数据库psql postgres

列出所有数据库postgres=# \l

列出用户postgres=# \du

列出数据表postgres=# \dt

描述数据表postgres=# \d tablename

@H_600_301@650) this.wIDth=650;" src="http://img.jb51.cc/vcimg/static/loading.png" title=":bell:" alt="" src="https://ruby-china-files.b0.upaiyun.com/assets/emojis/bell.png">

postgres=#为命令行提示符

总结

以上是内存溢出为你收集整理的postgresql安装和基本 *** 作全部内容,希望文章能够帮你解决postgresql安装和基本 *** 作所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1174384.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存