一开始,开发童鞋说他在测试环境没有创建数据库的权限。心想,不对呀,开发环境没有怎么做权限管控,明明给予授权了。
上来一看:

postgres=# CREATE DATABASE "abce" WITH OWNER = "a_admin"
postgres-# ;
ERROR: source database "template1" is being accessed by other users
DETAIL: There is 1 other session using the database.

  

原来不是权限的问题!

查看一下,谁在使用template1:

postgres=# select * from pg_stat_activity where DATNAME = 'template1';
datid | datname | pid | usesysid | usename | application_name | client_addr | client_hostname | client_port | backend_start | xact_start | query_
start | state_change | wait_event_type | wait_event | state | backend_xid | backend_xmin |
query | backend_type
-------+-----------+-------+----------+-----------+------------------+--------------+-----------------+-------------+------------------------------+------------+----------------
---------------+-------------------------------+-----------------+------------+-------+-------------+--------------+-------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------+----------------
1 | template1 | 23498 | 16384 | a_admin | NAVICAT | xx.xx.xx.xxx | | 61664 | 2019-10-08 16:15:06.46307+08 | | 2019-10-08 16:1
5:16.542588+08 | 2019-10-08 16:15:16.545124+08 | Client | ClientRead | idle | | | SELECT rolname, rolsuper, rolinherit, rolcreaterole, rolcrea
tedb, rolcanlogin, rolconnlimit, rolvaliduntil, rolconfig, oid , pg_catalog.shobj_description(oid, 'pg_authid') AS comment FROM pg_roles | client backend
(1 row)

将查出的pid kill掉

postgres=# SELECT pg_terminate_backend( 23498);
pg_terminate_backend
----------------------
t
(1 row)

  

也可以使用一条语句,直接将使用template1的会话kill掉:

select pg_terminate_backend(pid) from pg_stat_activity where DATNAME = 'template1';

  

然后再执行数据库创建语句即可!

ERROR: source database "template1" is being accessed by other users的更多相关文章

  1. ERROR: database "db" is being accessed by other users

    执行DROP DATABASE testdb;的时候提示: ERROR: database "testdb" is being accessed by other users DE ...

  2. Error querying database. Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for …

    编译通过并且运行web成功后,访问的页面不需要连接数据库,不牵扯到反射调用实体类就不会报错, 报错内容如下: [WARNING] org.springframework.web.util.Nested ...

  3. Error querying database. Cause: java.sql.SQLException: ORA-01745: 无效的主机/绑定变量名

    今天调试程序是遇到了,下面的一个问题.我将对应的SQL语句拿到Toad下也能正常的执行,感觉有点莫名其妙,根据异常信息的提示查看对应的映射结果集也没发现错误,然后百度了一下,也有许多朋友也遇到过这样的 ...

  4. postgresql 删除库的时候报错database "temp_test_yang" is being accessed by other users

    删除库的时候报错 ERROR: database "temp_test_yang" is being accessed by other usersDETAIL: There ar ...

  5. org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manu

    这个是sql 语句 错误     仔细检查 SQL语句是否写错了 org.apache.ibatis.exceptions.PersistenceException: ### Error queryi ...

  6. org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent succ

    数据库 没有开启  连接失败 org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause ...

  7. 一次org.springframework.jdbc.BadSqlGrammarException ### Error querying database Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException问题排查过程

    先说结论: 因为在表设计中有一个商品描述字段被设置为desc,但desc是mysql中的关键字,如select id,name,desc,price from product;这条sql语句在查询时的 ...

  8. mybatis <fireach> 拼接sql语句 org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: org.apache.ibatis.builder.BuilderException: Error evaluating expression 'in'. Cause:

    <select id="getUserIn" parameterType="QueryVo" resultMap="userMap"& ...

  9. Create schema error (unknown database schema '')

    Andrey Devyatka 4 years ago Permalink Raw Message Hi,Please tell me, can I use the static library in ...

随机推荐

  1. 浅谈HTTP中Get与Post的区别【转】

    转自http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html#commentform 感谢LZ分享 Http定义了与服务器交互的不同方法 ...

  2. Java 返回字符串中第一个不重复字符的下标 下标从0开始

    比如abcdefgabdef 其中字符c和g不重复,返回c的小标,下标从0开始,那么是2 package com.example.demo; import org.testng.annotations ...

  3. JSX 到 JS 的转换

    在写react代码的时候,大部分同学应该都是写JSX.因为相比于写纯JavaScript.写JSX为我们去写组件,比写一些在JavaScript当中写类似于html结构的这种代码是要方便非常非常多的, ...

  4. python assert 在正式产品里禁用的手法 直接-O即可

    How do I disable assertions in Python? There are multiple approaches that affect a single process, t ...

  5. SQLAlchemy的应用创建

    1.首先创建app文件夹 同django 创建app 一样 创建文件 在创建的views中写入两个蓝图函数为了操作数据库的增删改查 acc.py from flask import Blueprint ...

  6. Flume高级之自定义MySQLSource

    1 自定义Source说明 Source是负责接收数据到Flume Agent的组件.Source组件可以处理各种类型.各种格式的日志数据,包括avro.thrift.exec.jms.spoolin ...

  7. 《团队作业第三、四周》五阿哥小组Scrum 冲刺阶段---Day2

    <团队作业第三.四周>五阿哥小组Scrum 冲刺阶段---Day2 一.项目燃尽图 二.项目进展 20182310周烔今日进展: 主要任务一览:完成总博客的提交,制定接下来的计划,编写博客 ...

  8. 安装tomacat之后出现需要授权窗口

    安装tomacat之后登录网页,出现需要授权窗口,输入正确密码后依然会循环弹出该窗口. 原因: 因为tomcat的端口与oracle的端口重复了. 解决: 进入任务管理器,然后将oracle运行的程序 ...

  9. 微信小程序——获取当天的前一个月至后一个月

    看标题也不知道你有没有明白我想表达的意思,先上个动态图吧~ 需要分析: 1.获取当前日期的前一个月,后一个月和当月.比如说现在是7月5号,我需要得到6月5号至8月5号的日期,同时还要返回当前的星期. ...

  10. LeetCode 708. Insert into a Cyclic Sorted List

    原题链接在这里:https://leetcode.com/problems/insert-into-a-cyclic-sorted-list/ 题目: Given a node from a cycl ...