2010-04-19 8 views

Respuesta

8

sólo tiene que utilizar SQL sencilla para crear un nuevo usuario:

CREATE ROLE user_name WITH ENCRYPTED PASSWORD 'your password'; 
+0

¿Cómo se envía este SQL a Postgres en una sola línea? – user320080

+0

Conéctese con el cliente psql y envíe la consulta. http://www.postgresql.org/docs/8.4/interactive/app-psql.html –

33

Para extender la respuesta con un ejemplo de la tela ...

# In fabfile.py 
def create_database(): 
    """Creates role and database""" 
    db_user = get_user() # define these 
    db_pass = get_pass() 
    db_name = get_db_name() 
    sudo('psql -c "CREATE USER %s WITH NOCREATEDB NOCREATEUSER " \ 
     "ENCRYPTED PASSWORD E\'%s\'"' % (db_user, db_pass), user='postgres') 
    sudo('psql -c "CREATE DATABASE %s WITH OWNER %s"' % (
     db_name, db_user), user='postgres') 
+0

Impresionante, muchas gracias –

+1

Upwote. ¿Pero realmente quería decir mesa en 'db_table = get_table()'? Parece que te refieres a un nombre de base de datos. –

Cuestiones relacionadas