utilizada usuarios una template1 siendo postgres por otros origen idle está error desconectar desconecta datos consola comandos básicos borrar postgresql postgresql-9.1 postgresql-9.2

postgresql - usuarios - postgres idle



¿Cómo desconectarse de una base de datos y volver a la base de datos predeterminada en PostgreSQL? (2)

Estoy usando la versión de PostgreSql:

postgres=# select version(); version ------------------------------------------------------------- PostgreSQL 9.2.4, compiled by Visual C++ build 1600, 64-bit (1 row)

newdb=# había conectado a una base de datos de postgres=# a newdb=# ... Ahora estoy en newdb=# Base de datos que quiero desconectar y volver a postgres=# database ....

Como hacer esto ?

He intentado con disconnect newdb;

pero está dando erroe como ::

postgres=# create database newdb; CREATE DATABASE postgres=# /c newdb; WARNING: Console code page (437) differs from Windows code page (1252) 8-bit characters might not work correctly. See psql reference page "Notes for Windows users" for details. You are now connected to database "newdb" as user "postgres". newdb=# disconnect newdb; ERROR: syntax error at or near "disconnect" LINE 1: disconnect newdb; ^ newdb=#

no funciona, ¿hay alguna otra forma de hacerlo o estoy equivocado en algo?


Es fácil, solo mira el ejemplo.

mis bases de datos

postgres=# /l List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+----------+----------+---------+-------+--------------------------- francs | postgres | UTF8 | C | C | =Tc/postgres + | | | | | postgres=CTc/postgres + | | | | | francs=C*T*c*/postgres + | | | | | select_only=c/francs postgres | postgres | UTF8 | C | C | source_db | postgres | UTF8 | C | C | =Tc/postgres + | | | | | postgres=CTc/postgres + | | | | | source_db=C*T*c*/postgres template0 | postgres | UTF8 | C | C | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | C | C | =c/postgres + | | | | | postgres=CTc/postgres (5 rows)

- cambiar a francos db como francos de función

postgres=# /c francs francs You are now connected to database "francs" as user "francs".

- swith a db postgres como rol postgres

francs=> /c postgres postgres You are now connected to database "postgres" as user "postgres". postgres=#

- desconectar de db

postgres=# /q


No hay una ''desconexión'' en psql. En lugar de desconectarse de su base de datos newdb, se conecta con la base de datos postgres predeterminada.

Crea la nueva base de datos y conéctate a ella:

postgres=# create database newdb; CREATE DATABASE postgres=# /c newdb You are now connected to database "newdb" as user "postgres". newdb=#

Enumera la cantidad de conexiones en newdb:

newdb=# select datname,numbackends from pg_stat_database where datname=''newdb''; datname | numbackends ---------+------------- newdb | 1

Ahora, en lugar de desconectar, simplemente conéctese con la base de datos predeterminada de postgres.

newdb=# /c postgres You are now connected to database "postgres" as user "postgres". postgres=#

Ahora no hay conexiones en newdb:

postgres=# select datname,numbackends from pg_stat_database where datname=''newdb''; datname | numbackends ---------+------------- newdb | 0