Create a Superuser in postgres

i'm looking for setup a Rails Environment with Vagrant, for that purpose the box it's been provisioned through bash shell method and includes among others this line:

sudo -u postgres createuser <superuserusername> -s with password '<superuserpassword>'

but i'm getting a configuration error, createuser: too many command-line arguments (first is "with")

can you help me with the correct syntax for create a Superuser with a password. Thanks

2

4 Answers

Do it in a single statement within psql:

CREATE ROLE username WITH LOGIN SUPERUSER PASSWORD 'password';

e.g

CREATE ROLE dummy WITH LOGIN SUPERUSER PASSWORD '123456';

5

Solved with:

sudo -u postgres createuser -s -i -d -r -l -w <<username>> sudo -u postgres psql -c "ALTER ROLE <<username>> WITH PASSWORD '<<password>>';" 

I know is not an elegant solution, but for now it'll do 😊

For PostgreSQL versions 8.1 and newer

To create a superuser:

CREATE USER username SUPERUSER; 

If you need to specify the password:

CREATE USER username WITH SUPERUSER PASSWORD 'passwordstring'; 
3

To create a PostgreSQL user, follow these steps: At the command line, type the following command as the server's root user:

su - postgres 

You can now run commands as the PostgreSQL superuser.To create a user, type the following command:

createuser --interactive --pwprompt At the Enter name of role to add: prompt, type the user's name. At the Enter password for new role: prompt, type a password for the user. At the Enter it again: prompt, retype the password. At the Shall the new role be a superuser? prompt, type y if you want to grant superuser access. Otherwise, type n. At the Shall the new role be allowed to create databases? prompt, type y if you want to allow the user to create new databases. Otherwise, type n. At the Shall the new role be allowed to create more new roles? prompt, type y if you want to allow the user to create new users. Otherwise, type n. 

PostgreSQL creates the user with the settings you specified.

1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like