pgsql 服务

pg 由一系列进程组成,主进程是postmaster,一个postmaster监听一个对应端口,每个服务器进程对应一个数据目录, 一个数据目录对应最多一个服务器进程


启动 pg_ctl -D DATADIR start 或者service postgressql start  

         net start postgres(WINDOWS)


快速停止 pg_ctl -D DATADIR -m fast stop  

         -m fast 相当于oracle中的immediate选项,但是postgres在这里有一个优势, 就是回滚速度会比较快

紧急停止 pg_ctl -D DATADIR stop -m immediate 

         相当于oracle中的shutdown abort

reload  pg_ctl -D /var/lib/pgsql/data reload 或者service postgresql reload 

快速重启 pg_ctl -D DATADIR restart -m fast

                    

               tips:下面两条命令可以在重启前后手动保存和加载数据缓存,需要安装pg_cacheutils组件,现在更名为pgfincore

             (http://pgfoundry.org/frs/?group_id=1000444)

                    psql -c "select pg_cache_save('mycache')"

                    pg_ctl -D datadir -m immediate restart
                    psql -c "select pg_cache_warm('mycache')" 
 


阻止新的连接

 暂停回话池

 停止服务

 ALTER DATABASE db_name CONNECTION LIMIT 0; 

 ALTER USER username  CONNECTION LIMIT 0; 

 更改pg_hba.conf ,使用reject

 复制pg_hba_lockdown.conf到pg_hba.conf---

 复制pg_hba.conf 为pg_hba_access.conf---这里暂时没明白


限制某角色连接数

 postgres=# ALTER ROLE fred CONNECTION LIMIT 1; 


踢出用户回话

 select pg_terminate_backend(pid) 

 pid可以从pg_stat_activity(类似于sqlserver中的sysprocesses)中获取

 

Schema

  理解为跟sqlserver类似


Database----类似sqlserver

 默认用户有登陆权限就可以连接所有数据库

postgres=# create database fred owner = fred    创建数据库时指定owner
postgres=# REVOKE connect ON DATABASE fred FROM public  移除其他用户连接权限

postgres=# GRANT connect ON DATABASE fred TO fred  单独授权


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值