Mac下安装Postgre
总阅读 次
项目上用到PostgreSQL,所以在本地搭建环境,记录过程如下,方便查找
下载安装
使用homebrew,方便快捷:
brew install postgresql
安装完成后,透过安装日记提示可以看到启动方式
To have launchd start postgresql now and restart at login:
brew services start postgresql
Or, if you don’t want/need a background service you can just run:
pg_ctl -D /usr/local/var/postgres start
提示了后台和非后台启动的两种方式
创建数据库和账户
mac安装postgresql后不会创建用户名数据库,执行命令:createdb
然后登录PostgreSQL控制台:psql
使用\l命令列出所有的数据库,看到已存在用户同名数据库、postgres数据库,但是postgres数据库的所有者是当前用户,没有postgres用户。按:q退出查看
之后需要做以下几件事:
创建postgres用户:CREATE USER postgres WITH PASSWORD ‘password’;
删除默认生成的postgres数据库:DROP DATABASE postgres;
创建属于postgres用户的postgres数据库:CREATE DATABASE postgres OWNER postgres;
将数据库所有权限赋予postgres用户:GRANT ALL PRIVILEGES ON DATABASE postgres to postgres;
给postgres用户添加创建数据库的属性:ALTER ROLE postgres CREATEDB;
这样就可以使用postgres作为数据库的登录用户了,并可以使用该用户管理数据库
登录控制台指令
psql -U [user] -d [database] -h [host] -p [post]
-U指定用户,-d指定数据库,-h指定服务器,-p指定端口
上方直接使用psql登录控制台,实际上使用的是缺省数据
user:当前mac用户
database:用户同名数据库
主机:localhost
端口号:5432,postgresql的默认端口是5432
完整的登录命令,比如使用postgres用户登录:
psql -U postgres -d postgres
常用控制台命令
\password:设置当前登录用户的密码
\h:查看SQL命令的解释,比如\h select。
\?:查看psql命令列表。
\l:列出所有数据库。
\c [database_name]:连接其他数据库。
\d:列出当前数据库的所有表格。
\d [table_name]:列出某一张表格的结构。
\du:列出所有用户。
\e:打开文本编辑器。
\conninfo:列出当前数据库和连接的信息。
\password [user]: 修改用户密码
\q:退出
pg_dump dbname > outfile :备份数据库
psql dbname < infile: 导入数据库